基于自动阈值检测和边缘连接的路面裂缝边缘提取方法

2015-01-12 05:59
山西交通科技 2015年5期
关键词:连接点算子梯度

贾 磊

(1.山西省交通科学研究院,山西 太原 030006;2.太原理工大学,山西 太原 030024)

0 引言

随着国家大力发展不同等级公路政策的推动,公路保养、维护、检测也逐渐成为目前研究的重点及难点。公路保养及检测主要是对道路裂纹或裂缝等不同损伤进行识别,然后根据裂纹或裂缝的损伤程度进行保养和维护[1]。随着计算机技术和图像处理技术的发展,道路的裂纹或裂缝损伤的检测逐渐由人工识别转为基于数字图像处理技术的裂缝识别,而该技术中的边缘提取或边缘检测是研究的重点或难点[2],由于传统边缘检测方法对噪声或异常值不敏感,因此在实际应用中具有一定的缺陷。近些年随着各种新技术新方法(如神经网络、小波变换等技术)的引入,图像的边缘提取也越来越成熟。

图像的边缘是图像分析、处理、计算的重要基础,已成为图像处理领域研究的一项重要课题。目前的图像处理方法主要是经典的边缘检测方法(如最优算子法、微分算子法等)和基础边缘提取方法(如小波分析法、模糊数学法等)。由于算法的准确度、复杂度、耗时等原因,Canny提出了基于最优化方法的边缘检测算子,取得了较好的实验结果,结果表明Canny算子在处理噪声或异常值方面具有明显的优势,在此基础上提出了在边缘检测方面最严格的3个标准。本文提出了一种改进的Canny算子边缘提取方法并将其应用于道路裂纹或裂缝检测[3]中。

1 边缘特征提取方法

边缘是指图像内不同像素之间的界限,一般而言边缘图像属于二值图像。边缘提取或边缘检测是作为计算机视觉[4]、机器视觉、图形图像处理[5]的基本工具,常常应用于特征提取及特征检测[6],主要对图像内不连续区域或变化明显的边缘,目的是为了捕获亮度变化梯度较大的区域。通常图像内不连续区域主要包括图像梯度不连续、图像强度不连续、纹理变化等。理想情况下,通过图像边缘检测器可获得一系列不连续曲线,主要用于表示对象的界限。边缘检测算法可以大幅度地减少图像的数据量,对不必要的信息进行过滤,保留图像的核心结构。但是,提取普通图片的边缘或边界常常会破坏图像的分割,使检测到的曲线呈现不连续状态,从而使边缘线段丢失,这需要边缘检测算法具有较好的准确性。常见的图像边缘检测算法主要包括Sobel算子检测、Roberts算子检测、Prewitt算子检测、Log算子检测、Canny算子检测。

1.1 Canny边缘检测算法3个基本准则

Canny边缘检测算法属于多阶边缘算法,该算法给出了评价边缘检测或边缘提取优劣的3个基本准则:

a)信噪比(SNR)。检测边缘必须是真实边缘且非边缘点的概率最小,使输出信号的信噪比值最大且具有最低的误检率。SNR的数学公式为:

式中:G(x)是边缘函数;f(x)是在边界为[-ω,+ω]的滤波器脉冲响应;σ是高斯噪声均方根。

b)定位性能。定位精度最高,即实际边缘点和检测出的边缘点的中心距离最小。其数学公式为:

式中:f′(x)和 G′(x)分别为 f(x)和 G(x)的一阶导数。Loc值越大,表明单边缘定位精度越高。

c)单一边缘点响应。即检测算法的真实边缘点只有一个返回值,使假边缘响应得到最大抑制。

式中:xmax(f)是指f(x)对噪声响应中两个相邻最大值间的距离;f′(x)是零交叉点平均距离。

1.2 Canny边缘检测算法的具体过程

Canny边缘检测算法根据上述3个准则试图寻找这些表达式的最优解,Canny边缘检测大致分4步:第一,通过高斯滤波对图像进行去噪;第二,对图像的原始灰度图进行纵横向两个梯度图以及综合梯度图的计算;第三,通过第二步中的梯度图进行非极大抑制;第四,对处理后的图像进行阈值处理和边缘连接,对图像边缘进行细化。其具体过程如下:

a)图像高斯滤波 根据待滤波的像素点与其邻域点的灰度值按照一定的参数规则进行加权平均,由于高斯函数核在抗噪声干扰和边缘检测精度定位时能提供达到较好的效果,本文采用一维高斯函数,分别从水平和垂直方向对图像进行低通滤波,其高斯函数为:

b)计算图像平滑后梯度的幅值和梯度方向,采用一阶偏导的2×2领域有限差分方法,对平滑后的图像在水平和垂直两个方向进行偏导数计算,偏导数为:

对水平和垂直方向进行求偏导计算后,再进行梯度幅度M计算和梯度方向θ计算,分别为:

