基于图像的巡检船主动避障算法

2014-10-09 11:51陈雷周靖仁田晓燕
关键词:像素点障碍物纹理

陈雷,周靖仁,田晓燕

(1.河北大学电子信息工程学院,河北保定 071002;2.河北农业大学机电工程学院,河北保定 071001)

南水北调工程是一个跨流域、长距离的特大型输水工程,对工程进行长期的安全检测并建立一套高效实用的安全检测系统十分必要.机器人巡检船作为系统的前端设备,承担着监测各种水文参数及坝体参数的重要任务.本文旨在探讨基于图像的巡检船主动避障方案,使巡检船能够自主航行.水面障碍物具有一定高度和倾角,并具备较明显的直线边缘特性,因此可通过提取目标直线边缘特征来发现障碍物.传统的直线提取方法主要以Hough变换为代表,提取出含有边缘特征的解析线段[1],但需要较大的存储空间并且可能产生冗余点,直接影响了系统性能及处理速度[2].Gromponer等人[3]提出的LSD(line segment detection)算法,具有正比于图像总像素的计算复杂度,适用于图像规模较大情况下的2D线段提取.

本文提出了一种特定方向抑制的GOA改进算法,并将该算法与LSD算法进行实验对比.结果显示,该方法检测效果较好,且计算复杂度较低,适于在嵌入式设备中运行.

1 LSD算法

LSD是通过梯度方向完成运算的直线段提取算法.该方法通过迭代将梯度方向相近的点连接成具有统一朝向的区域以寻找能够包围此区域的最小矩形结构,从而完成检测.此外,该方法含有错误控制机制,保证了检测结果的正确性,其对于包含大量纹理的图像区域,尤其是包含大量各项同性特征的区域,不会检测出线段结构[4].

1.1 LSD算法检测步骤

本文首先采用LSD算法进行了障碍物边缘检测,具体步骤如下[5]:

1)图像降噪处理:通过高斯滤波器进行滤波;

2)完成图像中各像素的梯度幅值和方向信息的计算,为每个像素赋予权重和方向;

3)建立梯度幅值列表,增设状态矩阵存储像素点的状态信息;

4)在列表中从梯度幅值较大并且未使用的像素开始遍历:寻找该点临域中梯度方向与该点相近的点,将其标记为已遍历并加入当前区域,同时更新梯度方向均值;

5)获得区域后,使用矩形结构对每个区域进行逼近,并将显著的错检结果剔除即可得到符合条件的输出.

1.2 LSD算法检测实验结果

由于本系统需要抑制横向边缘,因此对LSD输出的线段集合做了如下约束:

1)线段角度要在30°~150°;

2)线段长度要在20个像素以上.

LSD算法的实验结果如图1所示.

LSD方法优先提取包含像素的梯度模值最大,即特征与周围对比最明显的线性要素,这样某些特征明显而较短的线性要素会阻碍特征不明显但方向一致性好的较长线性特征的提取.因此,对于一些较模糊的障碍物边缘,其线性特征就会被忽略,由图1b中所示白色漂浮物可以看出,LSD算法未能检测出其边缘特征.

2 GOA边缘检测算法

GOA边缘检测算子是一种基于图像局部统计性的边缘检测算法[6],由Zaman M R等人[7]提出,其算子是基于图像局部统计性的一种边缘检测算法,对局部细小边缘定位较为准确.图2以3×3窗口为例,图中所示为4种不同的计算方向.

运算时选取1个滑动窗口并以当前像素为待检测点,在窗口内对两侧不重叠区域的4个不同方向计算像素点灰度均值Rj,Qj(j=1,2,3,4),该像素点相应方向的梯度值为Gj

取该像素点处Gj的最大值为其梯度值

图1 LSD实验检测结果Fig.1 Experimental test results of LSD

图2 GOA算子4种计算方向Fig.2 Four arithmetic direction of GOA operator

通过对G值的分析可以看出:G值越大代表两侧区域灰度均值差别越大,则该像素点处于2区域边界的概率越大;G值越小则两侧区域灰度均值差别越小,依概率可判定属同一块均匀区域.在实际使用过程中,滑动窗口的尺寸与抗噪性能成正比,但与其对细小边缘的检测能力成反比.

3 改进的GOA边缘检测

障碍物边缘检测的基本思路为提取图像中具有一定长度的特定角度纹理.由于正常的水面波纹多为横向纹理,且连通长度较短,在改进算法中需弱化处理;而竖向和斜向纹理多为障碍物边缘的真实纹理,该部分在改进的算法中需被强化以完成检测、提取.改进的GOA算法结构如图3所示.

图3 改进的GOA算法结构Fig.3 Improved GOA algorithm structure

3.1 GOA算法改进方案

上述(3)-(6)式中Pi=(i=1,2,…,9)为窗口内各像素点的灰度值,具体运算步骤为

1)计算局部最强特征梯度值G=max(G1,G2,G3,G4);

2)对局部最强特征进行筛选,弱化横向纹理即G不能为G4;

3)决定窗口内数据两侧的差异性,针对图像序列中障碍物的边缘需要选取阈值使得G>TH;

4)依据筛选后的最强特征梯度生成边缘纹理图.

