数字图像处理课程设计

上传人:cl****1 文档编号:469729847 上传时间:2022-07-26 格式:DOC 页数:52 大小:2.71MB
返回 下载 相关 举报
数字图像处理课程设计_第1页
第1页 / 共52页
数字图像处理课程设计_第2页
第2页 / 共52页
数字图像处理课程设计_第3页
第3页 / 共52页
数字图像处理课程设计_第4页
第4页 / 共52页
数字图像处理课程设计_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《数字图像处理课程设计》由会员分享,可在线阅读,更多相关《数字图像处理课程设计(52页珍藏版)》请在金锄头文库上搜索。

1、word电子科技大学数字图像处理课程设计 课题名称数字图像处理 院系通信与信息工程学院 专 业通信工程 姓 名王亮森 学 号13 起讫日期2015.11.27 2015.12.13 指导教师王登位 2015年12月15日目 录摘要:03课题一:图像的灰度级分辨率调整04课题二:噪声的叠加与频域低通滤波器应用06课题三:顶帽变换在图像阴影校正方面的应用13课题四:利用Hough变换检测图像中的直线15课题五:图像的阈值分割操作与区域属性20课题六:基于MATLAB的GUI程序设计23完毕语:36参考文献:37 / 基于MATLAB的数字图像处理课题设计摘 要本文首先对数字图像处理的相关定义、概念

2、、算法与常用变换进展了介绍;并通过七个课题实例,借助MATLAB的图像处理工具箱puter Vision System Toolbox对这些案例逐一实现,包括图像的灰度值调整、图像噪声的叠加、频域低通滤波器、阈值分割、Hough变换等,常用的图像变化与处理;然后通过MATLAB的GUI程序设计,对局部功能进展模块化整合,设计出了数字图像处理的简易软件;最后给出了软件的帮助文件以与该简易程序的系统结构和m代码。关键词:灰度值调整 噪声图像变换MATLAB GUI设计课题一:图像的灰度级分辨率调整设计要求:将图像的灰度级分辨率调整至,并在同一个figure窗口上将它们显示出来。设计思路:灰度级分辨

3、率又称色阶,是指图像中可分辨的灰度级的数目,它与存储灰度级别所使用的数据类型有关。由于灰度级度量的是投射到传感器上的光辐射值的强度,所以灰度级分辨率又称为辐射计量分辨率。随着图像灰度级分辨率的的逐渐降低,图像中所包含的颜色数目将变得越来越少,从而在颜色维度造成图像信息量的退化。MATLAB提供了histeq函数用于图像灰度值的改变,调用格式如下:J = histeq(I,n)其中J为变换后的图像,I为输入图像,n为变换的灰度值。依次改变n的值为 128、64、32、16、8、4、2 就可以得到灰度值分辨率为128、64、32、16、8、4、2的输出图像。利用MATLAB的subplot命令可以

