戴震
摘要:针对在监控系统中无法高效地区分图片的雾霾与失焦,该文提出一种基于Sobel和Canny相结合的边缘检测算法,首先对图片进行Sobel水平方向边缘检测,再运用Canny算法,最后通过计算二值图像中白色像素点个数来区分图片。该算法可以有效区分雾霾与失焦图片,适合运用于道路监控系统中对于雾霾和失焦的判断。
关键词:道路监控;雾霾与失焦;边缘检测
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)35-0182-02
1 概述
图片的边缘是非常重要的视觉信息,图片的边缘检测是图片处理及分析等相关技术处理的基本步骤。边缘检测的准确性会对图片后期处理的结果产生直接的影响,在现今各种边缘检测算法中,较为经典的有Prewit算子、Sobel算以及Canny算子。其中Sobel算子只对垂直和水平有很強的方向性[2]。本文在Sobel和Canny算子的基础上,提出一种检测图片雾霾与失焦的方法。该方法对区分图片雾霾和失焦有较好的鲁棒性。
2 Sobel边缘检测算法
Sobel算子通过一阶微分方程对图片边缘进行提取。其中函数的变化通过梯度来度量,而图片可以表示为灰度连续函数的取样点数组。所以梯度的离散逼近函数可以用来检测灰度值的显著变化。
其中如下数学表达式表示了两个3*3矩阵被用在Sobel算子中来对原图片进行卷积运算,以此来计算不同方向的灰度差分的估计值。
对于图像中的每个点,可以通过如下公式得到最后该点的灰度大小:
最后我们只需设置一个阈值Gmax,如G大于Gmax,则认为它是该图片中的一个边界点。
3 Canny边缘检测算法
Canny边缘检测是一个多级边缘检测算法。对比于其他边缘算子,Canny运算较为复杂,但是图像边缘处理的结果好于其他边缘检测算子。Canny边缘检测算子有几个核心步骤:①使用高斯滤波器对图像进行噪声过滤并消除;②用一阶偏导的有限差分计算梯度的幅值和方向;③应用非极大值抑制来消除边缘检测带来的影响;④用双阈值来检测真实或潜在边缘;⑤采用高斯平滑函数[1]。
其中2个阈值为高阈值和低阈值,高阈值控制图片强边缘的初始分割,低阈值控制图片边缘连接。
4 基于Sobel和Canny算子的雾霾与失焦图片区分
该方法具体过程为:首先对输入图片用Sobel进行水平方向边缘检测,然后再选取合适的阈值对处理后的图像进行Canny边缘检测,最后计算结果的二值图像中白像素点个数来区分图片。
对于Canny检测,第一步为防止图片噪声对边缘产生影响,须对噪声进行滤除,本文采用大小为(2k+1)*(2k+1)的高斯滤波器核的高斯滤波器对图像进行积卷处理,方程式为:
第二步根据平滑后的图像计算水平和竖直方向的一阶导数(梯度),得到边界的梯度和方向。
第三步对梯度图各个像素运用非极大值抑制(对整幅图进行扫描),剔除非边界点。如图所示对每一个像素进行检查。
第四步在运用非极大值抑制之后,剩余的像素可更好地表示图片中的边缘。不过依旧会存在由于噪声等因素引起的边缘像素。所以在实际操作中选择高低阈值来解决杂散响应,其中用弱梯度值过滤边缘像素,并保留具有高梯度值的边缘像素。如其梯度值高于高阈值,则记录为强边缘像素;如其梯度值小于高阈值并且大于低阈值,则记录为弱边缘像素;如其梯度值小于低阈值,则会被抑制。其中双阈值代码思路如下。
if [Gp] ≥ HighThreshold
[Gp] is an strong edge
else if [Gp] ≥ LowThreshold
[Gp] is an weak edge
else [Gp] is suppressed (7)
为了验证结果,本文采用多幅监控拍摄的图像,并裁剪掉水印部分以消除对结果的影响。下图分别为雾霾及失焦图片,以及在使用Canny边缘检测算法之后的效果图。在本文Canny算子中,Sigma为1.4,EdgeRatio为0.4[3]。
通过Canny边缘检测无法区分雾霾与失焦图片,因而本文在对图片进行Canny算子边缘检测前,加入Sobel水平方向边缘检测,对图片进行处理,结果如下所示。
5 结论
本文针对现实生产生活中对雾霾与失焦图片区分研究不足的情况,提出一种Sobel与Canny算子相结合的边缘检测方法。实验表明,该方法通过选定合适的像素阈值,可有效地区分雾霾与失焦图片,并在阈值60的前提下,对27张图片进行区分,成功率达93.5%。本文的不足在于没有对算法进行优化,也没有着重优化对参数阈值的选取,今后对这方面还需进行进一步研究。
参考文献:
[1] 许宏科,秦严严.一种基于改进Canny的边缘检测算法[J].红外技术,2014(3):210-214.
[2] 袁春兰,熊宗龙.基于Sobel算子的图像边缘检测研究[J].激光与红外,2009(1):85-87.
[3] John Canny, A Computational Approach to Edge Detection[J].IEEE,1979(11):679-698.
[通联编辑:代影]