ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:308.36KB ,
资源ID:8737346      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8737346.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字图像处理大作业.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数字图像处理大作业.docx

1、数字图像处理大作业1、 下图是一用于干涉原理进行测试的干涉场图像,要求判读条纹的间距,请给出图像处理的方案并说明每一步的作用及其对其它处理步骤可能产生的影响。解:步骤与思路:.进行模糊处理,消除噪声.边缘检测,进行图像增强处理二值化图像,再进行边缘检测,能够得到很清晰的边界。.采用横向标号法,根据值为1像素在标号中的相邻位置可以确定间距I=imread(xz mjt.bmp);I1=medfilt2(I); %对图像中值滤波imshow(I1);m,n=size(I1);for i=1:m for j=1:n if(I1(i,j)100) %阈值为100 I1(i,j)=255; else I

2、1(i,j)=0; %进行二值化 end endendfigure;imshow(I1);Y1=zeros(1,25);y2=y1;c=y2;i=100;for j=1:1200 if (I1(i,j)=255&I1(i,j+1)=0) Y1=j+1; end if (I1(i,j)=0&I1(i,j+1)=255) Y2=j; endendfor i=1:25 c=Y2(i)-Y1(i) endc %找出每两个条纹之间的距离2. 现有8个待编码的符号m0,m7,它们的概率分别为0.11,0.02,0.08,0.04,0.39,0.05,0.06,0.25,利用哈夫曼编码求出这一组符号的编码并

3、画出哈夫曼树。3. 请以图像分割方法为主题,结合具体处理实例,采用期刊论文格式,撰写一篇小论文。各种算子对图像进行边缘检测效果的研究图像分割是根据需要将图像划分为有意义的若干区域或部分的图像处理技术。通过边缘检测在Matlab中实现方法,及用四叉数分解函数进行区域分割的方法,掌握了Matlab区域操作函数的使用和图像分析和理解的基本方法,并学到了roberts,sobel,prewitt,canny,log算子对图像进行边缘检测的不同效果。关键词:图像分割 Prewitt算子 Sobel算子 log算子 canny算子一、前言图像分割技术( 英文: image segmentation): 将

4、图像分成互不重叠,具有各自特征的区域。这里的特性可以是灰度、颜色或纹理等。图像分割应满足:分割后所得到的区域总和应覆盖整个图像;各区域之间互不重叠;同一区域的像元应具有某种共同特征,这些特征可以是像元值、颜色、纹理、形状等;同一目标(类别)可以对应于一个区域,也可以对应于多个区域。图像分割方法主要有基于边界的分割技术和基于区域的分割方法。图像分割(image segmentation ):根据需要将图像划分为有意义的若干区域或部分的图像处理技术。图像的边缘是图像最基本的特征,它是灰度不连续的结果。通过计算一阶导数或二阶导数可以方便地检测出图像中每个像素在其邻域内的灰度变化,从而检测出边缘。图像

5、中具有不同灰度的相邻区域之间总存在边缘。边缘检测可借助微分算子(包括梯度算子和拉普拉斯算子)在空间域通过模板卷积来实现。二、梯度算子1 . Prewitt和Sobel算子常用的梯度算子如表4-3所示(星号代表模板中心)。梯度算子一般由两个模板组成,分别对应梯度的两个偏导数,用于计算两个相互垂直方向上的边缘响应。在计算梯度幅度时,可使用式(4-25)或式(4-26),在适当的阈值下,对得到梯度图像二值化即可检测出有意义的边缘。Krisch算子由8个模板组成,其它模板可以由其中一个模板绕其中心旋转得到,每个模板都对特定的边缘方向作出最大响应。当把最大响应的模板的序号输出时,就构成了边缘方向的编码。

6、Prewitt算子和Sobel算子也可以像Krisch算子那样,扩展到两个对角方向,使其在对角方向上作出最大响应。Prewitt和Sobel算子在两个对角方向上的模板如图1所示。(a) Prewitt算子45度和-45度方向模板(b) Sobel算子45度和-45度方向模板图1 Prewitt算子和Sobel算子检测对角方向边缘的模板图2(b)为用Sobel水平模板对图2(a)进行卷积运算得到的水平梯度图,它对垂直边缘有较强的响应。图2(c)为用Sobel垂直模板对图2(a)进行卷积运算得到的垂直梯度图,它对水平边缘有较强的响应。图5-13(d)为Sobel算子梯度图。图2 Sobel算子边缘

7、检测2. 高斯-拉普拉斯(LOG)算子常用的两个拉普拉斯模板见图3(a)和(b)。其中,第一个模板在水平和垂直4个方向上具有各向同性,而第二个模板在水平、垂直和对角8个方向上具有各向同性。然而,拉普拉斯算子一般不直接用于边缘检测,因为它作为一种二阶微分算子对噪声相当敏感,常产生双边缘,且不能检测边缘方向。主要利用拉普拉斯算子的过零点性质确定边缘位置,以及根据其值的正负来确定边缘像素位于边缘的暗区还是明区。图3 LOG算子剖面及其常用的55模板高斯-拉普拉斯(LOG)算子把高斯平滑滤波器和拉普拉斯锐化滤波器结合起来实现边缘检测,即先通过高斯平滑抑制噪声,以减轻噪声对拉普拉斯算子的影响,再进行拉普