障碍物类型的差异性会导致其图像中的灰度分布不同,从而造成梯度的强弱之分.为尽可能寻找强边缘,同时对弱纹理进行抑制,需采用局部均值二值化算法对边缘纹理图进行二值化.系统采用图4所示模版以Gmean(Gmean=P1+P1+…+P9)作为阈值,像素点信息值Pi×9与之进行比较来完成窗口内图像二值化.

图像运算过程中采用的小规模的滑动窗口会在一定程度上降低算法的抗噪声能力,因此在图像二值化后通过腐蚀和膨胀的形态学操作,以去除图像噪点,模版如图5所示.

图4 GOA3×3模板Fig.4 3×3Template for GOA

图5 形态学操作3×3模版Fig.5 3×3Template for morphological

上述图像信息包含障碍物目标边缘和密集纹理噪声构成的伪目标,通过连通性分析最终完成提取真实目标特征并去除虚假区域信息.系统采用外接矩形来描述和判定候选区域,利用长轴/短轴直接进行线段的判定[8].根据连通性分析结果,系统控制单元采用历史验证的方式进行告警判断.针对视频序列当连续N帧图像中出现M帧存在告警状态,则判定为系统遭遇障碍物告警,需及时做出避让.验证帧数N与判定门限M均与航速有关.

3.2 改进GOA算法检测实验结果

在巡检船采集的视频序列中,通过提取树枝、漂浮物、桥墩等作为实验对象.系统对其进行了完整的算法分析,并结合实际需求对GOA算法进了改进,实验结果如图6所示.

由图6b图可以看出,图像数据由改进后的GOA算法处理后强化了竖向和斜向的纹理,但其中水面竖向波纹产生的密集噪声点仍然较多.针对噪声特点加入的腐蚀、膨胀操作后再进行连通性分析就可得到图6c所示的处理结果,此时巡检船行驶过程中所遇到的障碍物边缘特征已经完成提取.图6d所示即为目标检测结果.

图6 改进的GOA算法实验结果Fig.6 Experimental test results of improved GOA algorithm

通过与前面所述LSD算法针对相同目标的检测结果进行对比,经过改进的GOA算法对于目标特征提取较为完整,对不同障碍物的识别适应性较强.

4 总结

提出了一种方向抑制的改进型GOA算法.由图6所示实验结果可以看出障碍物特有的竖(斜)向纹理被强化,而以横向纹理为主的水面波纹被抑制.同时,算法中各个环节均是比较利于实现的图片空域算法,该算法乘加操作较多,而出现的除法运算也已用其他运算来替代,除了连通域分析之外,统计操作也较少,因此适于移植到嵌入式设备中.算法完成后期在TI公司的Davinci芯片中经核心函数DSP优化后,CIF分辨率图像的平均处理速度为26.4ms/帧,完全满足实时性要求.

[1] MATAS J,GALAMBOS C,KITTLER J.Robust Detection of Lines Using the Progressive Probabilistic Hough Transform[J].Computer Vision and Image Understanding,2000,78(1):119-137.

[2] 李炜,黄心汉,王敏.一种快速Hough变换改进算法及其在图像边缘检测中的应用[J].信号处理,1999,15(2):182-187.LI Wei,HUANG Xinhan,WANG Min.A new fast hough transform and its application in edge detection[J].Signal Processing,1999,15(2):182-187.

[3] VON GIOI R G,JAKUBOWICZ J,MOREL J M,et al.LSD:A fast line segment detector with a false detection control[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2010,32(4):7 22-732.

[4] DESOLNEUX A,MLISAN L,MOREL J M.Meaningful alignments[J].Computer Vision,2000,40(1):7-23.

[5] 夏旸,管海兵,宦飞.基于颜色与线段的图像轮廓提取算法[J].信息安全与通信保密,2012(5):58-60.XIA Yang,GUAN Haibing,HUAN Fei.Image contour extraction algorithm based on color and line segment detection[J].Information Security and Communications Privacy,2012(5):58-60.

[6] 王敏,周树道.静态水上物体检测分割算法[J].实验室研究与探索,2010,29(6):30-32.WANG Min,ZHOU Shudao.Static water object detection segmentation[J].Research and Exploration in Laboratory,2010,29(6):30-32.

[7] ZAMAN M R,MOLONEY C R.A comparison of adaptive filters for edge preserving smoothing of speckle noise[J].Proceedings of International Conference on Acoustic,Speech,and Signal Processing,1993,2(1),44-52.

[8] 覃勋辉,马戎,付维平,等.一种基于梯度的直线段检测算法[J].光子学报,2012,41(2):205-209.QIN Xunhui,MA Rong,FU Weiping,et al.A line segments detection algorithm based on grad[J].Acta Photonica Sinica,2012,41(2):205-209.

猜你喜欢
像素点障碍物纹理
基于局部相似性的特征匹配筛选算法
高低翻越
基于BM3D的复杂纹理区域图像去噪
SelTrac®CBTC系统中非通信障碍物的设计和处理
使用纹理叠加添加艺术画特效
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
TEXTURE ON TEXTURE质地上的纹理
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
消除凹凸纹理有妙招!