4、将不同灰度的图像放在同一个figure中方便比照。课题实现:该思路的MATLAB源代码如下:in_photo=imread(lena.bmp);%读入图片“lena.bmp,位置在matlab当前工作区路径下D:TempProjectMatlabWorksfor i = 128,64,32,16,8,4,2 syms(out_photo,num2str(i);%利用for循环定义7个变量,作为不同灰度值分辨率的输出变量 eval(out_photo,num2str(i), =histeq(in_photo,i),;);%histeq函数用于改变图像灰度值,用eval函数给变量循环赋值endfi

5、gure();set(figure(1),NumberTitle,off,Name,图像的灰度级调整) ;%设置figure名称subplot(2, 4, 1); imshow(in_photo,); title(Orginal);subplot(2, 4, 2); imshow(out_photo128,); title(Gray value 128);subplot(2, 4, 3);imshow(out_photo64,);title(Gray value 64);subplot(2, 4, 4);imshow(out_photo32,);title(Gray value 32);sub

6、plot(2, 4, 5);imshow(out_photo16,);title(Gray value 16);subplot(2, 4, 6);imshow(out_photo8,);title(Gray value 8);subplot(2, 4, 7);imshow(out_photo4,);title(Gray value 4);subplot(2, 4, 8);imshow(out_photo2,);title(Gray value 2);%输出所有图形程序运行结果如如如下图:可以7个图像。课题二:噪声的叠加与频域低通滤波器应用设计要求:往图像中叠加不同类型的噪声,并设计一个频域低通

7、滤波器来去除之。设计思路:一、 噪声叠加:首先需要在输入图片中叠加不同类型的噪声。MATLAB提供了imnoise函数用于在图像中参加噪声,调用格式如下:J = imnoise(I,type)J为叠加噪声后的图像,I为输入图像,type分为:gaussian(Gaussian white noise with constant mean and variance);localvar(Zero-mean Gaussian white noise with an intensity-dependent variance);poisson(Poisson noise);salt & pepper(O

8、n and off pixels);speckle(Multiplicative noise).二、低通频域滤波器算法原理空间域滤波和频率域滤波的根底都是卷积定理,这说明两个空间函数的卷积可通过计算两个傅里叶变换函数的乘积的逆变换得到;相反地,两个空间函数的卷积的傅里叶变换恰好等于两个函数傅里叶变换的乘积。然而对于数字图像仅当fx,y和hx,y正确经过零填充后,表达式才严格有效。故在进展傅里叶变换前需先进展填零操作。经过上述分析,可得到傅里叶变换的根本步骤:1计算填充参数2利用填充参数进展傅里叶变换3根据type 生成传递函数Hx,y4传递函数与傅里叶变换相乘5取G 的傅里叶逆变换实部常见的低

9、通频域滤波器有三种,分别为:理想低通滤波器,n阶巴特沃茨低通滤波器和高斯低通滤波器。三、低通频域滤波器在 Matlab中的实现结合傅里叶变换根本步骤和函数 dftuv(M,N),在 Matlab中实现低通频域滤波器的代码如下:function g,F = lpfilter(f,type)%函数参数:彩色图像 f,低通滤波类型 type课题实现:代码分为三局部:1. 用来实现二维数组的meshgrid 表示的函数dftuv.m 滤波器lpfilter/codebeginfunction U,Y = dftuv( X,N )%dftuv M,N 来实现二维数组的meshgrid 表示u=0:(X-

10、1);w=0:(N-1);idx=find(uX/2);u(idx)=u(idx)-X;idy=find(wN/2);w(idy)=w(idy)-N;Y,U=meshgrid(w,u);endfunction g,F = lpfilter(f,type)%函数参数:彩色图像f,低通滤波类型type%函数返回值:低通模糊图像g,低通频率图像F%D0 取填充后图像宽度的5%当type 为ideal 时,表理想低通滤波器%当type 为 btw 时,表n 阶巴特低通沃兹滤波器%当type 为 gaussian 时,表高斯低通滤波器f=im2double(f);PQ=2*(size(f);%DFT 之

11、前补零F=fft2(f,PQ(1),PQ(2);%U,V=dftuv(PQ(1),PQ(2);D=sqrt(U.2+V.2); %采用欧氏距离D0=0.05*PQ(2);% 设定距离初值n=5;switch(type)caseidealH=double(D=D0);casebtwH=1./(1+(D./D0).(2*n);casegaussianH=exp(-(D.2)./(2*(D02);otherwiseerror(Unknown filter type.);end%G=H.*F;g=real(ifft2(G);%得到新图像g=g(1:size(f,1),1:size(f,2);%矩形修剪

12、为初始大小endOriginal = imread(bank.bmp);X1 = imnoise(Original,salt & pepper);%叠加椒盐噪声X2 = imnoise(Original,gaussian,0,0.1);%叠加高斯噪声X3 = imnoise(Original,poisson);%叠加poisson噪声X4 = imnoise(Original,speckle);%叠加speckle噪声g1, = lpfilter(X1,gaussian);%lowpass-filter函数,低通滤波g2, = lpfilter(X1,btw);g3, = lpfilter(X

13、1,ideal);h1, = lpfilter(X2,gaussian);h2, = lpfilter(X2,btw);h3, = lpfilter(X2,ideal);i1, = lpfilter(X3,gaussian);i2, = lpfilter(X3,btw);i3, = lpfilter(X3,ideal);j1, = lpfilter(X4,gaussian);j2, = lpfilter(X4,btw);j3,F = lpfilter(X4,ideal);figure, imshow(Original)%显示原始图像set(figure(1),NumberTitle,off,Name,Original) ;figure;%高斯低通滤波器滤波后的图像set(figure(2),NumberTitle

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号