总670期第八期2019年3月
河南科技
HenanScienceandTechnology
信息技术
基于MATLAB的图像边缘分割算法研究
杨泽颖张建生
(西安工业大学理学院,陕西
西安710021)
摘要:本文主要研究了图像边缘分割算法,利用MATLAB工具处理图像在计算机上完美重现,介绍了5种经
典边缘提取算子,并使用MATLAB提取并检测一些图像边缘,根据数值求解几种算子,分析其优缺点,旨在为相关研究提供借鉴。
关键词:边缘检测;Roberts算子;Prewitt算子;LoG算子中图分类号:TP391
文献标识码:A
文章编号:1003-5168(2019)08-0020-02
ResearchonImageSegmentationAlgorithmsBasedonMATLAB
(SchoolofScience,Xi’anTechnologicalUniversity,Xi’anShaanxi710021)
YANGZeyingZHANGJiansheng
Abstract:Inthispaper,imageedgesegmentationalgorithmwasmainlystudied.Fiveclassicaledgeextractionopera⁃torswereintroduced,andsomeimageedgeswereextractedanddetectedbyusingMATLAB.Severaloperatorswereperwastoprovidereferenceforrelatedresearch.
solvedaccordingtonumericalvalue,andtheiradvantagesanddisadvantageswereanalyzed.Thepurposeofthispa⁃Keywords:edgedetection;Robertsoperator;Prewittoperator;LoGoperator图像分割技术起源于20世纪60年代,是图像处理、特征提取和人工智能等多个领域中的研究热点之一。目前,国内外学者已经提出了上千种图像分割算法,但截至目前,还没有一种适合所有图像的通用分割算法。因此,相关单位应根据不同问题采取多种算法进行同时分割,并对比分析分割后的结果,由此确定适用于目标图像的最优分割方法。在已有算法中,边缘检测方法是较为经典的算法,原理是通过识别图像中像素梯度较大阶跃来提取边缘。本文主要研究边缘检测方法中的微分算子和LOG算子,其中,微分算子包含Roberts算子和Pre⁃wits算子[1-4]。
1
线段检测
é-1-1-1ù
ê-18-1úêúë-1-1-1û
(1)
é-1-1-1ùé-1-12ùé-12-1ùé2-1-1ù
ê222úê-12-1úê-12-1úê-12-1ú(2)êúêúêúêú
-1-1ë-1-1-1ûë2ûë-12-1ûë-1-12û
对于图像中的间断点,常用的检测模板为:
对于图像中的线段,常用的检测模板可以有如下描
述:这些模板分别对应的线段为水平线段、+45°线段、垂直线段和-45°线段。在MATLAB中,可以利用模板,然后通过函数imfilter实现对图像中间断点和线段检测。
22.1
微分算子Roberts算子
首先设定一个固定模板,以此为基础代入图像像素灰度点(x,y),用图像选定区域内的任意一个像素与模板中的系数乘积之和的数值来替代原有像素值。其中,确定选择区域的大小为m×n,区域中的像素数为m×n个。由这个像素区域组成的矩阵一般就是这个固定的模板,一般情况下采用的最小模板是3×3,即
收稿日期:2019-02-20
对数字图像(fx,y)而言,利用图像像素灰度的上下差分来近似图像的梯度,即
∇f=[f(x,y)-f(x-1,y),f(x,y)-f(x,y-1)](3)
∇f,然后求绝对值,最后进行阈值操作就可以实现。Rob⁃
在进行边缘检测时,对于图像中的每个像素计算
基金项目:西安市未央区科技计划项目(201843);陕西省教育厅专项科研计划项目(2010JK585)。作者简介:杨泽颖(1995—),女,硕士,研究方向:水下信息光学。
Copyright©博看网 www.bookan.com.cn. All Rights Reserved.第8期
erts算子的计算公式为:R(i,j)=
基于MATLAB的图像边缘分割算法研究
·21·
利用MATLAB软件对Roberts算子进行数值实现,其结果如图1所示。
[f(i,j)-f(i+1,j+1)]+[f(i,j+1)-f(i+1,j)](4)
2
2
3LoG算子
高斯拉普拉斯算子(LoG)作为图像处理中最常用的算子之一,不依赖图像边缘,没有将矢量梯度标量化,具有旋转不变的性质,在图像处理中经常被用来提取图像边缘,表达式如下。
∂2f∂2f
∇f=2+2∂x∂y2
(6)
数字图像的近似公式为:
∇2f(x,y)=f(x+1,y)高斯拉普拉斯算子是n维欧几里得空间中的一个二阶微分算子,数学上表现为梯度、散度,因其特性受图像
(a)目标图像
+f(x-1,y)+f(x,y+1)+f(x,y-1)-4f(x,y)(7)
中的噪声影响很大。LoG算子是一个经典检测算子,原理是通过拉普拉斯算子对图像进行梯度检测,为了规避梯度算子受噪声的影响,在边缘检测之前加入了一个高斯低通预处理,使图像平滑去噪之后进行梯度检测,这一方法大大改善了图像分割受噪声的影响。这个方法的特点是边界定位精度高、抗干扰能力强、连续性好。利用MAT⁃LAB软件对LoG算子进行数值实现,其结果如图3所示。
(b)Roberts处理图
2.2
对于复杂的图像,采用Roberts算子不能较好地得到图像边缘,需要采用更加复杂的3×3算子,即Prewitt算子。分别代表图像的水平梯度和垂直梯度。
é-1-1-1ùé-101ùê000úê-101ú(5)êúêú111ûë-101ëû
利用MATLAB软件对Prewitt算子进行数值实现,其结果如图2所示。
Prewitt算子的大小为3×3,如式(5)所示,这两个算子
Prewitt算子
图1Roberts算子的数值实现
图3LoG算子的数值实现
4结论
从以上效果可以发现,Roberts算子对图像进行锐化处理时简单且容易实现,垂直和水平两个方向的图像锐化效果比较好,但总的来说,提取边缘较粗,边缘定位不准确。而Prewitt算子对图像边缘提取较好,但在处理过程中损失了一些原图中的细节轮廓,也就是说,检测结果图像像素较宽。拉普拉斯算子对于目标图像的边缘分割可以达到很好的处理效果。
参考文献:
[1]闫建伟,苏小东,赵源,等.基于图像特征的小麦胚芽鞘识别[J].浙江农业学报,2019(31):326-332.
[2]董云峰.基于MATLAB的图像边缘检测方法的研究[J].大庆师范学院学报,2018(38):29-32.
图2Prewitt算子的数值实现
Copyright©博看网 www.bookan.com.cn. All Rights Reserved.