李方旭,金久才,張 杰,,李立剛,戴永壽
(1.中國(guó)石油大學(xué)(華東)海洋與空間信息學(xué)院,山東 青島 266580;2.自然資源部第一海洋研究所海洋物理與遙感研究室,山東 青島 266061)
無(wú)人船作為一種新型無(wú)人水面平臺(tái),具有體積小、機(jī)動(dòng)性強(qiáng)、不易被敵軍船只發(fā)現(xiàn)的優(yōu)點(diǎn),逐漸成為對(duì)敵偵察、海上維權(quán)的重要作戰(zhàn)手段[1-2]。自主避障是無(wú)人船在超視距、遙控?zé)o效狀態(tài)下安全航行的關(guān)鍵。無(wú)人船只有準(zhǔn)確檢測(cè)周圍海域中的障礙物,如礁石、浮標(biāo)、船舶等,才能自主規(guī)劃出安全、最優(yōu)的避碰路徑。
目前,無(wú)人船用避障檢測(cè)手段以激光雷達(dá)[3]、航海雷達(dá)[4]為主,分別用于檢測(cè)定位近、遠(yuǎn)距離的海面障礙物。從無(wú)人船安全角度考慮,快速準(zhǔn)確定位近距離障礙物目標(biāo)則更為重要,但價(jià)格適中的激光雷達(dá)激光線數(shù)少,角分辨率低,易漏檢體積較小的障礙物,如橡皮艇、礁石等。美國(guó)太空與海戰(zhàn)系統(tǒng)中心的Larson J.等[5]將雙目視覺(jué)引入了無(wú)人船避障檢測(cè)領(lǐng)域中,僅通過(guò)處理、匹配船載雙目相機(jī)拍攝的海上可見(jiàn)光圖像,即可測(cè)得前方障礙物的位置信息,具有實(shí)施成本低、角分辨率高的優(yōu)點(diǎn)。雙目視覺(jué)因此成為近年來(lái)無(wú)人船避障檢測(cè)領(lǐng)域中的研究熱點(diǎn)。Shin B.S.等[6]以海天線為界對(duì)雙目視覺(jué)三維重建出的點(diǎn)云數(shù)據(jù)進(jìn)行海平面擬合,根據(jù)點(diǎn)云相對(duì)于海平面的高度、數(shù)量信息檢測(cè)定位海面障礙物。Sinisterra A.J.等[7]首先采用基于在線學(xué)習(xí)機(jī)制的方法檢測(cè)單目圖像中的障礙物,然后匹配雙目圖像對(duì)應(yīng)點(diǎn),根據(jù)成像幾何關(guān)系測(cè)得障礙物的位置信息。立體匹配是雙目視覺(jué)海面障礙物測(cè)距的關(guān)鍵。多數(shù)學(xué)者匹配雙目圖像對(duì)應(yīng)點(diǎn)時(shí)采用了基于區(qū)域的立體匹配方法[6-8]。然而,無(wú)人船體的不規(guī)則晃動(dòng),增大了雙目圖像間海面障礙物的尺度、亮度差異,易導(dǎo)致此類方法匹配出現(xiàn)歧義,降低雙目視覺(jué)測(cè)距的準(zhǔn)確性。
為提高立體匹配的準(zhǔn)確性,本文提出一種改進(jìn)的AKAZE 特征匹配方法,通過(guò)提取、匹配非線性尺度空間中障礙物的輪廓角點(diǎn),可以在尺度、亮度存在差異的條件下準(zhǔn)確測(cè)得海面障礙物的位置信息。利用本文所提方法研發(fā)出一種具有防水、防鹽等性能的適用于無(wú)人船海上工作環(huán)境的寬基線雙目視覺(jué)系統(tǒng)SV-100。在青島市膠州灣開(kāi)展了該系統(tǒng)的測(cè)試驗(yàn)證實(shí)驗(yàn),結(jié)果表明該系統(tǒng)在100 m 內(nèi)的測(cè)距誤差小于6 m。
本章介紹一種改進(jìn)的AKAZE 特征匹配方法。給定校正后的雙目圖像,基于非線性擴(kuò)散濾波原理,采用快速顯示擴(kuò)散方案構(gòu)建非線性尺度空間,保護(hù)障礙物輪廓結(jié)構(gòu)并使得特征提取具有尺度不變性。根據(jù)被測(cè)像素與圖像域、尺度域中鄰域圓像素的灰度差提取障礙物輪廓角點(diǎn),抑制波浪邊緣、海面反光等背景干擾因素。最后,采用FREAK 算法計(jì)算特征描述向量,依據(jù)極線約束準(zhǔn)則搜索雙目圖像的匹配點(diǎn)?;谏鲜龇椒鞒蹋蓽?zhǔn)確提取、匹配障礙物的輪廓角點(diǎn),從而為后續(xù)雙目視覺(jué)障礙物測(cè)距提供準(zhǔn)確的視差數(shù)據(jù)。
受風(fēng)、浪、流等因素的影響,雙目相機(jī)會(huì)隨無(wú)人船船體發(fā)生不規(guī)則晃動(dòng),造成雙目圖像間海面障礙物的尺度、亮度存在差異,易造成匹配歧義。SIFT,SURF,AKAZE 等算法于尺度空間中提取具有尺度不變性的特征點(diǎn),提高了立體匹配的魯棒性[9]。AKAZE算法基于非線性濾波和快速顯式擴(kuò)散方案構(gòu)建非線性尺度空間,使圖像濾波自適應(yīng)于邊緣結(jié)構(gòu),保護(hù)了圖像的局部精度[10]。但該算法比較提取特征點(diǎn)時(shí)需計(jì)算尺度空間中每一像素的歸一化黑塞矩陣行列式值,計(jì)算復(fù)雜度高,且劃定的像素鄰域范圍小,造成特征提取隨機(jī)性強(qiáng),受波浪邊緣、海面反光等背景因素影響大。
針對(duì)上述問(wèn)題,本文將FAST 算法[11]提取角點(diǎn)的原理應(yīng)用在非線性尺度空間特征點(diǎn)的提取中。通過(guò)提取輪廓角點(diǎn),以減少干擾點(diǎn)的數(shù)量。
1)分別提取不同尺度圖像中的特征點(diǎn),即先于圖像域中提取特征點(diǎn)。計(jì)算被測(cè)像素與所在尺度圖像中半徑為3 鄰域圓上16 個(gè)像素的灰度差,統(tǒng)計(jì)灰度差大于閾值εk的像素?cái)?shù)量N,若N 大于鄰域圓上像素總數(shù)量的3/4,則判定被測(cè)像素為該尺度圖像中的特征點(diǎn),像素?cái)?shù)量N 的計(jì)算公式如下:
式中:S 為以被測(cè)像素為圓心劃定的半徑為3 鄰域圓上像素的集合;x 為鄰域圓上的像素;p 為被測(cè)像素;I 為像素的灰度。
2)為保證提取出的特征點(diǎn)具有尺度不變性,需再于尺度域中提取特征點(diǎn)。將提取出的每一尺度圖像的特征點(diǎn)分別與上下相鄰尺度圖像半徑為3 鄰域圓像素的灰度進(jìn)行比較,如圖1 所示。
針對(duì)相鄰尺度圖像與被測(cè)圖像分辨率不同的情況,需將鄰域圓半徑乘以兩圖像分辨率間的比例系數(shù)后,再進(jìn)行灰度比較。若各鄰域圓上與被測(cè)點(diǎn)灰度差大于閾值εk的像素?cái)?shù)量超過(guò)該圓上像素總量的3/4,則保留該特征點(diǎn)。
為增強(qiáng)后續(xù)特征點(diǎn)描述向量間的差異性以提高匹配的準(zhǔn)確率,本文方法對(duì)提取出的特征點(diǎn)群進(jìn)行采樣,僅提取出圖像局部區(qū)域中分值最高的特征點(diǎn)。根據(jù)尺度參數(shù)將尺度空間中的特征點(diǎn)重映射至原圖像,采用非極大值抑制方法去除大小為3×3 像素的圖像塊中除分值最大的特征點(diǎn)外的其他特征點(diǎn),分值V 的計(jì)算公式如下:
式中:Pk為特征點(diǎn);Sbright為特征點(diǎn)鄰域圓上大于特征點(diǎn)灰度的像素集合;Sdark為特征點(diǎn)鄰域圓上小于特征點(diǎn)灰度的像素集合,特征點(diǎn)鄰域圓的半徑為3。
提取出尺度空間特征點(diǎn)后,采用FREAK 算法計(jì)算特征描述向量。該算法仿生人類視網(wǎng)膜中神經(jīng)元細(xì)胞的分布模式,以鄰域內(nèi)相關(guān)性較小像素的灰度差為依據(jù)描述特征點(diǎn),能夠提高描述向量間的差異性[12]。具體流程如下:
1)以特征點(diǎn)為中心對(duì)鄰域像素進(jìn)行采樣。采樣點(diǎn)共43 個(gè),由內(nèi)向外分布為6 層,如圖2 所示。黑色圓心為采樣點(diǎn),灰色圓圈為采樣點(diǎn)感受野。
圖 2 采樣點(diǎn)分布情況Fig.2 Distribution of sampling points
2)完成采樣后,對(duì)感受野進(jìn)行高斯濾波。根據(jù)采樣點(diǎn)灰度信息確定特征點(diǎn)方向。如圖3 所示。FREAK算法從43 個(gè)采樣點(diǎn)組成的903 個(gè)采樣點(diǎn)對(duì)中選取了45 個(gè)中心對(duì)稱的采樣點(diǎn)對(duì)用以計(jì)算特征點(diǎn)的方向 Od,計(jì)算公式如下:
式中:G 為采樣點(diǎn)對(duì)集合;M 為采樣點(diǎn)對(duì)數(shù);Por1和Por2分別為采樣點(diǎn)對(duì)中2 個(gè)采樣點(diǎn)的坐標(biāo);I 為高斯濾波后采樣點(diǎn)的灰度。
3)FREAK 算法于903 個(gè)采樣點(diǎn)對(duì)中篩選出512 個(gè)相關(guān)性較小的采樣點(diǎn)用于計(jì)算二進(jìn)制描述向量:
圖 3 用于計(jì)算特征點(diǎn)方向的采樣點(diǎn)對(duì)Fig.3 Sample point pairs for calculating the direction of the feature
式中:Pα為采樣點(diǎn)對(duì);N 為二進(jìn)制特征描述向量的維數(shù);函數(shù)T 定義如下:
式中:Pαr1和Pαr2代表采樣點(diǎn)對(duì)中2 個(gè)采樣點(diǎn)的坐標(biāo)。
相比于多幅單目圖像的配準(zhǔn),雙目圖像特征點(diǎn)的匹配可利用固有的極線約束關(guān)系來(lái)縮小特征點(diǎn)的搜索范圍。對(duì)于平行校正后的雙目圖像而言,僅需沿著行方向自左向右搜索匹配代價(jià)最小的點(diǎn)即可,由于FREAK 算法計(jì)算得到的描述向量為二進(jìn)制類型,所以采用漢明距離作為匹配代價(jià)的計(jì)算公式:
式中:d 為兩特征描述向量間的漢明距離,Ai和Bi分別為兩特征向量對(duì)應(yīng)位的數(shù)值,為異或運(yùn)算符?;谏鲜隽鞒?,以左目圖像為參考圖像,右目圖像為匹配圖像,完成特征點(diǎn)匹配后,再以右目圖像為參考圖像,匹配左目圖像。若2 次特征匹配結(jié)果相同,則保留匹配對(duì),進(jìn)而確定雙目圖像特征點(diǎn)間的一一對(duì)應(yīng)關(guān)系。
由于雙目視覺(jué)的測(cè)距精度與左、右相機(jī)間的基線長(zhǎng)度成正相關(guān),因此綜合考慮擬研發(fā)無(wú)人船的內(nèi)部安裝條件,船寬為2.5 m,設(shè)計(jì)搭建了基線長(zhǎng)度為1.8 m的雙目視覺(jué)系統(tǒng),并命名為SV-100,如圖4 框線內(nèi)所示。該系統(tǒng)主要由1 280×960 分辨率的CMOS 工業(yè)面陣相機(jī)、8 mm 焦距的鏡頭、IP66 等級(jí)的室外防護(hù)罩、三腳支架及工控機(jī)組成。
圖 4 雙目視覺(jué)系統(tǒng)Fig.4 Stereo vision system
其中,工業(yè)相機(jī)的數(shù)據(jù)接口為千兆以太網(wǎng)口GigE,可實(shí)時(shí)向工控機(jī)傳輸照片流,保證雙目圖像的同步采集。室外防護(hù)罩具備防水、放鹽的功能,可保障雙目視覺(jué)系統(tǒng)在復(fù)雜海況下正常工作。為準(zhǔn)確獲取無(wú)人船前方的海面障礙物的位置信息,以規(guī)劃出安全、最優(yōu)的避障行駛路徑,本系統(tǒng)海面障礙物測(cè)距的流程如圖5 所示。
圖 5 無(wú)人船雙目視覺(jué)系統(tǒng)測(cè)距流程圖Fig.5 Flow chart of obstacle ranging for USVs based on the stereo vision system
1)采用Bought 算法極線校正船載左、右目相機(jī)采集的雙目圖像,實(shí)現(xiàn)對(duì)應(yīng)點(diǎn)行對(duì)準(zhǔn);
2)采樣改進(jìn)的AKAZE 特征匹配方法提取、匹配雙目圖像中海面障礙物的輪廓角點(diǎn),并計(jì)算對(duì)應(yīng)點(diǎn)視差;
3)根據(jù)成像幾何關(guān)系測(cè)得障礙物的位置信息。該方法基于Opencv 3.1.0 開(kāi)源計(jì)算機(jī)視覺(jué)庫(kù)實(shí)現(xiàn),編程語(yǔ)言為C++,運(yùn)行環(huán)境為Windows 7。
為驗(yàn)證SV-100 雙目視覺(jué)系統(tǒng)海面障礙物測(cè)距的準(zhǔn)確性,開(kāi)展實(shí)驗(yàn)測(cè)試。實(shí)驗(yàn)期間,采用德國(guó)Continental AG 公司研發(fā)的ARS408 型毫米波雷達(dá)作為SV-100 測(cè)距準(zhǔn)確性的驗(yàn)證手段。ARS408 型毫米波雷達(dá)是一種緊湊型V 波段77 GHZ 的長(zhǎng)距傳感器,探測(cè)范圍可達(dá)250 m,測(cè)距誤差小于0.4 m,具有靈敏度高、性能穩(wěn)定的優(yōu)點(diǎn)。ARS408 安裝于雙目相機(jī)中間,在與雙目相機(jī)的公共視場(chǎng)內(nèi),獲取前面障礙物的位置信息。
實(shí)驗(yàn)場(chǎng)景中,選定了一個(gè)浮標(biāo)為被測(cè)障礙物,驅(qū)動(dòng)實(shí)驗(yàn)船駛行駛至距離浮標(biāo)約30 m,60 m,80 m 及100 m 處停機(jī),控制雙目視覺(jué)系統(tǒng)、毫米波雷達(dá)獲取上述位點(diǎn)浮標(biāo)的距離測(cè)量數(shù)據(jù)。以毫米波雷達(dá)數(shù)據(jù)為基準(zhǔn),驗(yàn)證雙目視覺(jué)系統(tǒng)于不同范圍內(nèi)的測(cè)距誤差。雙目相機(jī)采集的可見(jiàn)光圖像如圖6 所示。
圖 6 浮標(biāo)的雙目圖像Fig.6 Binocular images of the buoy
經(jīng)定點(diǎn)測(cè)量,上述位點(diǎn)浮標(biāo)的點(diǎn)云分布情況如圖7 所示。雙目視覺(jué)重建出的點(diǎn)云中干擾點(diǎn)數(shù)量少,原因在于經(jīng)過(guò)改進(jìn)后的AKAZE 特征匹配方法通過(guò)提取、匹配具有視覺(jué)意義的輪廓角點(diǎn),有效抑制了波浪邊緣的干擾。隨著測(cè)距范圍的增大,障礙物于圖像中的占像素比例逐漸減小,部分特征點(diǎn)的匹配中出了歧義,導(dǎo)致重建的點(diǎn)跡分布不規(guī)則。但從整體上看,在100 m 范圍內(nèi),雙目視覺(jué)系統(tǒng)與毫米波雷達(dá)測(cè)得的點(diǎn)云僅存在較小的位置差異。
圖 7 障礙物點(diǎn)跡分布情況Fig.7 Distribution of the obstacle point cloud
以毫米波雷達(dá)與雙目視覺(jué)系統(tǒng)測(cè)得點(diǎn)云質(zhì)心間的縱向距離為參考依據(jù),繪制雙目視覺(jué)系統(tǒng)的測(cè)距誤差曲線,如圖8 所示。
圖 8 雙目視覺(jué)系統(tǒng)測(cè)距誤差曲線Fig.8 Ranging error curve of the stereo vision system
雙目視覺(jué)系統(tǒng)于60 m 處的測(cè)距誤差為2.04 m,誤差占比為3.4%,于100 m 處的誤差為5.65 m,誤差占比為5.7%。經(jīng)與毫米波雷達(dá)數(shù)據(jù)比對(duì),說(shuō)明雙目視覺(jué)系統(tǒng)于100 m 范圍內(nèi)障礙物測(cè)距的準(zhǔn)確性高,能夠?yàn)闊o(wú)人船避碰路徑規(guī)劃提高準(zhǔn)確的障礙物位置信息。
針對(duì)無(wú)人船體不規(guī)則晃動(dòng),導(dǎo)致雙目視覺(jué)海面障礙物測(cè)距過(guò)程中立體匹配出現(xiàn)歧義的問(wèn)題,提出一種改進(jìn)的AKAZE 特征匹配方法。通過(guò)提取、匹配非線性尺度空間中障礙物的輪廓角點(diǎn),從而可準(zhǔn)確測(cè)得海面障礙物的位置信息。利用本文所提方法研發(fā)出一種具有防水、防鹽等性能的適用于無(wú)人船海上工作環(huán)境的寬基線雙目視覺(jué)系統(tǒng)SV-100。測(cè)試實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)在100 m 內(nèi)的測(cè)距誤差小于6 m,能夠?yàn)闊o(wú)人船避碰路徑規(guī)劃提供較為準(zhǔn)確的障礙物位置信息。