原创基于MATLAB的数字图像与边缘检测毕业论文.docx

上传人:b****6 文档编号:6324780 上传时间:2023-01-05 格式:DOCX 页数:20 大小:451.37KB
下载 相关 举报
原创基于MATLAB的数字图像与边缘检测毕业论文.docx_第1页
第1页 / 共20页
原创基于MATLAB的数字图像与边缘检测毕业论文.docx_第2页
第2页 / 共20页
原创基于MATLAB的数字图像与边缘检测毕业论文.docx_第3页
第3页 / 共20页
原创基于MATLAB的数字图像与边缘检测毕业论文.docx_第4页
第4页 / 共20页
原创基于MATLAB的数字图像与边缘检测毕业论文.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

原创基于MATLAB的数字图像与边缘检测毕业论文.docx

《原创基于MATLAB的数字图像与边缘检测毕业论文.docx》由会员分享,可在线阅读,更多相关《原创基于MATLAB的数字图像与边缘检测毕业论文.docx(20页珍藏版)》请在冰豆网上搜索。

原创基于MATLAB的数字图像与边缘检测毕业论文.docx

原创基于MATLAB的数字图像与边缘检测毕业论文

基于MATLAB的数字图像分析与边缘检测

摘要:

图像处理是用计算机对图像进行一系列的操作,一般操作是先将图像数字化,即易于获得某种预期结果的技术,其中边缘检测是图像处理中必不可少的一步,采用微分算子检测边缘是最常用的,也是处理效果比较好的一种。

MATLAB图像处理工具箱提供了边缘检测(edge)函数,它能利用多种算子进行图像的边缘检测,语言结构简单,本文主要介绍了数字图像处理主要研究领域中边缘检测的方法,并利用MATLAB图像处理工具箱提供的函数处理图片,对图像进行边缘检测,给出了各种算子检测边缘的结果并进行相互比较。

关键字:

图像处理,MatLab,边缘检测

ABSTRACT

Imageprocessingistoanalyzeimagesbycomputerstoachievedesiredaseriesofresults.Edgedetectionisanabsolutelynecessarystepinimageprocessingandtheuseofdifferentialoperatorstodetectedgeisoneofthemostcommonandeffectivemethods.ImageprocessingMatlabToolboxUser’sGuide,Hasprovidedtheedgefunction,Itcanusemanykindsofoperatorstocarryontheimagetheedgeexamination.Edgedetectionisoneofthemainmethodsintheresearchfieldofdigitalimageprocessing.TheimageprocessingfunctionprovidedbytheMatLabimageprocessingtoolboxisemployedtoperformedgedetectionforimagesothattheprogramandprocessingresultareobtained.

Keywords:

Imageprocessing,MatLab,Edgedetection

 

独创声明

本人郑重声明:

所呈交的毕业设计(论文),是本人在指导老师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权争议。

尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品成果。

对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。

本声明的法律后果由本人承担。

 

作者签名:

二〇一〇年九月二十日

 

毕业设计(论文)使用授权声明

本人完全了解滨州学院关于收集、保存、使用毕业设计(论文)的规定。

本人愿意按照学校要求提交学位论文的印刷本和电子版,同意学校保存学位论文的印刷本和电子版,或采用影印、数字化或其它复制手段保存设计(论文);同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允许他人依法合理使用。

(保密论文在解密后遵守此规定)

 

作者签名:

二〇一〇年九月二十日

目录

基于MATLAB的数字图像分析与边缘检测1

1.1课题概述1

1.2课题背景知识2

1.2.1MATLAB简介2

1.2.2数字图像简介2

1.3目的意义3

1.4小结3

2.数字图像处理4

2.1基本概念4

2.2图像增强5

2.2.1直接灰度调整5

2.2.2直方图处理6

2.2.3图像滤波7

2.3MATLAB图像处理8

2.3.1MATLAB中的图像文件格式9

2.3.2图像类型9

2.3.3图像的几何操作9

2.3.4图像类型的转换12

