杨泽颖 张建生
摘 要:本文主要研究了图像边缘分割算法,利用MATLAB工具处理图像在计算机上完美重现,介绍了5种经典边缘提取算子,并使用MATLAB提取并检测一些图像边缘,根据数值求解几种算子,分析其优缺点,旨在为相关研究提供借鉴。
关键词:边缘检测;Roberts算子;Prewitt算子;LoG算子
Abstract: In this paper, image edge segmentation algorithm was mainly studied. Five classical edge extraction operators were introduced, and some image edges were extracted and detected by using MATLAB. Several operators were solved according to numerical value, and their advantages and disadvantages were analyzed. The purpose of this paper was to provide reference for related research.
Keywords: edge detection; Roberts operator;Prewitt operator; LoG operator
圖像分割技术起源于20世纪60年代,是图像处理、特征提取和人工智能等多个领域中的研究热点之一。目前,国内外学者已经提出了上千种图像分割算法,但截至目前,还没有一种适合所有图像的通用分割算法。因此,相关单位应根据不同问题采取多种算法进行同时分割,并对比分析分割后的结果,由此确定适用于目标图像的最优分割方法。在已有算法中,边缘检测方法是较为经典的算法,原理是通过识别图像中像素梯度较大阶跃来提取边缘。本文主要研究边缘检测方法中的微分算子和LOG算子,其中,微分算子包含Roberts算子和Prewits算子[1-4]。
1 线段检测
首先设定一个固定模板,以此为基础代入图像像素灰度点(x,y),用图像选定区域内的任意一个像素与模板中的系数乘积之和的数值来替代原有像素值。其中,确定选择区域的大小为m×n,区域中的像素数为m×n个。由这个像素区域组成的矩阵一般就是这个固定的模板,一般情况下采用的最小模板是3×3,
对于图像中的线段,常用的检测模板可以有如下描述:这些模板分别对应的线段为水平线段、+45°线段、垂直线段和-45°线段。在MATLAB中,可以利用模板,然后通过函数imfilter实现对图像中间断点和线段检测。
2 微分算子
2.1 Roberts算子
利用MATLAB软件对Roberts算子进行数值实现,其结果。
2.2 Prewitt算子
对于复杂的图像,采用Roberts算子不能较好地得到图像边缘,需要采用更加复杂的3×3算子,即Prewitt算子。
Prewitt算子的大小为3×3,这两个算子分别代表图像的水平梯度和垂直梯度。
利用MATLAB软件对Prewitt算子进行数值实现,其结果。
3 LoG算子
高斯拉普拉斯算子(LoG)作为图像处理中最常用的算子之一,不依赖图像边缘,没有将矢量梯度标量化,具有旋转不变的性质,在图像处理中经常被用来提取图像边缘,表达式如下。
高斯拉普拉斯算子是n维欧几里得空间中的一个二阶微分算子,数学上表现为梯度、散度,因其特性受图像中的噪声影响很大。LoG算子是一个经典检测算子,原理是通过拉普拉斯算子对图像进行梯度检测,为了规避梯度算子受噪声的影响,在边缘检测之前加入了一个高斯低通预处理,使图像平滑去噪之后进行梯度检测,这一方法大大改善了图像分割受噪声的影响。这个方法的特点是边界定位精度高、抗干扰能力强、连续性好。利用MATLAB软件对LoG算子进行数值实现,其结果如图3所示。
4 结论
从以上效果可以发现,Roberts算子对图像进行锐化处理时简单且容易实现,垂直和水平两个方向的图像锐化效果比较好,但总的来说,提取边缘较粗,边缘定位不准确。而Prewitt算子对图像边缘提取较好,但在处理过程中损失了一些原图中的细节轮廓,也就是说,检测结果图像像素较宽。拉普拉斯算子对于目标图像的边缘分割可以达到很好的处理效果。
参考文献:
[1]闫建伟,苏小东,赵源,等.基于图像特征的小麦胚芽鞘识别[J].浙江农业学报,2019(31):326-332.
[2]董云峰.基于MATLAB的图像边缘检测方法的研究[J].大庆师范学院学报,2018(38):29-32.