徐從營(yíng),裴承艷
(中國(guó)船舶重工集團(tuán)公司第七一〇研究所,湖北宜昌443003)
UUV避碰聲吶在障礙物探測(cè)過程中會(huì)受到各種水下環(huán)境噪聲的影響,使所形成的聲吶圖像的質(zhì)量變差,障礙物圖像模糊不清,障礙物目標(biāo)的邊界信息不明顯,給自主障礙物檢測(cè)識(shí)別帶來極大的困難[1]。如何能讓UUV感知水下障礙物準(zhǔn)確的輪廓、位置信息,是UUV做出避碰決策的重要前提[2]。
目前在使用閾值分割算法進(jìn)行障礙物檢測(cè)時(shí),為應(yīng)對(duì)多種環(huán)境因素干擾,實(shí)現(xiàn)在不同環(huán)境下的障礙物自主檢測(cè),圖像分割閾值選取非常困難[3-4]。由于避碰聲吶常受到淺水區(qū)域復(fù)雜地形、環(huán)境噪聲、近水面多途效應(yīng)等的影響,探測(cè)信息中噪聲與偽目標(biāo)成分較大[5],閾值選取過小,會(huì)把部分環(huán)境噪聲干擾當(dāng)成障礙物,使障礙物區(qū)域擴(kuò)大,導(dǎo)致需警率較高,從而使UUV頻繁執(zhí)行避碰決策,影響任務(wù)完成質(zhì)量。而閾值選取過大,則會(huì)造成障礙物區(qū)域檢測(cè)不完整,障礙物區(qū)域容易形成空洞,甚至出現(xiàn)障礙物漏檢的情況,影響UUV的航行安全。同時(shí),由于聲吶圖像質(zhì)量較低,圖像中存在較大噪聲時(shí),使用固定閾值進(jìn)行分割會(huì)造成大量的噪聲點(diǎn),影響后期障礙物的準(zhǔn)確檢測(cè)。因此本文對(duì)避碰聲吶障礙物檢測(cè)方法中的聲吶圖像閾值化算法進(jìn)行了改進(jìn),提出了基于分區(qū)自適應(yīng)的雙閾值避碰聲吶圖像障礙物檢測(cè)算法,可很好地應(yīng)對(duì)避碰聲吶圖像中存在的噪聲并能準(zhǔn)確提取障礙物目標(biāo)區(qū)域。使用837B避碰聲吶采集的湖試數(shù)據(jù)進(jìn)行了驗(yàn)證,表明了算法的有效性。
最大類間方差法[6](Otsu算法)是一種常用的自適應(yīng)閾值確定方法,由日本學(xué)者大津(Nobuyuki Otsu)于1979年提出。在使用該算法進(jìn)行自適應(yīng)閾值確定時(shí),一般會(huì)根據(jù)圖像或數(shù)據(jù)的某些特性建立統(tǒng)計(jì)直方圖,然后將直方圖分為兩類,采用遍歷的方法得到使類間方差最大的閾值。該方法計(jì)算準(zhǔn)確并且高效,選取的閾值較為理想。
假設(shè)聲吶圖像中灰度值最高的像素值為m,則可將該圖像分為1~m級(jí),假設(shè)計(jì)算結(jié)果為i的像素?cái)?shù)為ni,則聲吶圖像不為零的像素總數(shù)為
各灰度值的概率為
再用T將其分成兩組C0={1~T}和C1={(T+1)~m},各組產(chǎn)生的概率如下
式中:w0、w1、u0、u1分別為C0、C1的概率及聲吶圖像的平均值;為整體圖像的灰度平均值;u是閾值為T時(shí)的灰度平均值,所以全部采樣的灰度平均值為
兩組間的方差可經(jīng)下式求出:
從1~m改變T,求使上式為最大T,即求maxδ2(T)時(shí)的T值,將其作為最佳閾值。
在實(shí)際使用時(shí),為降低算法計(jì)算量,提高計(jì)算速度,本文對(duì)聲吶圖像使用128級(jí)直方圖進(jìn)行了統(tǒng)計(jì)。算法的計(jì)算復(fù)雜度可由O(256)2降低為O(128)2,計(jì)算規(guī)模為原來的1/4,并且計(jì)算結(jié)果對(duì)檢測(cè)效果無明顯影響。
假設(shè)d(x,y)避碰聲吶圖像,使用Otsu算法對(duì)避碰聲吶圖像進(jìn)行直方圖統(tǒng)計(jì)并計(jì)算二值化閾值dth。傳統(tǒng)目標(biāo)閾值分割算法使用單一閾值對(duì)圖像進(jìn)行二值化,容易造成目標(biāo)漏檢或誤檢,因此本文采用Canny邊緣檢測(cè)算法中雙閾值化檢測(cè)的思想,提出了雙閾值目標(biāo)提取算法,即設(shè)置高低閾值分別為dth1、dth2,其中dth1>dth2(一般取dth1=1.2dth,dth2=0.2dth)。 假設(shè)d[i,j]為差值圖像坐標(biāo)[i,j]處的像素值,如果d[i,j]>dth1,則將其認(rèn)為目標(biāo)點(diǎn),使用這種方法得到的只是圖像灰度變化比較明顯的區(qū)域,分割出的目標(biāo)區(qū)域并不完整,目標(biāo)區(qū)域偏小。為最大程度地分割出目標(biāo),采用遞歸邊界跟蹤方法,將八鄰域區(qū)域內(nèi)d[i,j]>dth2的點(diǎn)判定為目標(biāo)區(qū)域并保留。
圖1(a)為原始參考圖像,圖2(b)-(d)為對(duì)避碰聲吶圖像分別使用本文提出的雙閾值檢測(cè)算法計(jì)算得到的低閾值、高閾值及雙閾值進(jìn)行閾值化的檢測(cè)結(jié)果。從圖像可以看出,低閾值檢測(cè)結(jié)果目標(biāo)區(qū)域偏大,部分回波較弱的區(qū)域被當(dāng)做障礙物區(qū)域,且含有較多的噪聲干擾點(diǎn)。而高閾值檢測(cè)結(jié)果障礙物區(qū)域不完整,只有高亮度回波區(qū)域被分割出來。本文算法提取的障礙物區(qū)域則相對(duì)完整且邊緣平滑,抑制了圖像中的噪聲,僅存在少量孤立的噪聲點(diǎn)。為進(jìn)一步抑制圖像噪聲的影響,本文對(duì)雙閾值算法進(jìn)行進(jìn)一步改進(jìn),使用分區(qū)自適應(yīng)閾值計(jì)算方法增強(qiáng)抑制圖像噪聲的能力。
圖1 單雙閾值目標(biāo)檢測(cè)效果Fig.1 Target detection results of single/double-threshold
避碰聲吶在水下進(jìn)行障礙物探測(cè)時(shí),受環(huán)境噪聲及障礙物分布情況影響,聲吶圖像中必然存在亮度不均勻分布的情況。當(dāng)一幅圖像中存在亮度差異時(shí),對(duì)整幅圖像使用同一對(duì)高低閾值可能會(huì)導(dǎo)致出現(xiàn)障礙物漏檢或錯(cuò)檢的現(xiàn)象。因此本節(jié)在雙閾值檢測(cè)算法的基礎(chǔ)上,提出了一種基于圖像分塊的自適應(yīng)雙閾值障礙物檢測(cè)算法。即將避碰聲吶圖像均勻分為相同大小的圖像塊,對(duì)每個(gè)圖像塊使用Otsu算法確定該區(qū)域二值化的高低閾值。每個(gè)圖像塊計(jì)算的閾值更能反映其所在區(qū)域的圖像灰度變化,檢測(cè)結(jié)果既保留了障礙物目標(biāo)區(qū)域的局部細(xì)節(jié),又可使用該區(qū)域計(jì)算出的高閾值判斷有無障礙物,如果高閾值較低,則認(rèn)為該區(qū)域沒有障礙物,可較好的去除孤立的噪聲點(diǎn)。圖2為分區(qū)自適應(yīng)雙閾值目標(biāo)檢測(cè)算法的檢測(cè)結(jié)果。
圖2(a)為原始圖像,圖2(b)為雙閾值檢測(cè)結(jié)果,圖2(c)為分區(qū)檢測(cè)閾值,圖2(d)為分區(qū)雙閾值檢測(cè)結(jié)果。從圖2(b)中可以看出,雙閾值檢測(cè)雖然可以檢測(cè)出大部分目標(biāo)區(qū)域,但對(duì)噪聲抑制能力不足,在檢測(cè)結(jié)果中仍然會(huì)存在少量的噪聲點(diǎn)。分區(qū)自適應(yīng)閾值檢測(cè)算法將圖像分為相等的圖像塊并計(jì)算該區(qū)域的檢測(cè)閾值,由于噪聲點(diǎn)數(shù)量在分塊區(qū)域中所占比例極少,因此計(jì)算出的檢測(cè)閾值會(huì)很小,如圖2(c)所示。對(duì)每個(gè)區(qū)域設(shè)置合適的閾值范圍,當(dāng)?shù)陀陂撝捣秶鷷r(shí)認(rèn)為該區(qū)域?yàn)楸尘皡^(qū)域,從而過濾掉噪聲點(diǎn)。從圖(d)中即可看出圖像中的噪聲點(diǎn)被全部去除,并且由于分區(qū)域閾值更能體現(xiàn)出該區(qū)域的亮度變化,檢測(cè)出的目標(biāo)區(qū)域邊緣更為平滑,障礙物區(qū)域的完整性未受太大影響。
圖2 分區(qū)自適應(yīng)雙閾值目標(biāo)檢測(cè)效果Fig.2 Target detection results of partition adaptive double-threshold
膨脹和腐蝕這兩種操作是形態(tài)學(xué)處理的基礎(chǔ),腐蝕是一種消除邊界點(diǎn),使邊界向內(nèi)部收縮的過程,膨脹則是將與物體接觸的所有背景點(diǎn)合并到該物體中,使邊界向外部擴(kuò)張的過程。先膨脹后腐蝕的過程稱為閉運(yùn)算。該方法只適用于二值圖像,可用來填充物體內(nèi)細(xì)小孔洞、連接鄰近物體、平滑其邊界,同時(shí)并不明顯改變二值圖像面積。在進(jìn)行目標(biāo)閾值檢測(cè)算法中,常用來對(duì)檢測(cè)的目標(biāo)區(qū)域內(nèi)部孔洞進(jìn)行填充[7-8]。并且,與腐蝕和膨脹不同,閉運(yùn)算對(duì)于結(jié)構(gòu)元素的平移不具有不變性。對(duì)圖2(d)的目標(biāo)檢測(cè)結(jié)果進(jìn)行1次形態(tài)學(xué)閉運(yùn)算后計(jì)算結(jié)果如圖3所示。
由圖3可以看出,經(jīng)過形態(tài)學(xué)閉運(yùn)算處理后,聲吶障礙物分割圖像中存在的較小的孔洞及像素面積較小的區(qū)域被填充或合并到臨近的目標(biāo)區(qū)域之中,較小的縫隙及斷裂的邊緣也被連接上,最終得到的障礙物區(qū)域面積未發(fā)生明顯變化并且邊緣較為平滑。但同時(shí)可以從圖中看出,該方法無法填充目標(biāo)內(nèi)部面積較大的孔洞,這些孔洞一部分為封閉式,一部分為開放式。對(duì)于目標(biāo)內(nèi)部封閉式的孔洞,我們使用區(qū)域連通性分析的方法對(duì)其進(jìn)行填充,處理效果如圖4所示。
圖3 形態(tài)學(xué)濾波Fig.3 Morphological filtering
圖4 目標(biāo)區(qū)域孔洞填充Fig.4 Hole filling of target area
對(duì)形態(tài)學(xué)濾波后的二值圖像使用二值連通成分標(biāo)記的序貫算法分別對(duì)目標(biāo)及背景區(qū)域進(jìn)行連通性分析,得到若干目標(biāo)及背景連通區(qū)域。如果背景連通區(qū)域被目標(biāo)連通區(qū)域包含,則可認(rèn)為該背景連通區(qū)域?yàn)槟繕?biāo)孔洞,對(duì)其進(jìn)行填充。從圖4三幅檢測(cè)結(jié)果可以看出,目標(biāo)區(qū)域內(nèi)部封閉的孔洞全部被填充上。
實(shí)驗(yàn)數(shù)據(jù)來自于某湖進(jìn)行的UUV避碰試驗(yàn),將避碰聲吶相關(guān)試驗(yàn)原始數(shù)據(jù)提取出來,驗(yàn)證提出的算法。避碰目標(biāo)選擇水中小島、大壩、水下崖壁等障礙物,以及使用UUV水面航行時(shí)波浪干擾圖像測(cè)試算法抗干擾能力。UUV采用837B型多波束聲吶探測(cè)障礙物,聲吶量程設(shè)置為300 m,最大刷新頻率為2 Hz,障礙物數(shù)據(jù)處理計(jì)算機(jī)模塊為CD-6010,CPU主頻1.4 GHz,內(nèi)存2 G,安裝 Windows XPE操作系統(tǒng),軟件開發(fā)平臺(tái)為 Visual Studio 2005。UUV所裝配聲吶及測(cè)試環(huán)境如圖5所示。
圖5 避碰聲吶及測(cè)試環(huán)境Fig.5 Obstacle avoidance sonar and test environment
試驗(yàn)分別選取水中小島、大壩、水下崖壁等障礙物以及水面大風(fēng)浪條件下典型航行實(shí)驗(yàn)數(shù)據(jù)各100張圖片進(jìn)行測(cè)試,各障礙物典型圖像如圖6所示。
圖6 典型干擾物圖像Fig.6 Images of typical interferences
使用本文算法分別對(duì)不同類型的障礙物或干擾圖像進(jìn)行處理,處理參數(shù)如表1所示。
表1 試驗(yàn)參數(shù)Table 1 Test parameters
dth表示使用Otsu算法獲取的分割閾值,dth1和dth2分別表示高低閾值。截?cái)嚅撝当硎井?dāng)dth≤60時(shí)判斷該區(qū)域沒有障礙物。截?cái)嚅撝颠x取方法為人工選擇聲吶圖像中非目標(biāo)區(qū)域,計(jì)算該區(qū)域內(nèi)非零圖像像素值均值,對(duì)水面、水下等不同航行環(huán)境下的數(shù)據(jù)進(jìn)行統(tǒng)計(jì),最終得出一個(gè)較為合理截?cái)嚅撝怠?/p>
圖7為使用本文算法對(duì)典型障礙物圖像的處理結(jié)果,表2為對(duì)每類典型障礙圖像處理統(tǒng)計(jì)結(jié)果。對(duì)每一張?zhí)幚斫Y(jié)果進(jìn)行人工比對(duì)確認(rèn),統(tǒng)計(jì)正確識(shí)別、噪聲誤識(shí)別的圖像數(shù)量。
圖7 典型干擾物圖像處理結(jié)果Fig.7 Image processing results of typical interferences
表2 試驗(yàn)結(jié)果Table 2 Test results
從圖7及表2中可以看出,本文算法對(duì)不同類型的障礙物均可自適應(yīng)選擇合適的閾值,準(zhǔn)確提取出障礙物的完整輪廓信息,實(shí)現(xiàn)障礙物的準(zhǔn)確識(shí)別,對(duì)水面航行干擾具有較強(qiáng)的抑制能力,可顯著降低障礙物誤判的概率,所探測(cè)出障礙物外輪廓和方位也可反映實(shí)際障礙物的輪廓和方位。障礙物圖像平均處理時(shí)間小于400 ms,滿足實(shí)時(shí)性處理要求。
針對(duì)水下環(huán)境中UUV避碰聲吶探測(cè)障礙物過程中自主選擇分割閾值進(jìn)行障礙物檢測(cè)問題,提出了基于分區(qū)自適應(yīng)閾值的障礙物檢測(cè)算法。該算法以O(shè)tsu算法為基礎(chǔ),借鑒Canny邊緣檢測(cè)算法中雙閾值化檢測(cè)的思想,提出了雙閾值障礙物檢測(cè)算法,并根據(jù)障礙物聲吶回波圖像亮度不均勻的特點(diǎn),提出了圖像分塊的思想對(duì)算法進(jìn)行進(jìn)一步改進(jìn),提高了算法對(duì)環(huán)境噪聲的抑制能力,顯著降低了障礙物誤判的概率。湖試數(shù)據(jù)驗(yàn)證表明了本文算法對(duì)不同障礙物目標(biāo)檢測(cè)的有效性。