2.4MATLAB的二值图像操作13

2.4.1态学简介13

2.4.2二值数学形态学的运算函数14

2.5图像变换15

2.5.1快速傅立叶变换15

2.5.2离散余弦变换16

2.6小结17

3.图像分析——边缘检测18

3.1边缘检测简介18

3.2边缘检测方法18

3.3常见的一阶边缘检测算子19

3.3.1Roberts算子20

3.3.2Sobel算子20

3.3.3Prewitt算子22

3.3.4Kirsch算子22

3.4常用的二阶边缘检测算子23

3.4.1Laplacian算子23

3.4.2LOG(Laplacian-Gauss)算子24

3.5小结26

4.总结27

参考文献28

附录29

1.绪论

1.1课题概述

图像是人类获取和交换信息的主要来源,因此,图像处理的应用邻域涉及到人类生活的方方面面。

图像的研究方法和手段根据对图像作用域的不同,可以分为空余处理方法和变换域处理方法。

空余处理方法有两大类:

邻域处理法和点处理法。

变换域处理法有:

傅立叶变换、离散余弦变换。

图像处理的目的是改善图像的质量,以人为对象以改善人的视觉效果为目的。

图像处理是用计算机对图像进行一系列的操作,一般操作是先将图像数字化,即易于获得某种预期结果的技术。

常用的图像处理方法有图像增强、复原、编码、压缩、分割等。

其中边缘检测是图像处理中必不可少的一步,采用微分算子检测边缘是最常用的,也是处理效果比较好的一种。

MATLAB图像处理工具箱提供了边缘检测(edge)函数,它能利用多种算子进行图像的边缘检测,语言结构简单。

本文主要介绍了数字图像处理主要研究领域中边缘检测的方法,并利用MATLAB图像处理工具箱提供的函数处理图片,对图像进行边缘检测,给出了各种算子检测边缘的结果并进行相互比较。

在现阶段,图像的处理方法很多,其中,边缘检测是很重要的一种处理方法,它在图像处理领域中占有重要地位,图像的边缘是集中了图像大部分的信息,图像边缘的确定与提取对于整个图像场景的识别与理解非常重要。

在现实生活中,图像处理的问题一直是个焦点问题,在软件MATLAB处理图像的领域中,图像的各种处理易于实现,易于得到预期的结果。

本课题阐述了数字图像在一些应用领域中的处理及处理前后的对比,包括各种算子的边缘检测,从而实现对图像的分析及处理。

1.2课题背景知识

1.2.1MATLAB简介

MATLAB是MathWorks公司用C语言开发的软件,其中的矩阵算法来自Linpack和Eispack的课题研究成果。

MATLAB是一种将数据结构、变成特征和图形用户界面完美的结合到一起的软件。

其核心是数组和矩阵。

MATLAB的特点有:

高级科学计算语言,用于线性代数统计、的集成管理环境,算法设计开发的交互式工具,创建自定义工程师图形界面的工具,2-D和3-D的数据可视化,与第三方算法开发工具—CC++、FORTRAN、Java、COM、MicrosoftExcel—集成开发基于MATLAB的算法。

MATLAB的基本功能:

语言编程功能、编译功能、自动代码生成功能、图像用户界面开发功能、数学计算功能、图形化显示功能、Simulink建模仿真功能。

1.2.2数字图像简介

图像是对客观对象的一种相似性的、生动的描述或表示。

按图像空间坐标和明暗程度的连续性可分为数字图像和模拟图像。

数字图像计算机可以直接处理,其空间坐标和灰度都不连续,是用离散的数字来表示图像。

而模拟图像的坐标和灰度都是连续的,故模拟图像无法用计算机直接进行处理。

图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果。

图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像变换、增强、重建、复原、编码、压缩等。

1.3目的意义

图像是对客观对象的一种相似性的、生动的描述或表示。

对图像进行一系列的操作以便达到预期的图像结果。

现阶段数字图像处理技术的迅速发展为人类带来了巨大的经济社会效益,大到应用卫星遥感进行的全球环境气候监测,小到指纹识别技术在安全领域的应用。

