数字图像处理实验报告.doc_第1页
数字图像处理实验报告.doc_第2页
数字图像处理实验报告.doc_第3页
数字图像处理实验报告.doc_第4页
数字图像处理实验报告.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字图像处理实验报告学生姓名: 学 号: 专业年级: 09级电子信息工程二班 实验一 常用MATLAB图像处理命令一、实验内容1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。实验结果如右图:代码如下:Subplot (1,3,1) i=imread(E:数字图像处理2.jpg) imshow(i) title(RGB)Subplot (1,3,2) j=rgb2gray(i)imshow(j)title(灰度)Subplot (1,3,3)k=im2bw(j,0.5)imshow(k)title(二值)2、对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。实验结果如右图:代码如下:Subplot (3,2,1)i=imread(E:数字图像处理16.jpg)x=imresize(i,250,320)imshow(x)title(原图x)Subplot (3,2,2)j=imread(E:数字图像处理17.jpg)y=imresize(j,250,320)imshow(y)title(原图y)Subplot (3,2,3)z=imadd(x,y)imshow(z)title(相加结果);Subplot (3,2,4);z=imsubtract(x,y);imshow(z);title(相减结果)Subplot (3,2,5);z=immultiply(x,y);imshow(z);title(相乘结果)Subplot (3,2,6);z=imdivide(x,y);imshow(z);title(相除结果)3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。实验结果如右图: 代码如下:Subplot (2,2,1)i=imread(E:数字图像处理23.jpg)imshow(i)title(原图)Subplot (2,2,2)J = imadjust(i,3);imshow(J)title(变暗)Subplot (2,2,3)J = imadjust(i,0.4)imshow(J)title(变亮)Subplot (2,2,4)J=255-iImshow(J)title(变负)二、实验总结分析图像的代数运算结果,分别陈述图像的加、减、乘、除运算可能的应用领域。解答:图像减运算与图像加运算的原理和用法类似,同样要求两幅图像X、Y的大小类型相同,但是图像减运算imsubtract()有可能导致结果中出现负数,此时系统将负数统一置为零,即为黑色。乘运算实际上是对两幅原始图像X、Y对应的像素点进行点乘(X.*Y),将结果输出到矩阵Z中,若乘以一个常数,将改变图像的亮度:若常数值大于1,则乘运算后的图像将会变亮;叵常数值小于是,则图像将会会暗。可用来改变图像的灰度级,实现灰度级变换,也可以用来遮住图像的某些部分,其典型应用是用于获得掩膜图像。除运算操作与乘运算操作互为逆运算,就是对两幅图像的对应像素点进行点(X./Y), imdivide()同样可以通过除以一个常数来改变原始图像的亮度,可用来改变图像的灰度级,其典型运用是比值图像处理。加法运算的一个重要应用是对同一场景的多幅图像求平均值减法运算常用于检测变化及运动的物体,图像相减运算又称为图像差分运算,差分运算还可以用于消除图像背景,用于混合图像的分离。实验二 图像基本操作一、 实验内容1.调试运行8倍减采样程序,分析程序,对每条语句给出注释,并显示最终执行结果。1、调试运行8倍减采样程序,分析程序,对每条语句给出注释,并显示最终执行结果。a=imread(F:3.jpg);%读取图片b=rgb2gray(a);%变为灰度图像wid,hei=size(b);%改变图片大小quartimg=zeros(wid/2+1,hei/2+1);i1=1;j1=1;for i=1:2:wid for j=1:2:hei quartimg(i1,j1)=b(i,j) ; j1=j1+1; end i1=i1+1;j1=1;endfigureimshow(uint8(quartimg) %显示输出图像2、显示一幅灰度图像a,改变图像亮度使其整体变暗得到图像b,显示两幅图像的直方图Subplot (1,2,1);a=imread(E:数字图像处理实验数字图像处理20.jpg);imshow(a);title(a);Subplot (1,2,2);b= imadjust(a,3);title(b)显示直方图程序:Subplot (1,2,1);imhist(a);title(a的直方图)Subplot (1,2,2);imhist(b);title(b的直方图)3、对图像b进行直方图均衡化,显示结果图像和对应直方图。Subplot (1,2,1);j=histeq(b);imshow(j); title(b均衡化);Subplot (1,2,2);imhist(j); title(b均衡化后的直方图)均衡化的图像和直方图:4、读入图像c,执行直方图规定化,使图像a的灰度分布与c大致相同,显示变换后图像及对应直方图。counts,x=imhist(c) ;Subplot (2,2,1);imshow(a);title(图a);Subplot (2,2,2);c=imread(E:数字图像处理13.jpg);imshow(c);title(图c);Subplot (2,2,3);j=histeq(a,counts);imshow(j);Subplot (2,2,4);imhist(j)实验三 图像变换一、实验内容1、对一幅图像进行缩小,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。i=imread(F:数字图象处理17.jpg);y=rgb2gray(i);subplot(2,2,1);imshow(y);title(原图)j=imresize(y,0.5);subplot(2,2,2);imshow(j);title(缩小图)m=fft2(y);subplot(2,2,3);imshow(abs(log(m),);title(原图傅里叶变化)n=fft2(j);subplot(2,2,4);imshow(abs(log(n),);title(缩小图傅里叶变化)2、对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的对应关系。i=imread(F:数字图象处理17.jpg);j=rgb2gray(i);subplot(2,2,1);imshow(j);title(原图)m=imrotate(j,45,bilinear);subplot(2,2,2);imshow(m);title(旋转图)p=fftshift(fft2(j);subplot(2,2,3);imshow(abs(log(p),);title(原图傅里叶变化)q=fftshift(fft2(m);subplot(2,2,4);imshow(abs(log(q),);title(旋转图傅里叶变化)实验四 常用图像增强方法一、实验内容1、采用二维中值滤波函数medfilt2对受椒盐噪声干扰的图像滤波,窗口分别采用3*3,5*5,7*7subplot(2,2,1);a=imread(F:数字图像处理24.jpg); j=imnoise(a,salt & pepper,0.04);imshow(j);title(椒盐噪声图像);subplot(2,2,2);I_Filter1=medfilt2(j,3 3);imshow(I_Filter1);title(3X3);subplot(2,2,3);I_Filter2=medfilt2(j,5 5);imshow(I_Filter2);title(5X5);subplot(2,2,4);I_Filter3=medfilt2(j,7 7);imshow(I_Filter3);title(7X7);2、采用MATLAB中的函数filter2对受噪声干扰的图像进行均值滤波subplot(1,2,1);a=imread(F:数字图像处理24.jpg);j=imnoise(a,salt & pepper,0.04);imshow(j);title(椒盐噪声图像);subplot(1,2,2);h=fspecial(average);m=filter2(h,j); imshow(m);title(均值滤波)3、采用三种不同算子对图像进行锐化处理。subplot(1,4,1);i=imread(F:数字图像处理16.jpg);i1=rgb2gray(i);imshow(i1);title(原图像);subplot(1,4,2);h=fspecial(laplacian);i2=filter2(h,i1);imshow(i2);title(拉式算子);subplot(1,4,3)h=fspecial(prewitt);i3=filter2(h,i1);imshow(i3);title(prewitt算子)subplot(1,4,4)h=fspecial(sobel);i4=filter2(h,i1)imshow(i4);title(sobel算子)二、实验总结1、比较不同平滑滤波器的处理效果,分析其优缺点中值滤波比低通滤波消除噪声更有效。因为噪声多为尖峰状干扰,若用低通滤波虽能去除噪声但陡峭的边缘将被模糊。中值滤波能去除点状尖峰干扰而边缘不会变坏。理想低通滤波器平滑处理的概念是清晰的,但在处理过程中会产生较严重的模糊和振铃现象。这种现象正是由于傅里叶变换的性质决定的。2、比较不同锐化滤波器的处理效果,分析其优缺点梯度算子: 梯度对应的是一阶导数,梯度算子是一阶导数算子。梯度方向:在图像灰度最大变化率上,反映出图像边缘上的灰度变化。梯度处理经常用于工业检测、辅助人工检测缺陷,或者是更为通用的自动检测的预处理。拉普拉斯微分算子强调图像中灰度的突变,弱化灰度慢变化的区域。这将产生一幅把浅灰色边线、突变点叠加到暗背景中的图像。实验五 图像恢复和图像分割一、实验内容1、产生运动模糊图像,运用维纳滤波进行图像恢复,显示结果。 i=imread(F:car.jpg);I1=rbg2gray(i);I= im2double(I1);subplot(1,3,1)imshow(I);title(原图像)LEN = 21; THETA = 11; PSF = fspecial(motion, LEN, THETA);blurred = imfilter(I, PSF, conv, circular);subplot(1,3,2);imshow(blurred);title(模拟运动模糊图像)wnr2=deconvwnr(blurred,PSF);subplot(1,3,3);imshow(wnr2);title(维纳滤波恢复后图像)2、采用三种不同算子检测图像边缘,显示结果i = imread(F:car.jpg); I=rgb2gray(i);subplot(2,2,1);imshow(I);title(原图像)BW1 = edge(I,prewitt); subplot(2,2,2);imshow(BW1); title(prewit算子边缘检测)BW2=edge(I,zerocross); subplot(2,2,3);imshow(BW2);title(zerocross算子边缘检测)BW3=edge(I,log); subplot(2,2,4);imshow(BW3);title(log算子边缘检测)3、对二值图像分别进行方形模板3*3和5*5的膨胀和腐蚀操作,显示结果。i= imread(F:16.jpg); I=im2bw(i,0.5);subplot(2,3,1);imshow(I);title(二值图像)se=strel(square,3);se1= strel(square,5);I1 = imdilate(I,se);subplot(2,3,2);imshow(I1);title(3*3膨胀图像)I2 = imdilate(I,se1);subplot(2,3,3);imshow(I2);title(5*5膨胀图像)subplot(2,3,4);imshow(I);title(二值图像)erodedBW=imerode(I,se);subplot(2,3,5);imshow(erodedBW);title(3*3腐蚀图像)erodedBW1=imerode(I,se1);subplot(2,3,6);imshow(erodedBW1);title(5*5腐蚀图像)实验六 图像处理实际应用一、实验内容1、调试运行下列程序,分析程序,对每条语句给出注释,并显示最终执行结果。总结算法思想及优缺点总结:对于特定位置的车牌识别算法非常高效,但对于含有噪声等其他因素的车牌分割处理,相对来说算法还有待完善。三、实验内容调试运行下列程序,分析程序,对每条语句给出注释,并显示最终执行结果。总结算法思想及优缺点.I=imread(Car.jpg);%读取图片y,x,z=size(I);% 返回I各维的尺寸,并存储在变量y、x、z中myI=double(I); %换成双精度数值% RGB to HSI %begin横向扫描tic %计算tic与toc之间程序的运行时间% Y 方向 % 分割字符按行积累量Blue_y=zeros(y,1); %产生y*1的全0矩阵for i=1:y %给定i的范围 for j=1:x :x%给定j的范围 if(myI(i,j,1)=30)&(myI(i,j,2)=51)&(myI(i,j,3)=119) % 蓝色RGB的灰度范围 Blue_y(i,1)= Blue_y(i,1)+1; %蓝色像素点统计 end end endtemp MaxY=max(Blue_y); % Y方向车牌区域确定%temp为向量white_y的元素中的最大值,MaxY为该值的索引( 在向量中的位置)PY1=MaxY; %y矩阵的最大元素while (Blue_y(PY1,1)=5)&(PY11) 确定蓝色RGB Blue_y所在位置 PY1=PY1-1; %对车牌区域的修正,向上调整end PY2=Max

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论