c)对梯度幅值非极大值抑制 若图像梯度幅值矩阵中的元素值越大,说明图像中在该点处的梯度值越大,这仅属于图像增强的过程。在Canny算法中,非极大值抑制主要是为了寻找像素点局部最大值,将非极大值点对应的灰度值设置为0(即该点被视为非边缘点)。

d)用双阈值算法检测和连接边缘 采用双阈值算法检测为了减少假边缘的数量,利用高阈值得到一个边缘图像,使图像含有较少的假边缘,利用低阈值对高阈值的不闭合的图像边缘进行迭代计算,使整个图像边缘达到闭合状态。

根据Canny算法的整体计算过程可知阈值的选择和边缘连接时进行图像边缘检测或提取的关键,传统的算子都需要预设双阈值(高和低),且需要进行反复试验得到,阈值的过高或过低会使图像边缘不连续、边缘信息丢失或出现大量的伪边缘,从而使图像边缘提取具有不确定性,本文提出了一种自适应阈值和边缘连接的Canny边缘提取算法。

2 改进的Canny边缘提取算法

类间方差最大化是一种确定阈值自动计算的方法,其原理是把图像像素根据图像分为Object和Background两类,对类间方差进行搜索求其最大值,并得到其最优阈值,从而使分割后的两类具有更好的分离特性。依数理统计知,类内方差最小化或类间方差最大化是类间分离特性的最好依据,本文受其启发,提出了一种基于自动阈值计算和边缘连接的方法。

假设图像的像素总数为N,灰度级的变化范围为 [0,m-1],灰度级的像素数为Ni,对应的概率Pi=Ni/N,Background灰度值像素的变化范围为[0,T],Object灰度值像素的变化范围为[T+1,m-1],Background和Object灰度均值分别为:

由此可得图像总灰度均值为:

两类像素值对应的类间方差为:

通过对Canny算子非极值抑制后的图像像素进行划分(分别为D1,D2,D3三类),其中D1表示梯度幅值为{t1,t2,…,tk}的像素,即图像中的非边缘点;D2表示{TK+1,TK+2,…,TP}{tK+1,tK+2,…,tp}的像素,即图像中不确定的点(边缘点或非边缘点);D3表示图像中的边缘点,即梯度幅值为{tp+1,tp+2,…,tm}。由此得三类的梯度幅值期望分别为:

搜索σ2(k,l)最大值(即D1,D2,D3三类区间的分界点)就是Canny算子的高低阈值。

根据上述高低阈值本文利用改进的边缘连接方法通过设置高阈值获取强边缘图像,以强边缘方向为导引,沿此方向进行边缘连接,通过对边缘特征进行对比,当边缘点与待连接点相似且两者的法线夹角小于90°时,该点才可能被连接。当待连接点满足上述两个条件时,两者法线夹角最小点被连接,然后以新的边缘点执行迭代计算。具体如下:

a)在强边缘图像中搜索边缘点(未被搜索过)并判断是否为端点,若为端点,记为p。计算离端点m邻域内最近的点,记为q。

b)通过端点p的边缘法线将端点p邻域内的点分为待检测点(含q点的部分)和非检测点,目的是为了按当前边缘的大致方向进行连接(非任意方向且符合逻辑的任意连接)。

c)通过计算待检测连接点的边缘法线与p点边缘法线夹角的绝对值(简称法线夹角a),若a<90°,则该连接点依然作为待检测连接点,相反,该连接点为非待检测连接点。

d)对p点的边缘与待检测点进行特征比较,若与p点相似,则为待检测连接点,相反,该点为非待检测连接点。

e)当无待检测连接点时,将p点标记为已搜索的点并返回a),否则将待检测点中夹角a最小的点作为边缘点,标记a为搜索过的点且返回a)迭代计算,直至完成为止。

3 实验结果分析

本文针对道路裂缝或裂纹,通过对Sobel算子、Roberts算子、Prewitt算子、log算子以及改进后的Canny算子进行了实验验证,验证结果如图1所示。

图1 原始图像和各个边缘检测算子的效果

通过上述图像对比,Robert算子利用局部差分算子寻找边缘,其定位精度较高,易出现部分边缘信息丢失和抗噪声能力低;Sobel算子和Prewitt算子利用加权平滑和微分计算对噪声抑制能力加强,但易出现多像素宽度;Log算子抗噪声能力较低且平滑效果较差;而改进后的Canny算子有效地改善了边缘检测过程中图像的不连续性,在此需要特别说明的是,本改进算法仅是适应于裂缝种类单一的横向及纵向裂缝,对龟裂裂缝和其他裂缝还需要进一步的研究。

猜你喜欢
连接点算子梯度
与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性
一个改进的WYL型三项共轭梯度法
拟微分算子在Hp(ω)上的有界性
基于A3航摄仪的小基高比影像连接点精提取技术研究
一种自适应Dai-Liao共轭梯度法
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
一类Markov模算子半群与相应的算子值Dirichlet型刻画
一类扭积形式的梯度近Ricci孤立子
基于文本阅读的习作教学研究
基于弹性厚粘胶层的结构性连接点响应建模和预测