陳雷,周靖仁,田曉燕
(1.河北大學電子信息工程學院,河北保定 071002;2.河北農業(yè)大學機電工程學院,河北保定 071001)
南水北調工程是一個跨流域、長距離的特大型輸水工程,對工程進行長期的安全檢測并建立一套高效實用的安全檢測系統十分必要.機器人巡檢船作為系統的前端設備,承擔著監(jiān)測各種水文參數及壩體參數的重要任務.本文旨在探討基于圖像的巡檢船主動避障方案,使巡檢船能夠自主航行.水面障礙物具有一定高度和傾角,并具備較明顯的直線邊緣特性,因此可通過提取目標直線邊緣特征來發(fā)現障礙物.傳統的直線提取方法主要以Hough變換為代表,提取出含有邊緣特征的解析線段[1],但需要較大的存儲空間并且可能產生冗余點,直接影響了系統性能及處理速度[2].Gromponer等人[3]提出的LSD(line segment detection)算法,具有正比于圖像總像素的計算復雜度,適用于圖像規(guī)模較大情況下的2D線段提取.
本文提出了一種特定方向抑制的GOA改進算法,并將該算法與LSD算法進行實驗對比.結果顯示,該方法檢測效果較好,且計算復雜度較低,適于在嵌入式設備中運行.
LSD是通過梯度方向完成運算的直線段提取算法.該方法通過迭代將梯度方向相近的點連接成具有統一朝向的區(qū)域以尋找能夠包圍此區(qū)域的最小矩形結構,從而完成檢測.此外,該方法含有錯誤控制機制,保證了檢測結果的正確性,其對于包含大量紋理的圖像區(qū)域,尤其是包含大量各項同性特征的區(qū)域,不會檢測出線段結構[4].
本文首先采用LSD算法進行了障礙物邊緣檢測,具體步驟如下[5]:
1)圖像降噪處理:通過高斯濾波器進行濾波;
2)完成圖像中各像素的梯度幅值和方向信息的計算,為每個像素賦予權重和方向;
3)建立梯度幅值列表,增設狀態(tài)矩陣存儲像素點的狀態(tài)信息;
4)在列表中從梯度幅值較大并且未使用的像素開始遍歷:尋找該點臨域中梯度方向與該點相近的點,將其標記為已遍歷并加入當前區(qū)域,同時更新梯度方向均值;
5)獲得區(qū)域后,使用矩形結構對每個區(qū)域進行逼近,并將顯著的錯檢結果剔除即可得到符合條件的輸出.
由于本系統需要抑制橫向邊緣,因此對LSD輸出的線段集合做了如下約束:
1)線段角度要在30°~150°;
2)線段長度要在20個像素以上.
LSD算法的實驗結果如圖1所示.
LSD方法優(yōu)先提取包含像素的梯度模值最大,即特征與周圍對比最明顯的線性要素,這樣某些特征明顯而較短的線性要素會阻礙特征不明顯但方向一致性好的較長線性特征的提取.因此,對于一些較模糊的障礙物邊緣,其線性特征就會被忽略,由圖1b中所示白色漂浮物可以看出,LSD算法未能檢測出其邊緣特征.
GOA邊緣檢測算子是一種基于圖像局部統計性的邊緣檢測算法[6],由Zaman M R等人[7]提出,其算子是基于圖像局部統計性的一種邊緣檢測算法,對局部細小邊緣定位較為準確.圖2以3×3窗口為例,圖中所示為4種不同的計算方向.
運算時選取1個滑動窗口并以當前像素為待檢測點,在窗口內對兩側不重疊區(qū)域的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值越大代表兩側區(qū)域灰度均值差別越大,則該像素點處于2區(qū)域邊界的概率越大;G值越小則兩側區(qū)域灰度均值差別越小,依概率可判定屬同一塊均勻區(qū)域.在實際使用過程中,滑動窗口的尺寸與抗噪性能成正比,但與其對細小邊緣的檢測能力成反比.
障礙物邊緣檢測的基本思路為提取圖像中具有一定長度的特定角度紋理.由于正常的水面波紋多為橫向紋理,且連通長度較短,在改進算法中需弱化處理;而豎向和斜向紋理多為障礙物邊緣的真實紋理,該部分在改進的算法中需被強化以完成檢測、提取.改進的GOA算法結構如圖3所示.
圖3 改進的GOA算法結構Fig.3 Improved GOA algorithm structure
上述(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與之進行比較來完成窗口內圖像二值化.
圖像運算過程中采用的小規(guī)模的滑動窗口會在一定程度上降低算法的抗噪聲能力,因此在圖像二值化后通過腐蝕和膨脹的形態(tài)學操作,以去除圖像噪點,模版如圖5所示.
圖4 GOA3×3模板Fig.4 3×3Template for GOA
圖5 形態(tài)學操作3×3模版Fig.5 3×3Template for morphological
上述圖像信息包含障礙物目標邊緣和密集紋理噪聲構成的偽目標,通過連通性分析最終完成提取真實目標特征并去除虛假區(qū)域信息.系統采用外接矩形來描述和判定候選區(qū)域,利用長軸/短軸直接進行線段的判定[8].根據連通性分析結果,系統控制單元采用歷史驗證的方式進行告警判斷.針對視頻序列當連續(xù)N幀圖像中出現M幀存在告警狀態(tài),則判定為系統遭遇障礙物告警,需及時做出避讓.驗證幀數N與判定門限M均與航速有關.
在巡檢船采集的視頻序列中,通過提取樹枝、漂浮物、橋墩等作為實驗對象.系統對其進行了完整的算法分析,并結合實際需求對GOA算法進了改進,實驗結果如圖6所示.
由圖6b圖可以看出,圖像數據由改進后的GOA算法處理后強化了豎向和斜向的紋理,但其中水面豎向波紋產生的密集噪聲點仍然較多.針對噪聲特點加入的腐蝕、膨脹操作后再進行連通性分析就可得到圖6c所示的處理結果,此時巡檢船行駛過程中所遇到的障礙物邊緣特征已經完成提取.圖6d所示即為目標檢測結果.
圖6 改進的GOA算法實驗結果Fig.6 Experimental test results of improved GOA algorithm
通過與前面所述LSD算法針對相同目標的檢測結果進行對比,經過改進的GOA算法對于目標特征提取較為完整,對不同障礙物的識別適應性較強.
提出了一種方向抑制的改進型GOA算法.由圖6所示實驗結果可以看出障礙物特有的豎(斜)向紋理被強化,而以橫向紋理為主的水面波紋被抑制.同時,算法中各個環(huán)節(jié)均是比較利于實現的圖片空域算法,該算法乘加操作較多,而出現的除法運算也已用其他運算來替代,除了連通域分析之外,統計操作也較少,因此適于移植到嵌入式設備中.算法完成后期在TI公司的Davinci芯片中經核心函數DSP優(yōu)化后,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] 王敏,周樹道.靜態(tài)水上物體檢測分割算法[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.