8、拉斯运算,通过检测其过零点来确定边缘位置。因此,高斯-拉普拉斯算子是一种性能较好的边缘检测器。二维高斯平滑函数表示如下:其中,是高斯分布的均方差,图像被模糊的程度与其成正比。令r2=x2+y2,上式对r求二阶导数来计算其拉普拉斯值,则有3. Canny边缘检测Canny边缘检测算子是一个非常普遍和有效的算子。Canny算子首先对灰度图像用均方差为的高斯滤波器进行平滑,然后对平滑后图像的每个像素计算梯度幅值和梯度方向。梯度方向用于细化边缘,如果当前像素的梯度幅值不高于梯度方向上两个邻点的梯度幅值,则抑制该像素响应,从而使得边缘细化,这种方法称之为非最大抑制(Nonmaximum Suppress

9、ion)。该方法也可以结合其它边缘检测算子来细化边缘。三、实验内容1.边缘检测(a)使用edge函数对图像trees.tif进行边缘检测。I=imread(trees.tif); imshow(I)bw1=edge(I,roberts);bw2=edge(I,sobel);bw3=edge(I,prewitt);bw4=edge(I,canny);bw5=edge(I,log);figure,imshow(bw1)figure,imshow(bw2)figure,imshow(bw3)figure,imshow(bw4)figure,imshow(bw5)运行结果: 图一 边缘检测 (b)要求

10、同时比较roberts,sobel,prewitt,canny,log算子检测效果。edge函数提供的最有效的边缘检测方法是canny方法。优点:使用两种不同的阈值分别检测强、弱边缘,并且仅当弱边缘与强边缘相连时,才将弱边缘包含在输出图像中。该方法不易受噪声干扰,能够在噪声和边缘间取得较好的平衡,检测到真正的弱边缘。2.区域操作使用区域选择函数roicolor, 区域滤波函数roifilt2和区域填充函数roifilld对图像coins.png或liftingbody.png进行区域操作。I=imreadcoins.png);imshow(I)BW=roipoly;figure,imshow(

11、BW)h=fspecial(unsharp);I2=roifilt2(h,I,BW);figure,imshow(I2)I3=roifill;figure,imshow(I3);I=imread(liftingbody.png); imshow(I)c=222 272 300 270 221 194;r=21 21 75 121 121 75;BW=roipoly(I,c,r);figure,imshow(BW)H=fspecial(unsharp);J1=roifilt2(H,I,BW);figure,imshow(J1)J2=roifill(I,c,r);figure,imshow(J2)

12、运行结果:图二区域操作3区域分割I=imread( trees.tif);I=I(1+1:128,1+1:128);figure,imshow(I)S=qtdecomp(I,0.2);figure,imshow(S)S=qtdecomp(I,0.1);figure,imshow(S)图三区域分割四、实验结果与分析1.边缘检测(1)使用edge函数对图像trees.tif进行边缘检测。(2)比较roberts,sobel,prewitt,canny,log算子的检测效果:Robert算子:根据任一相互垂直方向上的差分都用来估计梯度,Robert算子采用对角方向相邻像素只差Sobel算子:其主要用

13、于边缘检测,在技术上它是以离散型的差分算子,用来运算图像亮度函数的梯度的近似值,缺点是Sobel算子并没有将图像的主题与背景严格地区分开来,即Sobel算子并没有基于图像灰度进行处理,由于Sobel算子并没有严格地模拟人的视觉生理特征,所以提取的图像轮廓有时并不能令人满意。Prewitt算子:该算子与Sobel算子类似,只是权值有所变化,但两者实现起来功能还是有差距的,据经验得知Sobel要比Prewitt更能准确检测图像边缘。log算子:log算法是一种基于灰度值的二阶导数来进行边缘检测的,通过检测零点来进行边缘检测。Canny算子:优点:使用两种不同的阈值分别检测强、弱边缘,并且仅当弱边缘

14、与强边缘相连时,才将弱边缘包含在输出图像中。该方法不易受噪声干扰,能够在噪声和边缘间取得较好的平衡,检测到真正的弱边缘。edge函数提供的最有效的边缘检测方法是canny方法。2、 区域操作使用区域选择函数roicolor, 区域滤波函数roifilt2和区域填充函数roifilld对图像coins.png或liftingbody.png进行区域操作。使用roipoly函数选择多边形区域 后,若使用区域滤波函数roifilt2对coins.jpg在所选区域上过滤后,所选区域变得清晰。若使用区域填充函数roifilld对coins.jpg在所选区域平滑填充后,所选区域变模糊。3. 区域分割用四叉数分解函数qtdecomp进行区域分割进行四叉树分解选取阈值不同,分割不同。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1