数字图像处理实验MATLAB版+实验报告亲笔
2016-04-14 19:57
609 查看
实验一 图像打开、保存与显示
一、实验目的:
掌握数字图像的基本类型及其表示。熟悉Matlab软件环境,了解Matlab中对图像数据的读入、显示和输出等操作,实现图像文件的打开、显示与保存功能。
二、实验环境:
计算机、WindowsXP操作系统,Matlab7.0
三、实验内容:
实验前准备工作:
所使用的图像文件都保存在Matlab安装目录下的\toolbox\images\imdemos子目录下。将实验中需要使用的图像文件,事先拷贝到Matlab安装目录下的\work子目录下。(Matlab默认处理当前工作目录下的图像文件)
1、运用Matlab图像处理工具箱中的imread函数分别读入灰度图像pout.tif、二值图像blobs.png、索引图像trees.tif和RGB图像peppers.png,观察相应的图像矩阵,并运用imshow函数显示相应图像。
2、对一个RGB彩色图像peppers.png,分别抽取其R、G、B三个分量层,并显示各层图像。
3、向灰度图像pout.tif中分别加入高斯噪声和椒盐噪声,显示并保存带有噪声的图像。
实验二 图像灰度直方图统计
一、实验目的:
理解并掌握灰度直方图的概念、计算灰度直方图的方法以及如何应用直方图均衡化来增强图像对比度。
二、实验环境:
计算机、WindowsXP操作系统,Matlab7.0
三、实验内容:
以灰度图像pout.tif为例,运用Matlab编程实现灰度直方图的统计以及直方图均衡化处理过程:
(1)计算并绘制原始图像的灰度直方图;
(2)根据离散累计分布函数,对原始灰度直方图进行均衡化处理,绘制均衡化后的灰度直方图;
(3)生成均衡化处理后的新图像,显示并保存。
(4)比较原始图像和新图像的对比度。
注:基于MATLAB强大的处理图像和支持数学计算的功能,该课程所有实验皆用MATLAB实现。
实验一:
代码实现:
实验报告:
实验二:代码实现:(.m文件)
实验报告:
一、实验目的:
掌握数字图像的基本类型及其表示。熟悉Matlab软件环境,了解Matlab中对图像数据的读入、显示和输出等操作,实现图像文件的打开、显示与保存功能。
二、实验环境:
计算机、WindowsXP操作系统,Matlab7.0
三、实验内容:
实验前准备工作:
所使用的图像文件都保存在Matlab安装目录下的\toolbox\images\imdemos子目录下。将实验中需要使用的图像文件,事先拷贝到Matlab安装目录下的\work子目录下。(Matlab默认处理当前工作目录下的图像文件)
1、运用Matlab图像处理工具箱中的imread函数分别读入灰度图像pout.tif、二值图像blobs.png、索引图像trees.tif和RGB图像peppers.png,观察相应的图像矩阵,并运用imshow函数显示相应图像。
2、对一个RGB彩色图像peppers.png,分别抽取其R、G、B三个分量层,并显示各层图像。
3、向灰度图像pout.tif中分别加入高斯噪声和椒盐噪声,显示并保存带有噪声的图像。
实验二 图像灰度直方图统计
一、实验目的:
理解并掌握灰度直方图的概念、计算灰度直方图的方法以及如何应用直方图均衡化来增强图像对比度。
二、实验环境:
计算机、WindowsXP操作系统,Matlab7.0
三、实验内容:
以灰度图像pout.tif为例,运用Matlab编程实现灰度直方图的统计以及直方图均衡化处理过程:
(1)计算并绘制原始图像的灰度直方图;
(2)根据离散累计分布函数,对原始灰度直方图进行均衡化处理,绘制均衡化后的灰度直方图;
(3)生成均衡化处理后的新图像,显示并保存。
(4)比较原始图像和新图像的对比度。
注:基于MATLAB强大的处理图像和支持数学计算的功能,该课程所有实验皆用MATLAB实现。
实验一:
代码实现:
>> I_huidu=imread('pout.tif'); >> figure(1),imshow(I_huidu); >> I_erzhi=imread('blobs.png'); >> figure(2),imshow(I_erzhi); >> I_erzhi2=imread('circles.png'); >> figure(3),imshow(I_erzhi2); >> [I_suoyin,colormap]=imread('trees.tif'); >> figure(4),imshow(I_suoyin); >> imshow(I_suoyin,colormap); >> I_reb=imread('peppers.png'); >> R=I_reb(:,:,1); >> figure(5),imshow(R); >> subplot(2,2,1),imshow(I_reb); >> subplot(2,2,2),imshow(R); >> G=I_reb(:,:,2); >> B=I_reb(:,:,3); >> subplot(2,2,3),imshow(G); >> subplot(2,2,4),imshow(B); >> I=imread('pout.tif'); >> G=imnoise(I,'gaussian'); >> figure(6),subplot(1,3,1),imshow(I); >> subplot(1,3,2),imshow(G); >> J=imnoise(I,'salt & pepper'); >> J=imnoise(I,'salt & pepper',0.05); >> subplot(1,3,3),imshow(J); >> imwrite(G,'gpout.tif'); >> imwrite(J,'jpout.tif');
实验报告:
实验二:代码实现:(.m文件)
grayimage=imread('pout.tif'); [m,n]=size(grayimage); gp=zeros(1,256); for i=1:256 gp(i)=length(find(grayimage==(i-1)))/(m*n); end subplot(2,2,1),imshow(grayimage); subplot(2,2,2),bar(0:255,gp); S1=zeros(1,256); S2=zeros(1,256); temp=0; for i=1:256 temp=temp+gp(i); S1(i)=temp; end S2=round(S1*255); newgp=zeros(1,256); for i=1:256 newgp(i)=sum(gp(find(S2==(i-1)))); end subplot(2,2,4),bar(0:255,newgp); newgrayimage=grayimage; for i=1:256 newgrayimage(find(grayimage==(i-1)))=S2(i); end subplot(2,2,3),imshow(newgrayimage); imwrite(newgrayimage,'newpout.tif');
实验报告:
相关文章推荐
- caffe的Matlab接口的使用方法
- 二维空间变换 MATLAB帮助翻译
- Matlab中plot函数全功能解析
- KNN分类算法及MATLAB程序与结果
- Matlab中rectangle函数
- matlab采样函数
- Matlab text 命令画螺旋文字
- Matlab中的括号()[]{}
- MATLAB报错"Integers can only be raised to positive integral powers."
- 均值滤波、中值滤波的matlab实现
- matlabR2015b安装libsvm
- matlab中clear,clc,clf,hold作用
- Matlab 中 Cell(单元数据) 的用法
- Matlab Error using * BLAS loading error 调试
- Matlab中数组元素引用——三种方法
- Matlab中数组元素引用——三种方法
- Matlab图像处理转灰度图,绘制直方图,直方图均衡化
- Matlab批量读取xls文件的总结
- MATLAB中的分类器
- Matlab中的一些小技巧