matlab数字图像实验报告
matlab 数字图像处理实验报告(五份)
《数字图像处理实验报告》实验一图像的增强一.实验目的1.熟悉图像在MATLAB下的读写、输出;2.熟悉直方图;3.熟悉图像的线性指数等;4.熟悉图像的算术运算和几何变换。
二.实验仪器计算机、MATLAB软件三.实验原理图像增强是指根据特定的需要突出图像中的重要信息,同时减弱或去除不需要的信息。
从不同的途径获取的图像,通过进行适当的增强处理,可以将原本模糊不清甚至根本无法分辨的原始图像处理成清晰的富含大量有用信息的可使用图像。
其基本原理是:对一幅图像的灰度直方图,经过一定的变换之后,使其成为均匀或基本均匀的,即使得分布在每一个灰度等级上的像素个数.f=H等或基本相等。
此方法是典刑的图像空间域技术处理,但是由于灰度直方图只是近似的概率密度函数,因此,当用离散的灰度等级做变换时,很难得到完全平坦均匀的结果。
频率域增强技术频率域增强是首先将图像从空间与变换到频域,然后进行各种各样的处理,再将所得到的结果进行反变换,从而达到图像处理的目的。
常用的变换方法有傅里叶变换、DCT变换、沃尔什-哈达玛变换、小波变换等。
假定原图像为f(x,y),经傅立叶变换为F(u,v)。
频率域增强就是选择合适的滤波器H(u,v)对F(u,v)的频谱成分进行处理,然后经逆傅立叶变换得到增强的图像。
四.实验内容及步骤1.图像在MATLAB下的读写、输出;实验过程:>> I = imread('F:\image\624baf9dbcc4910a.jpg');figure;imshow(I);title('Original Image');text(size(I,2),size(I,1)+15, ...'IMG_20170929_130307.jpg', ...'FontSize',7,'HorizontalAlignment','right');Warning: Image is too big to fit on screen; displaying at 25% > In imuitools\private\initSize at 86In imshow at 196Original Image2.给定函数的累积直方图。
matlab图像处理实验报告
matlab图像处理实验报告《Matlab图像处理实验报告》摘要:本实验报告通过使用Matlab软件进行图像处理实验,对图像进行了灰度化、二值化、边缘检测、图像增强等处理,通过实验结果分析,验证了Matlab在图像处理领域的实用性和有效性。
1. 实验目的本实验旨在通过Matlab软件进行图像处理实验,掌握图像处理的基本方法和技术,提高对图像处理算法的理解和应用能力。
2. 实验原理图像处理是对图像进行数字化处理的过程,主要包括图像获取、图像预处理、图像增强、图像分割和图像识别等步骤。
Matlab是一种功能强大的科学计算软件,具有丰富的图像处理工具箱,可用于图像的处理、分析和识别。
3. 实验内容(1)图像灰度化首先,通过Matlab读取一幅彩色图像,并将其转换为灰度图像。
利用Matlab 中的rgb2gray函数,将RGB图像转换为灰度图像,实现图像的灰度化处理。
(2)图像二值化接着,对灰度图像进行二值化处理,将图像转换为黑白二值图像。
利用Matlab 中的im2bw函数,根据设定的阈值对灰度图像进行二值化处理,实现图像的二值化处理。
(3)边缘检测然后,对二值图像进行边缘检测处理,提取图像的边缘信息。
利用Matlab中的edge函数,对二值图像进行边缘检测处理,实现图像的边缘检测处理。
(4)图像增强最后,对原始图像进行图像增强处理,改善图像的质量和清晰度。
利用Matlab 中的imadjust函数,对原始图像进行图像增强处理,实现图像的增强处理。
4. 实验结果分析通过实验结果分析,可以发现Matlab在图像处理领域具有较高的实用性和有效性。
通过Matlab软件进行图像处理实验,可以快速、方便地实现图像的处理和分析,提高图像处理的效率和精度,为图像处理技术的研究和应用提供了重要的工具和支持。
5. 结论本实验通过Matlab图像处理实验,掌握了图像处理的基本方法和技术,提高了对图像处理算法的理解和应用能力。
数字图像处理matlab版实验报告
数字图像处理实验报告(matlab版)一.实验目的:熟悉数字图像处理中各种椒盐噪声的实质,明确各种滤波算法的的原理。
进一步熟悉matlab的编程环境,熟悉各种滤波算法对应的matlab函数。
实验结果给以数字图像处理课程各种算法处理效果一个更直观的印象。
二.实验原理:1.IPT(图像处理工具箱)基本函数介绍1. imread函数该函数用于从图形文件中读出图像。
格式A=IMRAED(FILENAME,FMT)。
该函数把FILENAME 中的图像读到A中。
若文件包含一个灰度图,则为二维矩阵。
若文件包含一个真彩图(RGB),则A为一三维矩阵。
FILENAME指明文件,FMT指明文件格式。
格式[X,MAP]=IMREAD(FILENAME,FMT).把FILENAME中的索引图读入X,其相应的调色板读到MAP中.图像文件中的调色板会被自动在范围[0,1]内重新调节。
FMT的可能取值为jpg 或jpeg,tif或tiff,bmp,png,hdf,pcx,xwd。
2.imwrite函数该函数用于把图像写入图形文件中。
格式IMWRITE(A,FILENAME,FMT)把图像A写入文件FILENAME中。
FILENAME指明文件名, FMT指明文件格式。
A既可以是一个灰度图,也可以是一个真彩图像。
格式IMWRITE(X,MAP,FILENAME,FMT)把索引图及其调色板写入FILENAME中。
MAP必须为合法的MATLAB调色板,大多数图像格式不支持多于256色的调色板。
FMT的可能取值为tif或tiff,jpg或jpeg,bmp,png,hdf,pcx,xwd。
3. imshow函数显示图像。
格式IMSHOW(I,N).用N级离散灰度级显示灰度图象I。
若省略N,默认用256级灰度显示24位图像,64级灰度显示其他系统。
格式IMSHOW(I,[LOW HIGH]),把I 作为灰度图显示。
LOW值指定为黑色,HIGH指定为白色,中间为按比例分布的灰色。
数字图像处理 实验报告(完整版)
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread()函数读取一幅图像,假设其名为lily、tif,存入一个数组中;2。
利用whos命令提取该读入图像flower、tif得基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>〉I=imread('lily、tif’)>〉whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件得压缩,颜色等等其她得详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素得jpg文件,设为lily、jpg;语法:imwrite(原图像,新图像,‘quality’,q),q取0-100。
6.同样利用imwrite()函数将最初读入得tif图象另存为一幅bmp图像,设为flily、bmp。
7。
用imread()读入图像Sunset、jpg与Winter、jpg;8.用imfinfo()获取图像Sunset、jpg与Winter、jpg得大小;9.用figure,imshow()分别将Sunset、jpg与Winter、jpg显示出来,观察两幅图像得质量.其中9得实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily、tif’)>> imfinfo’lily、tif’;>〉imwrite(I,'lily、jpg',’quality',20);〉> imwrite(I,’lily、bmp’);7~9 〉〉I=imread('Sunset、jpg');>>J=imread('Winter、jpg’)>>imfinfo ’Sunset、jpg'>> imfinfo'Winter、jpg’〉〉figure(1),imshow(’Sunset、jpg’)>>figure(2),imshow('Winter、jpg’)三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像得特征。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告(一)实验目的1.理解数字图像处理的基本概念与原理。
2.掌握数字图像处理的基本方法。
3.掌握常用数字滤波器的性质和使用方法。
4.熟练应用数字图像处理软件进行图像处理。
实验器材计算机、MATLAB软件实验内容1.图像的读写与显示首先,我们需要在MATLAB中读入一幅图像,并进行显示。
% 导入图像文件I = imread('myimage.jpg');% 显示图像imshow(I);2.图像的分辨率与色彩空间转换数字图像处理中的一个重要概念是图像的分辨率,通常用像素数量表示。
图像的分辨率越高,代表着图像包含更多的像素,从而更具细节和清晰度。
在数字图像处理中,常常需要将一幅图像从一种色彩空间转换为另一种色彩空间。
RGB色彩空间是最常见的图像色彩空间之一,并且常常作为其他色彩空间的基础。
% 转换图像色彩空间J = rgb2gray(I);% 显示转换后的图像imshow(J);3.图像的增强与滤波图像的增强通常指的是对图像的对比度、亮度和清晰度等方面进行调整,以改善图像的质量和可读性。
数字图像处理中的滤波是一种常用的图像增强方法。
滤波器是一个能够对图像进行局部操作的矩阵,它能够提取或抑制特定的图像特征。
% 对图像进行平滑滤波K = imgaussfilt(J, 1);% 显示滤波后的图像imshow(K);4.数字图像处理在实际应用中的例子数字图像处理在很多实际应用中被广泛应用。
这些应用包括医疗成像、计算机视觉、人脸识别、安防监控等。
下面是数字图像处理在人脸识别应用中的一个简单例子。
% 导入图像文件I = imread('face.jpg');% 进行人脸检测faceDetector = vision.CascadeObjectDetector;bbox = step(faceDetector, I);% 在图像上标记人脸位置IFaces = insertObjectAnnotation(I, 'rectangle', bbox, 'Face');imshow(IFaces);实验结论通过本次实验,我已经能够理解数字图像处理的基本概念与原理,掌握数字图像处理的基本方法,熟练应用数字图像处理软件进行图像处理。
数字图像实验报告
五、实验过程原始记录(数据、图表、计算等)原始图像camera.jpg lenna.jpgrose.jpg在Matlab中输入以下语句。
I=imread('E:\tupian\rose.tif');whos(I)imshow(I)imwrite(I,'Rose.jpg','quality',10)imfinfo('Rose.jpg')imwrite(I,'Rose.bmp')A=imread('E:\tupian\lenna.jpg');B=imread('E:\tupian\camera.jpg');imfinfo('lenna.jpg')imfinfo('camera.jpg')figure;imshow(A)figure;imshow(B)C=imread('E:\tupian\camera.jpg');C1=im2bw(C);imshow(C1)六、实验结果及分析通过whos I查看图像信息。
二值化后图片转化成黑白图片,即灰度值小于等于127时赋值为0,灰度值大于127时赋值为1。
五、实验过程原始记录(数据、图表、计算等)原始图像在Matlab中输入以下语句。
A=imread('E:\tupian\lianhua.jpg');B=imread('E:\tupian\add1.jpg');C=imadd(A,B);imshow(C)A=imread('E:\tupian\camera.jpg');A1=imadd(A,50);A2=imadd(A,-50); %同imsubtract(A,50)subplot(131);imshow(A);title('原图')subplot(132);imshow(A1);title('+50')subplot(133);imshow(A2);title('-50')A=imread('E:\tupian\camera.jpg');background=imopen(A,strel('disk',50));Ip=imsubtract(A,background);subplot(121);imshow(A);subplot(122);imshow(Ip);I=imread('E:\tupian\house.jpg');J=immultiply(I,1.5);subplot(121);imshow(I);subplot(122);imshow(J);A=imread('E:\tupian\camera.jpg');A=rgb2gray(A);I=double(A);J= I*0.43+90;A1=uint8(J);Ip=imdivide(A,A1);imshow(Ip,[])六、实验结果及分析1.叠加后的图像2. 减去背景后的图像4.乘以1.5后的结果六、实验结果及分析1. 绘制图像直方图2. 图像的明暗转换3. 图像的对数变换由图可以看出,图片对数变换后显示更多的内容,即对低频进行拉伸,对高频进行压缩。
数字图像处理实验报告(全部)
实验1直方图一.实验目的1.熟悉matlab图像处理工具箱及直方图函数的使用;2.理解和掌握直方图原理和方法;二.实验设备:1.PC机一台;2.软件matlab。
三.程序设计在matlab环境中,程序首先读取图像,然后调用直方图函数,设置相关参数,再输出处理后的图像。
I=imread('cameraman.tif');%读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题四.实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。
书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的直方图函数,设置参数;最后输出处理后的图像;3.浏览源程序并理解含义;4.运行,观察显示结果;5.结束运行,退出;五.实验结果:观察图像matlab环境下的直方图分布。
(a)原始图像 (b)原始图像直方图六.实验报告要求1、给出实验原理过程及实现代码:I=imread('coins.png');%读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题2、输入一幅灰度图像,给出其灰度直方图结果,并进行灰度直方图分布原理分析。
实验2 均值滤波一.实验目的1.熟悉matlab图像处理工具箱及均值滤波函数的使用;2.理解和掌握3*3均值滤波的方法和应用;二.实验设备:1.PC机一台;2.软件matlab三.程序设计在matlab环境中,程序首先读取图像,然后调用图像增强(均值滤波)函数,设置相关参数,再输出处理后的图像。
matlab数字图像处理实验报告
重庆交通大学学生实验报告实验课程名称《数字图像处理》课程上机实验开课实验室河海学院仿真实验室学院河海学院年级专业08级地理信息系统学生姓名学号********时间2011 至2012 学年第 1 学期实验一图像显示【实验内容】1)使用 MATLAB图像读取函数imread读取图像。
2)使用 MATLAB图像显示函数imshow显示图像。
3)使用 MATLAB添加色带函数colorbar为图像添加色带。
【实验目的】1)掌握MATLAB图像读取和显示函数的应用方法。
2)了解如何为图像添加色带。
【实验结果】(放置处理前图像)(放置处理后图像)2-1 2-5-3 2-10 【程序说明】a=imread('yq.jpg');a=double(a);%a=uint8(a);imshow(a);%save saturn.dat a-ascii;save yu.text a -ascii; %结果图2-1 e=imread('yq.jpg');imshow(e);iptsetpref('ImshowTruesize','manual');figure,imshow(e);iptsetpref('ImshowTruesize','auto');bw1=zeros(20,20);bw1(2:2:18,2:2:18)=1;figure,imshow(bw1,'notruesize');bw1whos%结果图2-5-3%使用一个调色板来显示一副二进制图像figure,imshow(bw,[1 00;0 0 1]);%结果图2-10本次实验得分实验二图像运算【实验内容】1)使用 MATLAB滑动邻域操作函数nlfilter对图像进行处理。
2)使用 MATLAB分离邻域操作函数blkproc对图像进行处理。
【实验目的】1)掌握滑动邻域操作函数的应用方法。
数字图象处理实验报告《matlab基本操作 》
武汉工程大学
《数字图像处理》实验报告2
专业班级
实验时间
学生学号
实验地点
学生姓名
指导教师
实验项目
数字图像基本操作
实验类别
基础性
实验学时
%读入原始图像
f=imread('pollen.tif');
%显示原始图像
subplot(3,2,1);imshow(f);
title('original image');
subplot(3,2,2);imhist(f);
title('original image histogram');
%将原始图像均衡化,目的是与后面的规定化做对比
subplot(121),imshow(a);
title('原图为:');
subplot(122),imshow(c); %显示处理后的图像
title('均衡化后的图为:');
通过以上变换后总的效果为:
%读入原始图像
f=imread('pollen.tif');
%显示原始图像
iptsetpref('ImshowAxesVisible','on')
c2=A2*(1/((2*pi)^0.5)*sig2); %设置c2=A2*(1/sqrt(2*pi)*sig)),即高斯函数的系数部分;
k2=2*(sig2^2); %设置指数部分的分母,即(1/2*sig^2),同上
matlab数字图像处理实验报告
3基于卷积的图像滤波函数
imfilter函数,filter2函数,二维卷积conv2滤波,都可用于图像滤波, 用法类似,如:
i=imread('e:\w01.tif');
j=filter2(h,i);
或者:
h=fspecial(‘prewitt')
3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个 窗口内分成四个子窗口来分别显示,注上文字标题。
a=imread('f:\1.jpg');
m=imadjust(a,[,],[0.5;1]);%图像变亮n=imadjust(a,[,],[0;0.5]);%图像变暗g=255-a;%负片效果subplot(2,2,1);imshow(a);title('原图像') subplot(2,2,2);imshow(m);title('图像变亮') subplot(2,2,3);imshow(n);title('图像变暗') subplot(2,2,4);imshow(g);title('负片效果')
图像类型转换1rgb2gray把真彩图像转换为灰度图像irgb2grayj2im2bw通过阈值化方法把图像转换为二值图像iim2bwjlevellevel表示灰度阈值取值范围01即0n表示阈值取自原图像灰度范3imresize改变图像的大小iimresizejmn将图像j大小调整为m行n列图像运算1imadd两幅图像相加要求同样大小同种数据类型zimaddxy表示图像xy2imsubstract两幅图像相减要求同样大小同种数据类型zimsubtractxy3immultiplyzimmultiplyxy4imdivide表示图像xy表示图像xyzimdividexy表示图像xy四实验内容请将实验程序填写在下方合适的位置实验图像结果拷屏粘贴1读入一幅rgb图像变换为灰度图像和二值图像并在同一个窗口内分成三个子窗口来分别显示rgb图像和灰度图像注上文字标题
数字图像处理实验报告
数字图像处理实验报告实验一数字图像基本操作及灰度调整一、实验目的1)掌握读、写图像的基本方法。
2)掌握MATLAB语言中图像数据与信息的读取方法。
3)理解图像灰度变换处理在图像增强的作用。
4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方法。
二、实验内容与要求1.熟悉MATLAB语言中对图像数据读取,显示等基本函数特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。
1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread,imfinfo等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。
将这个图像显示出来(用imshow)。
尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。
2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray()将其转化为灰度图像,记为变量B。
2.图像灰度变换处理在图像增强的作用读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。
3.绘制图像灰度直方图的方法,对图像进行均衡化处理请自己编程和调用Matlab函数完成如下实验。
1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用imadjust函数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰度直方图与原灰度直方图的区别。
2) 对B 进行直方图均衡化处理,试比较与源图的异同。
3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。
图1.1 分段线性变换函数三、实验原理与算法分析1. 灰度变换灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。
1) 图像反转灰度级范围为[0, L-1]的图像反转可由下式获得r L s --=12)对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围,如直接使用原图,则一部分细节可能丢失。
matlab图像处理综合实验实验报告
《数字图像处理》实验报告学院:专业:班级:姓名:学号:实验一实验名称:图像增强实验目的:1.熟悉图像在Matlab下的读入,输出及显示;2.熟悉直方图均衡化;3.熟悉图像的线性指数等;4.熟悉图像的算术运算及几何变换.实验仪器:计算机,Matlab软件实验原理:图像增强是为了使受到噪声等污染图像在视觉感知或某种准则下尽量的恢复到原始图像的水平之外,还需要有目的性地加强图像中的某些信息而抑制另一些信息,以便更好地利用图像。
图像增强分频域处理和空间域处理,这里主要用空间域的方法进行增强。
空间域的增强主要有:灰度变换和图像的空间滤波。
图像的直方图实际上就是图像的各像素点强度概率密度分布图,是一幅图像所有像素集合的最基本统计规律,均衡化是指在每个灰度级上都有相同的像素点过程。
实验内容如下:I=imread('E:\cs.jpg');%读取图像subplot(2,2,1),imshow(I),title('源图像')J=rgb2gray(I)%灰度处理subplot(2,2,2),imshow(J) %输出图像title('灰度图像') %在原始图像中加标题subplot(2,2,3),imhist(J) %输出原图直方图title('原始图像直方图')0100200几何运算:I=imread('E:\cs.jpg');%subplot(1,2,1),imshow(I); theta = 30;K = imrotate(I,theta); subplot(1,2,2),imshow(K)对数运算:I=imread('E:\dog.jpg');subplot(2,2,1),imshow(I),title('源图像') J=rgb2gray(I)%灰度处理subplot(2,2,2),imshow(J),title('灰度变换后图像') J1=log(1+double(J));subplot(2,2,3),imshow(J1,[]),title('对数变换后') 指数运算:I=imread('E:\dog.jpg'); f=double(I); g=(2^2*(f-1))-1 f=uint8(f); g=uint8(g);subplot(1,2,1);subimage(f),title('变换一') subplot(1,2,2);subimage(g),title('变换二')加法运算:clc;clear all;close all; i = imread('E:\dog.jpg');j = imnoise(i,'gaussian',0,0.02);subplot(1,3,1),imshow(i),title('图一') subplot(1,3,2),imshow(j),title('图二') k=zeros(242,308); for p=1:100j = imnoise(i,'gaussian',0,0.02); j1 = im2double(j); k = k + j1; end k=k/100;subplot(1,3,3),imshow(k),title('图三')变换一200400600100200300400500变换二200400600100200300400500实验二实验名称:图像变换实验目的:(1)进一步对matlab的了解和使用;(2)学习如何在matlab中对数字图像的处理;实验原理:图像和其他信号一样,既能在空间域处理,也能在频率域处理。
数字图像实验报告图像增强实验
数字图像实验报告图像增强实验一、实验目的熟悉并掌握MATLAB图像处理工具箱的使用;理解并掌握常用的图像的空域增强技术。
二、实验内容对一幅图像分别添加高斯、椒盐和斑点噪声,并分别进行均值和中值滤波处理,显示处理前后的图像。
三、实验方法及程序学生自行编程实现提示:1.加入高斯噪声的函数调用。
I_noise =imnoise(I,’gaussian’,0,0.1)2.加入椒盐噪声的函数调用。
I_noise = imnoise(I,’salt&pepper’,0.06)3.加入斑点噪声的函数调用。
I_noise= imnoise(I,’speckle’,0.1)4.均值滤波的函数调用。
I_smooth=imfilter(I_noise,fspecial(‘average’,5))5.中值滤波的函数调用。
I_smooth=medfilt2(I_noise,[3 3])A=imread('toyobjects.png');B=imnoise(A,'gaussian',0,0.1);%加入高斯噪声C=imnoise(A,'salt & pepper',0.05);%加入椒盐噪声D=imnoise(A,'speckle',0.05);%加入斑点噪声I1=imfilter(B,fspecial('average',5));I2= medfilt2(B);%高斯中值处理K1=imfilter(C,fspecial('average',5));K2= medfilt2(C);%椒盐中值处理G1=imfilter(D,fspecial('average',5));G2= medfilt2(D);%斑点噪声中值处理figure(1);imshow(A);title('原图像');figure(2);subplot(1,3,1);imshow(B);title('高斯噪声'); subplot(1,3,2);imshow(I1);title('高斯均值滤波处理'); subplot(1,3,3);imshow(I2);title('高斯中值滤波处理'); figure(3);subplot(1,3,1);imshow(C);title('椒盐噪声'); subplot(1,3,2);imshow(K1);title('椒盐均值处理'); subplot(1,3,3);imshow(K2);title('椒盐中值处理'); figure(4);subplot(1,3,1);imshow(D);title('斑点噪声'); subplot(1,3,2);imshow(G1);title('斑点噪声均值处理'); subplot(1,3,3);imshow(G2);title('斑点噪声中值处理');四、实验结果与分析分别运用B=imnoise(A,'gaussian',0,0.1)C=imnoise(A,'salt & pepper',0.05)D=imnoise(A,'speckle',0.05);三个函数啊加入不同的噪声,再用I_smooth=imfilter(I_noise,fspecial(‘average’,5))I_smooth=medfilt2(I_noise,[3 3])对加入噪声的图像进行处理,比较不同的处理方式对加入噪声后的图像处理后的清晰度。
matlab图像处理基础实验,数字图像处理实验报告Matlab图像处理基础
matlab图像处理基础实验,数字图像处理实验报告Matlab图像处理基础《数字图像处理实验报告 Matlab图像处理基础》由会员分享,可在线阅读,更多相关《数字图像处理实验报告 Matlab图像处理基础(27页珍藏版)》请在⼈⼈⽂库⽹上搜索。
1、院系:计算机科学学院专业:计算机科学和技术年级: 2012级课程名称:数字图像处理组号:姓名(学号):指导教师:⾼志荣2015年5⽉25⽇学年2012年度班号1学号专业计算机科学和技术姓名实验名称Matlab图像处理的基础实验室204果实检查眼睛的和要拜托了⼀、实验⽬的:(熟悉Matlab开发环境(掌握Matlab中数字图像读取、显⽰、保存的基本⽅法的使⽤(3)把握不同种类的数字图像间的变换⽅法(4)加深空间分辨率和灰度分辨率对图像显⽰效果的影响(熟悉Matlab中的傅⽴叶变换(基于Matlab的数字图像程序设计⽅法⼆、实验内容:(在Matlab中使⽤imread函数读取1张RGB图像(从实验。
2、素材中任意选择),调查该图像的尺⼨、数据类型信息,将该图像转换为灰度图像并以bmp形式保存。
(使⽤imread函数读取1张灰度图像(从实验素材中任意选择),分别进⾏2个采样、4个采样和8个采样,以相同⼤⼩显⽰原图像和采样后的3张结果图像,⽐较空间分辨率对图像显⽰效果的影响。
(使⽤imread函数读取1张灰度图像(从实验素材中任意选择),分别以5、10、50的间隔将该灰度再次均匀量化,以相同⼤⼩显⽰原图像和再量化后的3张结果图像,⽐较灰度分辨率对图像显⽰效果的影响。
(4)读取⼀张灰度图像,对其进⾏快速傅⽴叶变换,在同⼀窗⼝中显⽰原始的空间区域图像和变换后的频域图像。
三、实验要求:(1)关于具体的。
3、实验内容,分别给出命令(或m⽂书)、输出结果、成因分析、经验总结。
(2)所有⽣成的图像或m⽂件,均须命名。
例如,图n :描述图像信息的*.m⽂件:描述⽂件信息。
数字图像处理实验报告(matlab)
学院:自动化学院班级:电081班姓名:***学号:********2011年10月实验一直方图均衡化一、实验目的:1. 熟悉图像数据在计算机中的存储方式;2. 掌握图像直方图均衡化这一基本处理过程。
二、实验条件:PC微机一台和MATLAB软件。
三、实验内容:1.读入图像数据到内存中,并显示读入的图像;2.实现直方图均衡化处理,显示处理前后图像的直方图。
3.显示并保存处理结果。
四、实验步骤:1.打开Matlab编程环境;2.获取实验用图像。
用’imread’函数将图像读入Matlab;用’imshow’函数显示读入的图像。
3.获取输入图像的直方图:用’imhist’函数处理图像。
4.均衡化处理:用’histeq’函数处理图像即可。
5.获取均衡化后的直方图并显示图像:用’imhist’和’imshow’函数。
6.保存实验结果:用’imwrite’函数处理。
五、实验程序及结果:1、实验程序subplot(6,2,1);i=imread('test1-1.jpg');imhist(i);title('test1-1 hist');subplot(6,2,2);i=im2double(i);imshow(i);title('test1-1 Ô-ͼÏñ');subplot(6,2,3);s=histeq(i);imhist(s);title('test1-1 balancedhist');subplot(6,2,4);imshow(s);title('test1-1 ¾ùºâ»¯ºóµÄͼÏñ');subplot(6,2,5);i=imread('test1-2.jpg');imhist(i);title('test1-2 hist');subplot(6,2,6);i=im2double(i);imshow(i);title('test1-2 Ô-ͼÏñ');subplot(6,2,7);s=histeq(i);imhist(s);title('test1-2 balancedhist'); subplot(6,2,8);imshow(s);title('test1-2 ¾ùºâ»¯ºóµÄͼÏñ');subplot(6,2,9);i=imread('test1-3.jpg');imhist(i);title('test1-3 hist');subplot(6,2,10);i=im2double(i);imshow(i);title('test1-3 Ô-ͼÏñ');subplot(6,2,11);s=histeq(i);imhist(s);title('test1-3 balancedhist'); subplot(6,2,12);imshow(s);title('test1-3 ¾ùºâ»¯ºóµÄͼÏñ');2、实验结果test1-1 hist050100150200250test1-1 原图像test1-1 balancedhist00.10.20.30.40.50.60.70.80.91test1-1 均衡化后的图像test1-2 hist050100150200250test1-2 原图像test1-2 balancedhist00.10.20.30.40.50.60.70.80.91test1-2 均衡化后的图像0test1-3 hist050100150200250test1-3 原图像test1-3 balancedhist00.10.20.30.40.50.60.70.80.91test1-3 均衡化后的图像六、实验思考1.数字图像直方图均衡化之后直方图为什么不是绝对平坦的?答:直方图均衡化是将一已知灰度概率密度分布的图像,经过某种变换,变成一幅具有均匀灰度概率密度分布的新图像。
MATLAB数字图像实验报告
基于MATLAB的图像处理的课程设计物理与信息工程学院一、课程设计的目的综合运用MATLAB工具箱实现图像处理的GUI程序设计。
二、课程设计的基本要求1)熟悉和掌握MA TLAB 程序设计方法2)掌握MATLAB GUI 程序设计3)学习和熟悉MA TLAB图像处理工具箱4)学会运用MATLAB工具箱对图像进行处理和分析三、程序需求和功能模块分析设计分为6个部分,分别为文件,实现图像读取、保存和退出该演示的功能;图像转换,实现RGB转为灰度图像、索引图像,二进制图像和创建轮廓等功能;工具,实现亮度改变、锐化、剪切、旋转和直方图统计与均衡等功能;缩放,实现最近邻插值法和双线性插值法的放大和缩小;噪声与滤波,实现对图像添加各种噪声和对图像进行去噪处理;帮助,是一个关于MA TLAB的显示。
四、详细设计过程,详细阐述如何实现具体操作,必要时画出流程图分析,附上关键程序代码。
学习MATLAB GUI程序设计,利用MA TLAB图像处理工具箱,设计和实现自己的Photoshop 。
要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。
然后按照自己拟定的功能要求进行程序设计和调试。
具体操作双击打开MATLAB 7.0→File→New→GUI→修改名称→保存;单击→调整文本框的大小,输入该演示名称,修改字体大小、颜色等;单击→调整axes1大小→单击OK,调整按钮大小和颜色,再建axes2→单击OK,调整按钮大小和颜色;单击→调整噪声群文本框的大小,输入名称,修改字体大小、颜色等,单击,建立3个噪声框;单击建立滤波群框,单击,建立3个滤波框;单击,建立Menu Editor,即建目录;View→M-file Edit→编写程序;最后单击,建立几个便捷按钮,相应的View callbacks与之前同。
程序代码及实现的功能1)图像的读取和保存。
读取[name,path]=uigetfile('*.*','');file=[path,name];axes(handles.axes1);x=imread(file);handles.img=x;guidata(hObject, handles);imshow(x);title(‘打开’);保存[sFileName sFilePath]=uiputfile({'*.jpg','JPEG-Files (*.jpg)'; ...'*.*','All Files (*.*)'},'保存图像文件','untitled.jpg');if ~isequal([sFileName,sFilePath],[0,0])sFileFullName=[sFilePath sFileName];imwrite(handles.noise_img,sFileFullName,'jpg');elsemsgbox('确定取消保存?');end退出clc;close all;close(gcf);2)设计图形用户界面,让用户能够对图像进行任意的亮度和对比度变化调整,显示和对比变换前后的图像。
图像一实验报告
实验一Matlab语言数字图像基本操作一、实验目的1.复习MATLAB语言的基本用法;2.掌握MATLAB语言中图像数据与信息的读取方法。
二、实验原理1. MATLAB是集数值计算, 符号运算及图像处理等强大功能与一体的科学计算语言。
作为强大的科学计算平台, 它几乎能够满足所以的计算需求。
MATLAB 软件具有很强的开放性和适用性。
在保持内核不变的情况下, MATLAB可以针对不同的应用学科推出相应的工具箱(Toolbox)。
目前, MATLAB已经把工具箱延伸到了科学研究和工程应用等诸多领域, 诸如数据采集、概率统计、信号处理、图像处理和物理仿真等, 都在工具箱(Toolbox)家族有自己的一席之地。
在实验中我们主要用到MATLAB提供图像处理工具箱(Image Processing Toolbox)。
2.MATLAB与数字图象处理3. MATLAB全称是Matrix Laboratory(矩阵实验室), 一开始它是一种专门用于矩阵数值计算的软件, 从这一点上也可以看出, 它在矩阵运算上有自己独特的特点。
实际上MATLAB中的绝大多数的运算都是通过矩阵这一形式进行的。
这一特点也就决定了MATLAB在处理数字图像上的独特优势。
理论上讲, 图像是一种二维的连续函数, 然而在计算机上对图像进行数字处理的时候, 首先必须对其在空间和亮度上进行数字化, 这就是图像的采样和量化过程。
二维图像进行均匀采样, 就可以得到一幅离散化成M*N样本的数字图像, 该数字图像是一个整数列阵, 因而用矩阵来描述该数字图像是最直观最简便的了。
而MATLAB的长处就是处理矩阵运算, 因而用MATLAB处理数字图像非常的方便。
MATLAB支持五种图像类型, 既索引图像、灰度图像、二值图像、RGB图像和多帧图像阵列;支持BMP、GIF、HDF、JPEG、PCX、PNG、TIFF、XWD.CUR、ICO等图像文件的读, 写和显示。
MATLAB图像处理命令及图形基本操作实验报告
实验(一)常用MATLAB图像处理命令及图形基本操作
end
end
end
for i=1:m
for j=1:n
out(i,j,1)=R(i,j);
% imshow(out)
out(i,j,2)=G(i,j);
out(i,j,3)=B(i,j);
end
end
out=out/256;
figure(1),imshow(out)
%imshow(out)
size(out)
imwrite(out,'PseudoColor.tiff');
end
4、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。
RGB=imread('f:\1.jpg')
gray = rgb2gray(RGB)
I = im2bw(RGB,0.5)
subplot(3,1,1);imshow(a);title('原图像');
subplot(3,1,2);imshow(i);title('灰度图像');colormap(gray);
subplot(3,1,3);imshow(I);title('二值图像');
实验结果如图所示:
四、实验总结:
Imread 是读入文件的操作代码,subplot是将多个图画到一个平面上的工具本次实验在老师的带领下熟悉了matlab软件的具体操作
通过书写代码,操作程序实现了灰度图像转换为伪彩色图像;
通过书写代码实现了读入一幅RGB图像,并将其变换为灰度图像和二值图像,然后在同一个窗口中显示RGB图像和灰度图像。
数字图像处理实验报告
实验报告课程名称数字图像处理实验项目点运算和直方图处理实验仪器 PC机 MATLAB软件系别专业班级/学号学生姓名实验日期成绩指导老师实验1 点运算和直方图处理一、实验目的1. 掌握利用Matlab图像工具箱显示直方图的方法2. 掌握运用点操作进行图像处理的基本原理。
3. 进一步理解利用点操作这一方法进行图像处理的特点。
4. 掌握利用Matlab图像工具箱进行直方图均衡化的基本方法。
二、实验的硬件、软件平台硬件:计算机软件:MATLAB三、实验内容及步骤1. 了解Matlab图像工具箱的使用。
2. 利用Matlab图像工具箱对图像进行点操作,要求完成下列3个题目中的至少2个。
⑴图1灰度范围偏小,且灰度偏低,改正之。
⑵图2暗处细节分辨不清,使其能看清楚。
⑶图3亮处细节分辨不清,使其能看清楚。
图1 图2 图33. 给出处理前后图像的直方图。
4. 利用MatLab图像处理工具箱中函数对以上图像进行直方图均衡化操作,观察结果。
四、思考题1. 点操作能完成哪些图像增强功能?2. 直方图均衡化后直方图为何并不平坦?为何灰度级会减少?五、实验报告要求1.对点操作的原理进行说明。
2.给出程序清单和注释。
3.对处理过程和结果进行分析(包括对处理前后图像的直方图的分析)。
题目1%图1灰度范围偏小,且灰度偏低,改正之。
方法:像素点操作clcclear allclose allI=imread('Image1.png'); %读取标题为“Point2”的位图,并用“I”表示该图j=rgb2gray(I); %转为灰度图像,并用j表示[l,r]=size(j); %将j的行数返回到第一个输出变量l,将列数返回到第二个输出变量rfigure(1); %创建一个空的窗口subplot(221); %将窗口分成2行2列,并在第一个位置进行操作imshow(j); %显示图片jtitle('原图像'); %标题for m=1:l %循环语句,行数m的值从1到l,下同for n=1:rp(m,n)=j(m,n)*1.8; %将j图中的每一个点的像素值乘以一个常数,得到的新像素以原来的位置构成图pendendsubplot(222);imshow(p);title('处理后图像') ;subplot(2,2,3) ;imhist(j); %显示图像j的直方图title('原图像直方图');subplot(2,2,4);imhist(p);title('处理后图像直方图');输出的图像:图4对比图像处理前后的直方图可知,原图的灰度范围较小。
matlab 图像 实验报告
matlab 图像实验报告Matlab图像实验报告引言:Matlab是一种强大的计算机编程语言和开发环境,广泛应用于科学计算、数据分析和图像处理等领域。
本实验报告旨在介绍基于Matlab的图像处理实验,包括图像读取、图像处理和图像显示等方面的内容。
一、图像读取图像读取是图像处理的第一步,通过读取图像可以获取图像的像素信息。
在Matlab中,可以使用imread函数来读取图像文件。
例如,通过以下代码可以读取一张名为"image.jpg"的图像:```matlabimage = imread('image.jpg');```二、图像处理1. 灰度化处理灰度化处理是将彩色图像转换为灰度图像的过程。
在Matlab中,可以使用rgb2gray函数来实现灰度化处理。
以下是一个简单的示例:```matlabgray_image = rgb2gray(image);```2. 图像增强图像增强是通过一系列的处理方法来改善图像的质量和视觉效果。
在Matlab中,有多种图像增强方法可供选择,如直方图均衡化、滤波和边缘检测等。
以下是一个直方图均衡化的示例:```matlabenhanced_image = histeq(gray_image);```3. 图像分割图像分割是将图像划分为若干个区域的过程,每个区域具有相似的特征。
在Matlab中,可以使用各种图像分割算法,如阈值分割和基于区域的分割。
以下是一个简单的阈值分割示例:```matlabthreshold = graythresh(enhanced_image);binary_image = imbinarize(enhanced_image, threshold);```三、图像显示图像显示是将处理后的图像展示给用户的过程。
在Matlab中,可以使用imshow函数来显示图像。
以下是一个简单的示例:```matlabimshow(binary_image);```四、实验结果与讨论本次实验中,我们选择了一张名为"image.jpg"的彩色图像进行处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一常用MATLAB图像处理命令一、实验目的1、熟悉并掌握MA TLAB工具的使用;2、实现图像的读取、显示、代数运算和简单变换。
二、实验环境MATLAB 6.5以上版本、WIN XP或WIN2000计算机三、常用函数●读写图像文件1 imreadimread函数用于读入各种图像文件,如:a=imread('e:\w01.tif')2 imwriteimwrite函数用于写入图像文件,如:imwrite(a,'e:\w02.tif',’tif’) 3 imfinfoimfinfo函数用于读取图像文件的有关信息,如:imfinfo('e:\w01.tif')●图像的显示1 imageimage函数是MATLAB提供的最原始的图像显示函数,如:a=[1,2,3,4;4,5,6,7;8,9,10,11,12];image(a);2 imshowimshow函数用于图像文件的显示,如:i=imread('e:\w01.tif');imshow(i);title(‘原图像’)%加上图像标题3 colorbarcolorbar函数用显示图像的颜色条,如:i=imread('e:\w01.tif');imshow(i);colorbar;4 figurefigure函数用于设定图像显示窗口,如:figure(1); /figure(2);5 subplot把图形窗口分成多个矩形部分,每个部分可以分别用来进行显示。
Subplot(m,n,p)分成m*n个小窗口,在第p个窗口中创建坐标轴为当前坐标轴,用于显示图形。
6 plot绘制二维图形plot(y)Plot(x,y)xy可以是向量、矩阵。
图像类型转换1 rgb2gray把真彩图像转换为灰度图像i=rgb2gray(j)2 im2bw通过阈值化方法把图像转换为二值图像I=im2bw(j,level)Level表示灰度阈值,取值范围0~1(即0.n),表示阈值取自原图像灰度范围的n%3 imresize改变图像的大小I=imresize(j,[m n])将图像j大小调整为m行n列图像运算1 imadd两幅图像相加,要求同样大小,同种数据类型Z=imadd(x,y)表示图像x+y2 imsubstract两幅图像相减,要求同样大小,同种数据类型Z=imsubtract(x,y)表示图像x-y3 immultiplyZ=immultiply(x,y)表示图像x*y4 imdivideZ=imdivide(x,y)表示图像x/y四、实验内容(请将实验程序填写在下方合适的位置,实验图像结果拷屏粘贴)1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。
a=imread('f:\1.jpg')i = rgb2gray(a)I = im2bw(a,0.5)subplot(3,1,1);imshow(a);title('原图像')subplot(3,1,2);imshow(i);title('灰度图像')subplot(3,1,3);imshow(I);title('二值图像')2、对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。
a=imread('f:\1.jpg')A=imresize(a,[800 800])b=imread('f:\2.jpg')B=imresize(b,[800 800])Z1=imadd(A,B)Z2=imsubtract(A,B)Z3=immultiply(A,B)Z4=imdivide(A,B)subplot(3,2,1); imshow(A);title('原图像A')subplot(3,2,2); imshow(B);title('原图像B')subplot(3,2,3); imshow(Z1);title('加法图像')subplot(3,2,4); imshow(Z2);title('减法图像')subplot(3,2,5); imshow(Z3);title('乘法图像')subplot(3,2,6); imshow(Z2);title('除法图像')3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。
a=imread('f:\1.jpg');m = imadjust(a,[,],[0.5;1]) ;%图像变亮n = imadjust(a,[,],[0;0.5]) ;%图像变暗g=255-a;%负片效果subplot(2,2,1);imshow(a);title('原图像')subplot(2,2,2);imshow(m);title('图像变亮')subplot(2,2,3);imshow(n);title('图像变暗')subplot(2,2,4);imshow(g);title('负片效果')4、熟悉数字图像处理常用函数的使用,调出帮助文档查看其各种不同用法。
方法:选择函数(函数所在区变暗),点右键弹出菜单,选择“Help on Selection”五、实验总结分析图像的代数运算结果,分别陈述图像的加、减、乘、除运算可能的应用领域。
实验二常用图像增强方法一、实验目的1、熟悉并掌握MATLAB图像处理工具箱的使用;2、理解并掌握常用的图像的增强技术。
二、实验环境MATLAB 6.5以上版本、WIN XP或WIN2000计算机三、相关知识1 imnoiseimnoise函数用于对图像生成模拟噪声,如:i=imread('e:\w01.tif');j=imnoise(i,'gaussian',0,0.02);模拟均值为0方差为0.02的高斯噪声,j=imnoise(i,'salt&pepper', 0.04) 模拟叠加密度为0.04的椒盐噪声2 fspecialfspecial函数用于产生预定义滤波器,如:h=fspecial('sobel');%sobel水平边缘增强滤波器h=fspecial('gaussian');%高斯低通滤波器h=fspecial('laplacian');%拉普拉斯滤波器h=fspecial('log');%高斯拉普拉斯(LoG)滤波器h=fspecial('average');%均值滤波器3 基于卷积的图像滤波函数imfilter函数,filter2函数,二维卷积conv2滤波,都可用于图像滤波,用法类似,如:i=imread('e:\w01.tif');h=[1,2,1;0,0,0;-1,-2,-1];%产生Sobel算子的水平方向模板j=filter2(h,i);或者:h = fspecial(‘prewitt’)I = imread('cameraman.tif');imshow(I);H = fspecial('prewitt‘); %预定义滤波器M = imfilter(I,H);imshow(M)或者:i=imread('e:\w01.tif');h=[1,1,1;1,1,1;1,1,1];h=h/9;j=conv2(i,h);4 其他常用滤波举例(1)中值滤波medfilt2函数用于图像的中值滤波,如:i=imread('e:\w01.tif');j=medfilt2(i,[M N]);对矩阵i进行二维中值滤波,领域为M*N,缺省值为3*3(2)利用拉氏算子锐化图像, 如:i=imread('e:\w01.tif');j=double(i);h=[0,1,0;1,-4,0;0,1,0];%拉氏算子k=conv2(j,h,'same');三、实验步骤1、采用二维中值滤波函数medfilt2对受椒盐噪声干扰的图像滤波,窗口分别采用3*3,5*5,7*7I = imread('f:\lena.png');J = imnoise(I,'salt & pepper',0.04);K1 = medfilt2(J,[3 3]);%对矩阵i进行二维中值滤波,领域为3*3K2 = medfilt2(J,[5 5]);K3 = medfilt2(J,[7 7]);subplot(2,2,1);imshow(J);title('椒盐噪声干扰图像')subplot(2,2,2);imshow(K1);title('领域为3*3二维中值滤波')subplot(2,2,3);imshow(K2);title('领域为5*5二维中值滤波')subplot(2,2,4);imshow(K3);title('领域为7*7二维中值滤波')2、采用MATLAB中的函数filter2对受噪声干扰的图像进行均值滤波I = imread('f:\lena.png');j=imnoise(i,'gaussian',0,0.02);%模拟均值为0方差为0.02的高斯噪声,M= filter2(fspecial('average',9),J)/255; %模板尺寸为9subplot(2,1,1);imshow(j);title('噪声干扰图像')subplot(2,1,2);imshow(M);title('改进后的图像')3、采用三种不同算子对图像进行锐化处理。
i=imread('f:\1.jpg')I=rgb2gray(s)H=fspecial('sobel')%应用Sobel算子锐化图像I1=filter2(H,I)%Sobel算子滤波锐化H=fspecial('prewitt')%应用prewitt算子锐化图像I2=filter2(H,I)%prewitt算子滤波锐化H=fspecial('log')%应用log算子锐化图像I3=filter2(H,I)%log算子滤波锐化subplot(2,2,1);imshow(i);title('原图像')subplot(2,2,2);imshow(I1);title('Sobel算子锐化图像') subplot(2,2,3);imshow(I2);title('prewitt算子锐化图像') subplot(2,2,4);imshow(I3);title('log算子锐化图像')四、实验总结1、比较不同平滑滤波器的处理效果,分析其优缺点2、比较不同锐化滤波器的处理效果,分析其优缺点实验三图像恢复和图像分割一、实验目的1、熟悉并掌握MATLAB图像处理工具箱的使用;2、理解并掌握常用的图像的恢复和分割技术。