可以说,数字图像处理技术已经融入到科学研究的各个领域。

边缘检测是数字图像处理中最重要的一种技术,图像物体中边缘表现为灰度变化,边缘广泛存在于物体与背景之间、物体与物体之间。

1.4小结

本章重点介绍了课题简介、MATLAB软件的特点与功能、数字图像简介和课题的目的意义。

 

2.数字图像处理

2.1基本概念

二值图像:

也叫黑白图像,就是图像像素只存在0,1两个值。

一个二值图像是纯黑白的。

每一个像素值将取0或1中的一个值,通常用0表示黑,用1表示白。

灰度图像:

灰度图像是包含灰度级的图像。

与二值图像不同,灰度图像的像素并不是只有0、1两个量化级数,而是具有多个量化级数,如64级、256级等。

当像素灰度级用8bit表示时,图像的灰度级就是,每个像素的取值就是256中灰度中的一种,即每个像素的灰度值为0~255中的一个。

通常,用0表示黑,用255表示白,从到亮度逐渐增加。

灰度图像只有亮度信息而没有色彩信息。

通常所说的黑白图像,其实包含了黑白之间的所有灰度色调。

彩色图像:

图像中R代表红色,G代表绿色,B代表蓝色。

RGB色彩模式是用RGB模型为图像中的每一个像素的RGB分量分配一个0~255范围内的强度值。

白色的都为255;黑色的都为0;这类图像不适用单独的调色板,每一个像素的颜色有存储在相应位置上的红,绿,蓝颜色共同决定。

图像数字化:

把连续的图像用一组数字来表示,便于计算机分析处理。

图像增强:

对图像的某些特征进行强调或尖锐化而不增加图像的相关数

据。

图像压缩:

在满足一定的图像质量要求下对图像进行编码,可以压缩表

示图像的数据。

图像分析:

详细研究并描述一幅图像不同部分的特征和相互关系。

图像恢复:

把模糊或褪色的图像尽可能的复原。

2.2图像增强

图像增强是指按特定的需要突出一幅图像中的某些信息,同时消弱或去除某些不需要的信息的处理方法。

其主要有两个目的:

一是增强有用信息,抑制无用信息,从而改善图像的视觉效果;二是有利于人工和机器分析。

2.2.1直接灰度调整

(1)增强对比度

增强对比度实际是增强原图的各部分的反差。

实际中经常是通过增强原图中某两个灰度值之间的动态范围来实现的。

MATLAB图像处理工具箱中用函数进行灰度线性增强。

其语法格式为:

I1=imadjust(I,[low)

[I2,T]=])

其中,为指定滤波器窗口的大小,默认值为3*3,返回图像I1经滤波后的图像J。

图3加入椒盐噪声后图像的均值滤波和中值滤波

图4加入高斯噪声后图像的均值滤波和中值滤波

2.3MATLAB图像处理

数字图像处理技术发展迅速,在实际上生活中起到了很大的作用,而MATLAB对数字图像的处理很是方便,用相应的函数便可实现。

2.3.1MATLAB中的图像文件格式

(1)PCX格式:

可处理1、4、8、16、24位等图像数据。

(2)BMP格式:

有1、4、8、24为非压缩图像,8位RLE图像。

(3)DHF格式:

有8、24位光栅图像数据集。

(4)JPEG格式。

是一种称为联合图像专家组的图像压缩格式。

(5)TIFF格式。

处理1、4、8、24为非压缩图像,1、4、8、24为packbit压缩图像,1位CCITT压缩图像。

(6)XWD格式。

包括1、8位Zpixmaps,XYBitmaps,1位XYPixmaps。

(7)PNG格式。

2.3.2图像类型

(1)索引图像

(2)灰度图像

(3)RGB图像

(4)二进制图像

2.3.3图像的几何操作

在对数字图像进行操作时,在某些时候只需要对图像的某一部分进行相应的操作。

而图像的几何操作主要包括3种。

