徐良玉,馬錄坤,謝燮,彭艷,彭艷青,崔建祥
(1.上海大學機電工程與自動化學院,上海 200072;2.中國人民解放軍理工大學理學院,南京 210007)
基于結構森林邊緣檢測和Hough變換的海天線檢測
徐良玉1,馬錄坤1,謝燮1,彭艷1,彭艷青2,崔建祥1
(1.上海大學機電工程與自動化學院,上海 200072;2.中國人民解放軍理工大學理學院,南京 210007)
海天線是海面環(huán)境圖像所具有的重要特征之一,海天線的檢測對劃分???、海界區(qū)域以及目標檢測有重要作用.提出了一種結合結構森林快速邊緣檢測和概率Hough變換的海天線檢測方法.首先通過高斯低通濾波來減小海面浪紋、光照反射等局部紋理影響,然后使用已完成訓練的結構化隨機森林為每個像素貼上邊緣標簽——二值化,最后通過Hough變換原理擬合海天線.實驗結果表明,該方法可以較好地忽略局部干擾邊緣,強化邊界提取,對復雜海天背景下的海天線檢測具備魯棒性和高準確性.
海天線檢測;結構化隨機森林;決策樹;邊緣檢測;Hough變換
視覺傳感器是無人化平臺感知環(huán)境的主要傳感器之一.無人機、無人測量平臺也需要搭載相機,與激光、超聲傳感器等互相補充,以感知海面環(huán)境,實現航行中自主安全避障和3維環(huán)境感知.而目標檢測是無人機實現自主避障、跟蹤目標等自主功能的核心模塊之一.由于無人機在實行上述自主功能時對實時性的要求較高,且一些目標檢測算法計算量較大,故對于目標檢測而言,減小計算量、提高運算速度和效率是關鍵.
海天線是海面環(huán)境圖像的重要特征之一.在空間上將圖像劃分為3個部分:天空、海界線和海面(見圖1).而自然環(huán)境中天空區(qū)域連續(xù)分布的云層、海界線區(qū)域復雜的背景輪廓、海面區(qū)域的浪紋都會對海界線檢測造成干擾,可能會導致海天線檢測結果的偏差.對于無人水面艇、艦船而言,影響其航行的障礙物主要在海天線以下,那么水面障礙物檢測工作實際上就可以限制在海天線以下區(qū)域完成,因此對海天線的有效提取不僅可以減少圖像中的干擾信息,而且還可以降低處理算法的時間消耗,有利于后續(xù)目標檢測方法的計算,實現對目標的精確檢測.
圖1 ??毡尘皥D像區(qū)域劃分Fig.1 Area partition of sea-sky background image
目前,國內外有許多學者對海天線的檢測算法進行了研究.Zou等[1]提取了邊緣的梯度方向信息進行辨識,提出了一種基于剪切波變換的海天線檢測算法;梁世花等[2]將Seam Carving原理應用到圖像中來檢測最高能量線,并通過計算圖像中各點的梯度幅值,搜索最高能量線以實現海天線檢測;王博等[3]首先計算梯度顯著性以增強海天線的直線特征,然后采用區(qū)域生長的方法實現了海天線的檢測;安博文等[4]在進行梯度運算后使用Ostu閾值分割獲取海天邊緣信息,并根據Hough變換檢測海天線;蘇麗等[5]針對全景海域圖像海天線呈近似圓形的特點,提出了一種基于分形維數和改進Hough圓變換的全景海天線提取方法;董宇星等[6]采用Canny算子檢測邊緣結合Hough變換檢測海天線,但是Canny算子易受海面水波浪紋影響,檢測效果不佳;Tang等[7]提出了一種基于Radon變換的海天線檢測方法;Wang等[8]使用Sobel算子計算出列方向上梯度的極大極小值,再用RANSAC方法對這些點進行直線擬合,實現海天線檢測.上述算法大多是利用梯度特征計算來實現海天線的提取,但是由于海面環(huán)境極其復雜,云層、復雜背景、海面水花、水波浪紋都會對圖像梯度形成干擾,造成檢測結果的偏差.
本工作提出的基于結構森林算子和Hough變換的海天線檢測方法可以有效地剔除云層、浪紋等對復雜海天背景下海天線檢測的邊緣干擾,實現高魯棒性、高準確性.
圖像濾波是一種圖像增強技術,其目的是改善后續(xù)的邊緣檢測、分割等處理效果.濾波算法可以分為銳化和平滑兩種,其中銳化算法是經高通濾波,保留圖像的高頻部分(在頻域中一幅圖像的高頻部分代表了圖像的細節(jié)、紋理信息),因此銳化算法使得圖像的細節(jié)增強,提高了分辨率.平滑算法是經低通濾波,使圖像低頻部分不受影響(在圖像頻域中低頻部分代表了圖像的輪廓信息),故使用平滑算法可以降低圖像分辨率,模糊細節(jié)紋理,較好地保留邊緣.
本工作通過用高斯平滑濾波對??毡尘皥D像進行預處理,目的是降低圖像分辨率,減少云層、海面水花浪紋等細節(jié)干擾邊緣,從而較好地保留邊界信息.
高斯平滑濾波器是根據高斯函數的形狀來選擇權值的線性平滑濾波器,實際應用較為廣泛.在圖像處理領域中,2維零均值離散高斯函數常用作平滑濾波器(見圖2),
式中:u,v為圖像中的橫向、縱向像素值;σ為正態(tài)分布的標準偏差,在2維空間中式(1)生成的曲面的等高線是從中心開始呈正態(tài)分布的同心圓.
圖2 2維高斯函數分布Fig.2 2D Gaussian function distribution
高斯平滑濾波器的每個像素的值都是周圍相鄰像素值的加權平均,原始像素的值有最大的高斯分布值,權重最大;相鄰像素距離原始像素越遠,其權重越小.這樣進行模糊處理比其他的均衡模糊濾波器能更好地保留邊緣效果.
設對于M×N的圖像{f(i,j)}和m×n的模板{w(s,t)},在圖像的任意一點(x,y),濾波器的響應為濾波器系數與由該濾波器包圍的圖像像素的乘積之和:
式中,m=2a+1,n=2b+1,通常取a=b且a為正整數.
高斯卷積過程如圖3所示,其中σ=1,高斯核為5×5時權重矩陣w(s,t)與原始圖像f(x,y)卷積,得到輸出平滑圖像G(x,y),
圖3 高斯卷積核卷積過程Fig.3 Gaussian kernel convolution process
2.1 結構森林快速邊緣檢測
結構森林邊緣檢測的核心為隨機決策森林的訓練.先通過訓練一個隨機決策森林,再向已完成訓練的決策模型輸入x∈X(其中x為像素塊,X為由x組成的一幅圖像)后得到對應的分類結果y∈Y.
2.1.1 訓練決策森林
對于單棵樹ft(x),給定訓練集合Sk?X×Y,根據信息增益(Ij)最大原則確定節(jié)點分離函數,
式中,H(S)為香農熵,py為訓練數據Sj中帶有標簽y的概率.
單顆決策樹容易出現不穩(wěn)定和過擬合的情況[9],通過訓練多棵不相關的樹組合成森林Ft(x)可以較好地解決這個問題.輸入隨機抽樣的像素塊x或特征類別作為訓練數據可以提高決策森林的準確率(見圖4).
圖4 決策森林訓練模型Fig.4 Decision forest training model
2.1.2 隨機森林結構化輸出
由于標簽集合Y中的每個結構標簽y有一定的相似度,故根據式(6)和(7),信息增益Ij依靠度量結構標簽y的相似度來計算,這樣會導致不易定義Ij.為了方便計算Ij,給定節(jié)點j,將該節(jié)點上的所有標簽y離散化映射到離散化標簽c,便可用c代替y計算Ij:
本工作采用文獻[9]的二階映射將標簽y的相似度離散化映射到離散化標簽c.先定義映射π:y →z將具有標簽y的像素塊編碼為二元向量,在Z中計算z之間的歐氏距離以區(qū)分具有相似標簽y的像素塊是否屬于同一分割.為了降低計算量,在Z中取m維特征形成低維映射π:φ:Y →Z.再定義π:φ:Z →C,采用主成分分析(principal component analysis, PCA)降維量化,根據z所在的具體象限給定具體標簽C(1,2,…,k),這里取k=2.
本工作采用BSDS500數據集[10]作為訓練數據.通過上述過程訓練結構森林邊緣檢測模型后輸入RGB圖像進行邊緣檢測.
2.2 二值化
完成訓練和邊緣檢測后,本工作設定閾值為90,將圖像上的像素點的灰度值二值化為0和255,使整個圖像呈現出黑白效果,得到仍然可以反映圖像整體和局部特征的二值化圖像.
2.3 概率Hough變換擬合直線
Hough變換利用圖像的全局特征連接特定形狀的邊緣形成連續(xù)平滑的邊緣,通過將原圖像上的點映射到用于累加的參數空間,實現對已知解析式曲線的識別.由于利用了圖像全局特性,因此受噪聲和邊界間斷的影響小,魯棒性好,常用于直線識別.這條直線在圖像中是一系列離散點的集合,故可通過離散極坐標公式表示:
由于每個像素點的坐標值I(x,y)是已知的,因此根據像素點坐標(x,y)的值繪制每個(ρ,θ)值就完成了圖像笛卡爾坐標系統(tǒng)到極坐標Hough空間系統(tǒng)的轉換(見圖5).
輸入已經檢測到的邊緣點,假設點(x0,y0),(x1,y1),(x2,y2)為3個輸入的邊緣點.極坐標下,在極徑極角平面中繪制出所有經過這3個點的直線,得到一條正弦曲線(見圖6).由點-正弦曲線對偶性質得若干條曲線相交于(x0,y0),則(x0,y0)對應的(ρθ0,θ0)所表示的直線ρθ0=xcosθ0+y sinθ0由越多輸入邊緣點組成,這個方程所表示的直線為目標直線的可能性就越大.可以通過設置直線上點的閾值來定義多少條曲線交于一點才認為是檢測到了目標直線.
圖5 Hough變換原理Fig.5 Hough transform principle
圖6 概率Hough變換直線檢測原理Fig.6 Linear detection principle of probabilistic Hough transform
本算法流程框架如圖7所示.
圖7 算法框架Fig.7 Algorithm framework
實驗視頻序列由無人水面艇機載設備采集,經圖像金字塔降采樣后圖像尺寸為640×480.本工作使用的調試平臺為VS2013+OpenCV3.0.0,系統(tǒng)環(huán)境為Windows 8,內存大小為8 GB.
圖8和9給出了一些異常復雜干擾背景下的樣本圖像實驗結果,如水面水紋浪花影響、海界線附近高紋理樓宇/山、光照、水面反射、霧天影響等.圖8中,(a)為原圖;(b)為未經高斯濾波使用Canny算子得到的邊緣圖,可以看到干擾信息嚴重;(c)為經高斯濾波后使用Canny算子得到的邊緣圖,可以看出經濾波后邊緣干擾顯著降低,但還是存在較為嚴重的干擾邊緣; (d)為經高斯濾波后結構化隨機森林邊緣檢測得到的輪廓圖,對比(c)可看出干擾邊緣明顯降低,只剩下極少的干擾;(e)為在(d)的基礎上二值化的結果,可以看出干擾信息大多被剔除,只剩下海天線輪廓和海天線上的一些目標輪廓;(f)為經概率Hough變換擬合海天線后的結果,顯示已精確檢測到海天線.
圖8 復雜環(huán)境下海天線檢測結果Fig.8 Detection results of sea-sky-line in complex environments
圖9 復雜環(huán)境下海天線檢測結果對比Fig.9 Comparisons of sea-sky line detection results in complex environment
對于分辨率為640×480的圖像,本算法平均運算時間為87 ms/幀,具有很好的實時性.實驗結果表明,本算法能較好地檢測出海天線,且實時性和魯棒性較好,準確度較高,能夠有效應對各種復雜環(huán)境和復雜天候影響.圖9為更多典型復雜干擾背景下的樣本圖像實驗結果,并與Canny原理海天線檢測算法[6]以及RANSAC直線擬合方法[8]進行了對比,本算法均取得良好的檢測效果.
本工作提出了一種結合結構化隨機森林快速邊緣檢測和概率Hough變換的海天線檢測方法.本算法首先通過高斯濾波進行預處理,然后使用已完成訓練的結構化隨機森林給每個像素貼上邊緣標簽,再將結果二值化,最后通過累計概率Hough變換擬合出海天線.實驗結果表明,本算法快速高效,實時性好,能夠較好地檢測出海天線,且魯棒性較好,準確度較高,能夠有效應對各種復雜環(huán)境和復雜天候影響,為下一步的目標檢測和識別提供了良好的基礎.
[1]ZOu R B,SHI C C.A sea-sky line identifcation algorithm based on shearlets for infrared image[J].Advanced Materials Research,2014,846/847:1031-1035.
[2]梁世花,吳巍,李波,等.基于Seam Carving的海天線檢測算法[J].紅外與激光工程,2013,42(10): 2817-2821.
[3]王博,蘇玉民,萬磊,等.基于梯度顯著性的水面無人艇的海天線檢測方法[J].光學學報,2016(5): 66-75.
[4]安博文,胡春暖,劉杰,等.基于Hough變換的海天線檢測算法研究[J].紅外技術,2015,37(3): 196-199.
[5]蘇麗,龐迪.全景海域圖像中的圓形海天線提取[J].光學精密工程,2015,23(11):3279-3288.
[6]董宇星,劉偉寧,王爽.基于Canny原理海天線檢測算法研究[J].計算機測量與控制,2010,18(3): 697-698;702.
[7]TANG D,SuN G,WANG D,et al.Research on infrared ship detection method in sea-sky background[J].Proceedings of SPIE—The International Society for Optical Engineering,2013, 8907(2):165-189.
[8]WANG H,WEI Z,WANG S,et al.A vision-based obstacle detection system for unmanned surface vehicle[C]//Proceeding of the 2011 IEEE Conference on Robotics,Automation and Mechatronics.2011:364-369.
[9]DOLL′AR P,ZITNICK C L.Structured forests for fast edge detection[C]//IEEE International Conference on Computer Vision(ICCV).2013:1841-1848.
[10]ZHu S J,ZHAO J Y,GuO L J.Rival penalized image segmentation[J].Journal of Multimedia, 2014,95:736.
Sea-sky line detection based on structured forests edge detection and Hough transform
XU Liangyu1,MA Lukun1,XIE Xie1,PENG Yan1, PENG Yanqing2,CUI Jianxiang1
(1.School of Mechatronic Engineering and Automation,Shanghai University,Shanghai 200072,China; 2.College of Sciences,PLA University of Science and Technology,Nanjing 210007,China)
The sea-sky line is an important feature in the sea-surface environment image, and detection of the sea-sky line is essential in dividing the sea and sky,and detecting the coastline area and objects.This paper provides a method to detect the sea-sky line using structured forests edge detection and Hough transform.The method uses a Gaussian low-pass flter to reduce the infuence of regional textures such as wave texture and light refection.A trained structured random decision forest is then used to label each pixel, and binarize it to determine whether it belongs to an edge or not.Hough transform is used to ft the sea-sky line more accurately.Experimental results show that this method can neglect clutter edge,greatly improve edge detection,and efectively extract sea-sky lines from a complicated sea-sky background with high robustness and accuracy.
sea-sky line detection;structured random forest;decision tree;edge detection; Hough transform
TP 242.62
A
1007-2861(2017)01-0047-09
10.3969/j.issn.1007-2861.2016.07.018
2016-12-29
國家自然科學基金資助項目(61403245);上海市自然科學基金資助項目(13ZR1454300);上海市科委能力建設資助項目(14500500400)
彭艷(1982—),女,副教授,研究方向為無人艇導航和控制及其總體技術.E-mail:pengyan@shu.edu.cn