(1)图像的旋转

imrorate函数可以通过一种特定的插补方法来改变显示图像,其语法格式为:

B=imrorate(A,angle,method)

其中,A是图像的数据矩阵,angle是图像的旋转角度,method可以是nearest、bicubic或bilinear。

Nearest(近邻插补运算):

输入像素的赋值为当前点的像素点。

Bicubic(双立方插补运算):

输入像素的赋值为4*4矩阵所包含有效点的加权平均值。

Bilinear(双线性插补运算):

输入像素的赋值为2*2矩阵所包含有效点的加权平均值。

图5旋转图

(1)图像的剪切

imcrop函数可以实现对图像的剪切操作。

该操作剪切的是图像中的一个矩阵子图,用户可以通过参数指定这个矩形四个顶点的坐标,也可以交互的用鼠标选取这个操作。

其语法格式为:

X1=imcrop(X,map):

对索引图像进行交互式的剪切。

I1=imcrop(I):

对灰度图像进行交互式的剪切。

X2=imcrop(X,map,[xminyminwidth)和腐蚀(Erosion),其数学表达式如下:

膨胀运算的数字表达式:

(3-2)

腐蚀运算的数字表达式:

(3-3)

开运算:

A对B的开,即A被B进行开运算的结果定义为:

(3-4)即A先被B腐蚀,再被B膨胀的结果。

闭运算:

对的闭运算定义为:

(3-5)

即A先被B膨胀,后再被B腐蚀的结,通常,开运算用来删除图像中的小分支,可以使图像缩小;闭运算用来填补图像中的空穴,可以使图像放大;而腐蚀和膨胀运算具有平移不变形,对图像A的腐蚀和膨胀的运算结果只取决于A与B的结构,而与A的位置无关。

2.4.2二值数学形态学的运算函数

dilate函数实现二值图像的膨胀运算,其语法格式为:

BW=dilate(BW1,SE,….,N)返回图像BW1经过结构元素SE膨胀N次后的图像,这里SE为结构元素。

图10二值图像与腐蚀图像

Imerode函数实现二值图像的腐蚀运算,其语法格式为:

IM1=Imerode(IM,SE)返回灰度、二值图像和压缩二值图像IM进行腐蚀的图像。

图11灰度图像与腐蚀图像

2.5图像变换

图像变换在图像处理和图像分析中占有重要地位。

图像变换就是将图像转换到变换域,如频率域,进行图像处理和图像分析。

这给图像数据压缩、特征提取、图像去噪等带来了很大的方便,从而使后面的处理运算变得简单。

在数字图像处理中,输入图像和输出图像通常都是二维的,一般表示成二维数字矩阵,可以直接叫二维傅里叶变换、二维DFT、二维FFT。

2.5.1快速傅立叶变换

离散傅立叶变换所需要的乘法和加法的操作次数N是2的幂的时候,其计算效率高,使用起来简单方便。

其算法思想是:

先对原图进行转置,按行对转置后的图像矩阵作一维FFT,将此变换所得的中间矩阵在转置,在按行对转置后的中间矩阵作一维FFT,最后得到的就是二维FFT。

MATLAB图像处理工具箱提供了以下处理图像的快速傅立叶变换的函数;

Fft2用来计算二维快速傅立叶变换,其语法格式为:

F=fft2(f)

F=fft2(f,m,n)

其中,F=fft2(f)返回图像f的二维变换矩阵,F与f的大小一致。

F=fft2(f,m,n)截取或补充0元素,使图像的大小为m*n,然后对其进行二维fft,的大小没有改变。

计算fft2所需要的时间与[m,n]=size(f)有关,如果m和n为2的幂,则计算速度最快。

图12快速傅立叶变换后的图

2.5.2离散余弦变换

离散余弦变换(DCT)是图像压缩处理中应用较多的一种变换。

它利用傅里叶变换的对称性,采用图像边界折叠操作将图像变换成为偶函数形式,然后对图像进行二维傅里叶变换,变换后的结果将仅包含余弦项。

MATLAB图像处理工具箱提供了两种用于图像处理的DCT变换函数;

dct2使用一个基于的算法来提高输入输出速度,特别适合于比较大的输入矩阵,其语法格式为:

B=dct2(A)

B=dct2(A,[m,n])

B=dct2(A,m,n)

其中,B=dct2(A)用于计算图像的二维DCT,变换前后图像的大小一样;B=dct2(A,[m,n])通过补0或截取元素,使得A成为m*n大小的矩阵,变换结果B与A的大小也是一样的。

idct2是dct2的反变换,其语法格式与dct2相同。

2.6小结

本章主要介绍了数字图像处理的主要内容,主要有基本概念、图像增强、MATLAB图像处理、MATLAB的二值图像操作、图像变换。

 

3.图像分析——边缘检测

在某些情况下,为了辨别和分析图像,需要对图像进行分离提取的操作,在此基础上可进一步进行图像的识别与分析。

3.1边缘检测简介

边缘检测是图像处理和计算机视觉中的基本问题,边缘是指其周围像素灰度变化不连续的那些像素的集合,边缘广泛从在于物体与背景之间、物体与物体之间,因此它是图像分割所依赖的重要特征。

边缘检测的目的是标识数字图像中亮度变化明显的点。

图像边缘有方向和幅值两个特征,通常沿边缘的走向灰度变换平缓,垂直于边缘走向的像素灰度变换剧烈。

根据灰度变换的特点,常见的边缘分为:

凸缘型、阶跃型、房顶型。

凸缘型:

其边缘的灰度值上升与下降都比较缓慢。

阶跃型:

其边缘处于图像中两个具有不同灰度值的相邻区域之间。

房顶型:

其主要对应细线条的灰度值变换区域。

3.2边缘检测方法

由于图像的边缘是以灰度变化出现的,因此,可以通过计算图像灰度的不连续性来增强图像和进行图像检测边缘。

边缘检测的方法主要有以下4种。

(1)空域微风算子,即传统的边缘检测方法。

图像的边缘是灰度变化最剧烈的地方,其对应的连续情况就是函数梯度较大的地方,所以研究图像的边缘的一种方法就是求导算子。

对图像中的各个像素点进行一阶或二阶微分来确定边缘像素点。

一阶微分图像的阈值处对应着图像的边缘点;二阶微分图像的过零点对应着图像的边缘点。

(2)拟合曲面

(3)小坡多尺度边缘检测随着图像边缘检测技术的提高,小破分析得到迅速房展并开始用于边缘检测。

作为研究非平稳信号的一种有利工具,小波分析在边缘检测方面起到了很大的作用。

(4)基于数学形态学的边缘检测数学形态学是一种对二值图像进行操作的一种非线性数学方法,其运算是物体形状集合与结构元素之间的相互作用,对边缘方向不敏感,在图像处理中得到了广泛的应用。

同时在数字图像处理方面还具有简单性和严谨性,能很好的描述图像的形态特征。

因此,将数学形态学用于边缘检测,还可以滤除噪声,能保留图像中原有的细节信息,是边缘检测技术的一个重大突破。

3.3常见的一阶边缘检测算子

梯度算子可以增强图像边缘信息,这对图像边缘检测起到了重要作用。

梯度对应的是一阶导数,梯度算子是一阶导数算子。

对一个图像f(x,y)函数,它在位置(x,y)处的梯度可定为梯度算子:

G[f(x,y)]=

(3-6)

梯度算子是图像处理中最常用的一阶微分算法,是(3-11)中f(x,y)表示图像的灰度值,图像梯度最重要的性质是梯度方向,是在图像灰度最大变化率上,它恰是可以反映出图像边缘上的灰度变化。

其定义如下:

(3-7)

以上两式中偏导数需要对每个像素位置计算,而实际上数字图像中求导数是可以用一阶差分代替一阶微分。

=f(i,j+1)-f(i,j)(3-8)

=f(i,j)-f(i+1,j)

求梯度时对于平方和运算及开方运算,可以用两个分量的绝对值表示为:

G(i,j)

(3-9)

上式中,j对应于x轴方向,i对应于y轴方向。

f(x,y)表示处理前的点的灰度值,G(x,y)表示处理后的点的灰度值。

求梯度幅值时对于平方和及开放运算,可以用两个分量的绝对值之和来表示。

3.3.1Roberts算子

Roberts边缘算子又称为梯度交叉算子,其思想是利用局部差分算子寻找边缘的算子。

梯度幅值计算近似方法如表1所示

(i,j)

(i,j+1)

(i+1,j)

(i+1,j+1)

表1Roberts算子梯度幅值计算示意图

 

(i,j)为当前像素的位置,其计算公式如下:

G(i,j)=

(3-10)

它是由两个2*2模板组成。

用卷积模板表示如下:

G(i,j)=

(3-11)

式中,Gx=

;Gy=

;标注.的是当前像素的位置。

3.3.2Sobel算子

Sobel算子边缘检测的效果不好很好。

Sobel算子梯度幅值计算如表2所示。

(i,j)为当前的位置点,梯度幅值计算公式如下:

表2Sobel算子中各个点的像素点的关系图

(i-1,j-1)

(i-1,j)

(i-1,j+1)

(i,j-1)

(i,j)

(i,j+1)

(i+1,j-1)

(i+1,j)

(i+1,j+1)

=

+

(3-12)

将其进行简化,表2中的坐标对应记为如表3所示的符号。

表3梯度幅值计算示意图

 

因此式(3-12)则可以简单记为:

(3-13)

式中c=2。

用卷积模板来实现:

(3-14)

式中,

Sx是水平模板,对水平边缘响应最大;Sy是垂直模板,对垂直边缘响应最大。

图像中的每个点都用这两个模板做卷积,两个模板卷积的最大值作为该店的输出值。

其运算结果是一副边缘幅度图像。

这一算子把重点放在接近于模板中心的像素点。

因此Sobel算子是边缘检测中最常用的算子之一。

Sobe梯度算子是先做加成权平均,在求微分,最后求梯度,即用式(3-12)、式(3-13)和式(3-14)来实现的。

3.3.3Prewitt算子

Prewitt算子用卷积模板来描述:

(3-15)

式中,

前者为水平模板,

后者为垂直模板。

图像中的每个点用这两个模板进行卷积,取最大值作为输出值,最终产生一副边缘幅度图像。

3.3.4Kirsch算子

Kirsch算子使用8个模板来确定梯度的幅值和方向,故又称为方向算子,通过一组模板分别计算不同方向上的拆分值,取其中最大的值作为边缘强度,而将与之对应的方向作为边缘的方向。

 

表43*3子图像示意图

 

(3-16)

式中

(3-17)

式(3-17)中的下标超过7就用8去除并取余数。

3.4常用的二阶边缘检测算子

3.4.1Laplacian算子

Laplacian算子是不依赖于边缘方向的二阶微分算子,是常用的二阶导数算子。

对一个连续函数f(x,y),它在位置(x,y)上的Laplacian表式式为:

(3-18)

对于数字图像来说,计算函数的拉普拉斯值也可以借助各种模板来实现。

拉普拉斯模板的基本要求是对应中心像素的系数应该是正的,而对应于中心像素邻近像素的系数应该是负的,且它们的和应该是零。

其可以简单表示为:

(3-19)

或者

(3-20)

也就是说,拉普拉斯算子常用两种模板来进行检测,其模板分别见图(a)和图(b).

模板(a)模板(b).

拉普拉斯算子是一个标量而不是向量,具有线性特性和旋转不变,即各向同性的性质,常常被用在图像处理的过程中。

由于拉帕拉斯算子是一种二阶导数算子,可在边缘处产生一个零交叉。

因此,经过拉普拉斯算子滤波过的图像对噪声相当敏感,也可产生双像素宽的边缘,且不能提供边缘方向信息,拉普

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 科学

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

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