戴文文 曾慶軍 趙 強(qiáng) 朱志宇 劉維亭 郭雨青
(江蘇科技大學(xué)電子信息學(xué)院 鎮(zhèn)江 212003)
AUV 由于其攜帶的能源有限,航行時(shí)間以及航行距離受到限制,所以AUV 水下回收對接已經(jīng)成為了世界各國研究的重點(diǎn)。目前美國、英國、德國、日本等國家對于AUV 水下回收對接的研究較為成熟,國內(nèi)在AUV 方面的研究主要集中于中國科學(xué)院沈陽自動(dòng)化研究所、浙江大學(xué)以及哈爾濱工程大學(xué)等單位。各國科學(xué)家根據(jù)不同AUV 的特點(diǎn)以及不同的對接目標(biāo),設(shè)計(jì)了不同的AUV 回收對接系統(tǒng),大致可分為五類,1)水下箱(籠)式對接;2)機(jī)械手或載體輔助式對接;3)繩索或桿類引導(dǎo)對接;4)平臺阻攔索式對接;5)喇叭口式引導(dǎo)對接[1]。在AUV 回收對接過程中,對AUV 的前景視場進(jìn)行三維重建,能夠提高末端導(dǎo)航定位的精度,也能為實(shí)時(shí)路徑規(guī)劃提供環(huán)境信息。本文采用雙目攝像機(jī)作為三維重建的傳感器。
目前采用雙目作為環(huán)境探測器的AUV 不多,在國外,日本東京大學(xué)2005年將Twin-Burger2AUV與雙目立體視覺結(jié)合,檢測和識別水中的浮游生物[2]。美國斯坦福大學(xué)ARL 實(shí)驗(yàn)室與MBARI(Monterey Bay Aquayium Research Institute)聯(lián)合開發(fā)的一個(gè)半自治水下機(jī)器人OTTER(Ocean Technology Testbed for Engineering Resaeach),可用作各種水下自治技術(shù)的開發(fā)和驗(yàn)證試驗(yàn)平臺[3~4]。澳大利亞國立大學(xué)開發(fā)的AUV 用于海底探索和監(jiān)測,它由兩個(gè)防水艙中安裝著兩臺攝像機(jī),組成一個(gè)雙目視覺系統(tǒng)[5]。在國內(nèi),哈爾濱工程大學(xué)水下機(jī)器人技術(shù)重點(diǎn)實(shí)驗(yàn)室研制的WL-3 AUV,采用雙目攝像機(jī)作為傳感器,對接近距離段采用雙目視覺導(dǎo)引,實(shí)現(xiàn)光視覺導(dǎo)航定位。哈爾濱工程大學(xué)的姜言清等人研究了基于雙目視覺的AUV 回收對接關(guān)鍵技術(shù),將光視覺用于對接階段的導(dǎo)航,有效地提高了導(dǎo)航精度,保證了導(dǎo)航信息的平穩(wěn)輸出[1]。AUV三維重建實(shí)質(zhì)是水下三維重建,Brandou V[6]等利用立體視覺系統(tǒng)IRIS,對水下同一物體拍攝多組照片,利用圖像分割算法實(shí)現(xiàn)三維重建。Yau T[7]等用多個(gè)攝像機(jī)利用傳統(tǒng)PMVS 算法實(shí)現(xiàn)了對水下物體的三維重建,取得了很高的精度,但是其成本較高且使用的環(huán)境受到限制。R.Ferreira[8]等利用等效焦距的方法來補(bǔ)償水下折射對水下成像的影響。國內(nèi)哈爾濱工程大學(xué)的吳云峰[9]將空氣中的三維重建算法應(yīng)用于水下,對水下折射以及散射未進(jìn)行充分考慮,效果不是很理想。哈爾濱工業(yè)大學(xué)的喬金鶴[10]分析了水下成像的特點(diǎn),并對角點(diǎn)檢測以及三維重建方法進(jìn)行了研究,由于場景的限制,檢測出了很多的無用角點(diǎn),增加了計(jì)算的成本。
本文結(jié)合自主研發(fā)的全驅(qū)動(dòng)AUV,配備雙目攝像機(jī)進(jìn)行水下三維重建,采用改進(jìn)的CENSUS 變換與最小生成樹結(jié)合的立體匹配算法實(shí)現(xiàn)水下雙目圖像的立體匹配,利用圖像梯度強(qiáng)度以及顏色信息融合的CENSUS 變換計(jì)算匹配代價(jià),基于最小生成樹算法進(jìn)行代價(jià)聚合,提高匹配效率以及精度,最后配合亞像素精化實(shí)現(xiàn)視差優(yōu)化并通過實(shí)驗(yàn)驗(yàn)證算法有效性。
本文使用自主研發(fā)的水下自主機(jī)器人實(shí)現(xiàn)AUV 的水下回收對接。AUV 回收對接過程,包括以下幾個(gè)階段,如圖1所示。
圖1 AUV回收對接過程示意圖
第一個(gè)階段為直線歸位階段,這個(gè)過程重點(diǎn)在于利用超短基線提供的相對位置、姿態(tài)信息來調(diào)整AUV 與對接裝置的位置,使得在消耗較短對接中軸線距離的情況下,將AUV 航行至中軸線上,同時(shí)要考慮到AUV 的姿態(tài)盡可能地與中軸線一致,利于進(jìn)一步實(shí)時(shí)對接。第二個(gè)階段為直線跟蹤階段,這個(gè)階段是指AUV 重心進(jìn)入中軸線開始直到距離對接口3m~5m 的階段。在這個(gè)階段要保證AUV 沿中軸線航行,且艏向角指向?qū)涌凇.?dāng)AUV 到達(dá)對接就位點(diǎn)時(shí),進(jìn)入下一階段,AUV 根據(jù)對接裝置口的燈光進(jìn)行姿態(tài)校準(zhǔn),調(diào)整艏向指向?qū)涌?,保持合適的航姿進(jìn)行直線運(yùn)動(dòng),直到運(yùn)動(dòng)到慣性對接點(diǎn)處,關(guān)閉推進(jìn)器依靠慣性進(jìn)入對接口。
本文AUV 前景視場雙目三維重建的過程如圖2 所示,AUV 在回收對接過程中,左右攝像機(jī)分別采集前景圖像,通過一系列圖像預(yù)處理過程消除或緩解水對光成像的影響,接著將左右攝像機(jī)拍攝到的對應(yīng)圖像進(jìn)行匹配,得到對應(yīng)點(diǎn)的視差,形成視差圖,繼而根據(jù)攝像機(jī)標(biāo)定得到的內(nèi)外參數(shù)算出場景深度D,以及圖像中各點(diǎn)的三維坐標(biāo)[11],最后根據(jù)三維坐標(biāo)進(jìn)行三維重建。
圖2 前景視場雙目三維重建過程圖
由于本文的研究對象為AUV,其工作環(huán)境有其特殊性,在水下AUV 前景視場的三維重建需要考慮水對光成像的影響。本文對水下圖像進(jìn)行預(yù)處理將其恢復(fù)成空氣圖像,然后再運(yùn)用空氣中雙目處理的方法進(jìn)行立體匹配以及三維重建。運(yùn)用此方法使得立體匹配步驟簡化,不需考慮水下成像的特殊條件。立體匹配的過程大致分為四個(gè)階段:代價(jià)計(jì)算、代價(jià)聚合、視差計(jì)算、視差優(yōu)化等[12]。針對水下圖像弱紋理區(qū)域以及重復(fù)紋理區(qū)域較多的問題,本文采用改進(jìn)的CENSUS 變換立體匹配代價(jià)算法,結(jié)合最小生成樹代價(jià)聚合方法實(shí)現(xiàn)視差計(jì)算,精度相對較高,運(yùn)算速度較快,滿足AUV 回收對接的要求。
本文算法首先采用改進(jìn)的CENSUS 變換實(shí)現(xiàn)代價(jià)計(jì)算,實(shí)現(xiàn)弱紋理以及重復(fù)紋理區(qū)域代價(jià)更好的計(jì)算,再采用基于最小生成樹的立體匹配代價(jià)聚合算法進(jìn)行代價(jià)聚合,該算法可以在全圖建立像素間的關(guān)系,使得像素間的關(guān)系一目了然,不再受到窗口的約束,可以極大減少代價(jià)聚合所花費(fèi)的時(shí)間,使得立體匹配精度得到提高,接著采用優(yōu)勝者全選(Winner-Takes-All,WTA)算法計(jì)算得到代價(jià)最小的視差值,最后采用亞像素精化對視差進(jìn)行平滑優(yōu)化,實(shí)現(xiàn)最終視差圖的輸出。算法流程圖如圖3所示。
圖3 立體匹配算法流程圖
因?yàn)樗聢D像弱紋理以及重復(fù)紋理區(qū)域較多,這些區(qū)域像素值分布均勻,傳統(tǒng)的CENSUS 變換極易受中心像素點(diǎn)的影響,在弱紋理及重復(fù)紋理區(qū)域效果不理想,所以采用改進(jìn)的CENSUS 變換實(shí)現(xiàn)立體匹配代價(jià)計(jì)算。此方法將某一像素點(diǎn)的梯度強(qiáng)度與顏色信息進(jìn)行融合后的結(jié)果作為該像素點(diǎn)的像素值,改進(jìn)的CENSUS 變換,對窗口中每一個(gè)像素與中心像素進(jìn)行比較,大于中心像素即為0,否則為1,從而得到一個(gè)二進(jìn)制系列,分別對雙目圖像的左圖和右圖計(jì)算每個(gè)像素的匹配代價(jià)。
梯度強(qiáng)度與顏色信息融合函數(shù)如下式所示:
其中n是m的領(lǐng)域點(diǎn),?x,?y分別表示圖像在x和y方向上的梯度,Ii(m),Ii(n)分別表示雙目左右圖像對應(yīng)點(diǎn)的i通道值。
CENSUS變化公式如下:
其中,p為中心像素點(diǎn),q為窗口內(nèi)其余像素點(diǎn),Np為以p為中心的矩形窗口,B(p) 表示改進(jìn)CENSUS 變換后得到的比特串,ζ表示將各位按位連接,k(p)表示中心像素點(diǎn)梯度強(qiáng)度與顏色信息融合值,k(q)表示窗口內(nèi)除中心像素點(diǎn)外梯度強(qiáng)度與顏色信息融合值。
當(dāng)視差為d時(shí)計(jì)算漢明距離得到初始立體匹配代價(jià)。漢明距離計(jì)算公式為
其中,CCTL、CCTR分別為左右圖像經(jīng)改進(jìn)CENSUS變換后的圖像。所以改進(jìn)CENSUS 變換的匹配代價(jià)計(jì)算模型為
其中,λ為歸一化常數(shù)。
基于最小生成樹的匹配代價(jià)聚合算法首先將圖像表示成無向圖G(V,E),其中V是所有圖像像素節(jié)點(diǎn),E為連接節(jié)點(diǎn)的邊,然后通過KRUSKAL算法,生成最小生成樹。通過最小生成樹中權(quán)重的大小定義圖像像素之間的聯(lián)系,經(jīng)過自頂向下以及自底向上兩次遍歷就能得到全圖所有像素的聚合值,天然建立全圖像素間的關(guān)系,提高像素代價(jià)計(jì)算的準(zhǔn)確度。采用三通道顏色及梯度特征計(jì)算最小生成樹的邊權(quán)值,公式如下:
其中q是p的領(lǐng)域點(diǎn),Ii(p),Ii(q)分別表示左右圖像對應(yīng)點(diǎn)的i 通道值,?x,?y分別表示圖像在x和y方向上的梯度。相似度r決定了圖像中的一個(gè)像素對另一個(gè)像素的聚合貢獻(xiàn)度權(quán)重:
其中α為調(diào)節(jié)像素相似度的常數(shù)。
根據(jù)最小生成樹的樹結(jié)構(gòu)可得像素聚合值為[13]:
然后根據(jù)WTA 算法,采用優(yōu)勝者全選方式,選取對應(yīng)匹配代價(jià)最小的視差作為最終的視差。
為了減少視差選取過程中引起的視差不連續(xù)性,運(yùn)用了一種基于式(9)二次多項(xiàng)式插值的亞像素估計(jì)算法。由于采用WAT 算法選取的視差都為整數(shù),是離散的,導(dǎo)致視差圖不連續(xù)。為了消除這種影響,本文使用二次多項(xiàng)式逼近三個(gè)離散視差候選點(diǎn)之間的視差:d、d_ 和d+ 。d是WTA 算法所選取的視差值,d_=d-1,d+=d+1。
亞像素視差增強(qiáng)采用二次多項(xiàng)式插值。經(jīng)過亞像素細(xì)化將基于改進(jìn)的CENSUS 變換的算法得到的視差圖進(jìn)行了連續(xù)化以及精細(xì)化。
本文在操作系統(tǒng)為Windows10、CPU 為酷睿i5、處理器為2.20GHz,系統(tǒng)內(nèi)存為8G 的普通PC上,運(yùn)用VS2017配合OpenCV視覺庫實(shí)現(xiàn)了立體匹配算法。
為了驗(yàn)證算法的有效性,本文設(shè)置了三組對比實(shí)驗(yàn),采用Middlebury 網(wǎng)站的立體匹配算法評價(jià)方法進(jìn)行測評。采用網(wǎng)站提供的Teddy,Tsukuba以及cones 三對圖像進(jìn)行對比實(shí)驗(yàn),在VS2017 中進(jìn)行改進(jìn)的CENSUS 變換與最小生成樹結(jié)合的立體匹配算法進(jìn)行實(shí)驗(yàn)。圖4(a)為三幅圖像的左視圖,(b)為三對圖像的真實(shí)視差圖,(c)為基于顏色與梯度融合結(jié)合高通濾波器算法(GRD+GF)效果圖,(d)為最小生成樹算法(MST)效果圖,(e)為傳統(tǒng)CENSUS 變換結(jié)合最小生成樹算法(CEN+MST)的效果圖,(f)為本文算法效果圖。
圖4 Middlebury網(wǎng)站圖像在不同算法下的視差圖
由圖4 可以看出,本文所提算法在深度不連續(xù)的區(qū)域以及弱紋理、重復(fù)紋理區(qū)域均能得到較好的匹配結(jié)果,在遮擋處的匹配率也較高,本文算法在視覺效果上效果更好。
圖像匹配質(zhì)量的好壞采用誤差匹配率以及平均誤差率進(jìn)行定量分析,表1 表示非遮擋區(qū)域(non)、深度不連續(xù)區(qū)域(dis)和全部區(qū)域(all)的誤匹配率。
從表1 數(shù)據(jù)可知,GRD+GF 算法的平均誤差率為8.16%,MST 算法的平均誤差率為7.66%,CEN+MST 算法的平均誤差率為6.69%,本文算法的平均誤差率為6.02%,通過分析可以看出本文算法較GRD+GF 算法、MST 算法和CEN+MST 算法平均誤差率分別降低了2.08 個(gè)百分點(diǎn)、1.64 個(gè)百分點(diǎn)和0.67個(gè)百分點(diǎn)。雖然本文算法在處理Teddy圖像時(shí)誤差率增高,但是從整體看,誤差匹配率在四種方 法中是最低的。
表1 Middlebury網(wǎng)站圖像視差圖評價(jià)結(jié)果(單位:%)
4.2.1 圖像采集
在AUV 前端裝載雙目攝像機(jī)視覺傳感器,以實(shí)現(xiàn)AUV 前景視場的三維重建。為了驗(yàn)證算法的有效性,在游泳池進(jìn)行了圖像采集實(shí)驗(yàn),圖5(a)為在游泳池運(yùn)行AUV采集2560*720分辨率水下雙目圖像的實(shí)驗(yàn)圖,(b)為裝載在AUV 前端經(jīng)過防水密封處理的雙目攝像機(jī)實(shí)物圖。表2 為實(shí)驗(yàn)所用雙目攝像機(jī)參數(shù)。
圖5 泳池實(shí)驗(yàn)圖
表2 雙目攝像機(jī)參數(shù)
4.2.2 立體匹配算法實(shí)驗(yàn)
采用上小節(jié)拍攝得到的雙目圖像進(jìn)行立體匹配算法實(shí)驗(yàn)與分析。圖6 為經(jīng)過圖像預(yù)處理后的2560*720 分辨率的雙目水底圖像,(a)為左圖,(b)為右圖。
圖6 預(yù)處理后雙目圖像
在VS2017 中對雙目圖像運(yùn)行改進(jìn)的CENSUS變換與最小生成樹結(jié)合的立體匹配算法進(jìn)行實(shí)驗(yàn)。
圖7 為真實(shí)水下圖片進(jìn)行處理后得到的視差圖,(a)為GRD+GF 算法效果圖,(b)為MST 算法效果圖,(c)為CEN+MST 算法效果圖(d)為本文算法所運(yùn)行得到的效果圖,由圖7 可以看出在真實(shí)圖片下,無紋理區(qū)域以及重復(fù)紋理較多的情況下,前兩種傳統(tǒng)的立體匹配算法無法得到有效的視差圖,MST 算法得到的視差圖有空洞,不連續(xù),在弱紋理區(qū)域精度較差,而本文算法下的視差圖中視差連續(xù),在弱紋理區(qū)域得到較好結(jié)果,有利于后續(xù)深度圖的計(jì)算以及三維重建。視差圖中背景部分黑色是因?yàn)閿z像頭有120°視角,導(dǎo)致左圖中一部分在右圖中無法找到對應(yīng)點(diǎn),所以置為最大值。
圖7 真實(shí)場景圖像不同立體匹配算法結(jié)果對比
前景視場三維重建作為AUV 回收對接中的重要一環(huán),能夠提高末端導(dǎo)航定位的精度。本文針對AUV 自主回收對接水下環(huán)境,對水下三維重建中的立體匹配步驟進(jìn)行了研究。采用改進(jìn)的CENSUS 變換與最小生成樹相結(jié)合的立體匹配算法對雙目圖像進(jìn)行立體匹配,該算法以圖像的梯度強(qiáng)度及顏色信息融合作為CENSUS 變換的依據(jù)計(jì)算匹配代價(jià),解決水下圖像弱紋理以及重復(fù)紋理較多的問題,結(jié)合最小生成樹匹配代價(jià)聚合算法得到視差圖,算法運(yùn)算量小,運(yùn)行速度快,效率高。最后運(yùn)用VS2017 軟件對Middlebury 標(biāo)準(zhǔn)圖像集進(jìn)行立體匹配實(shí)驗(yàn),相較于GRD+GF 算法、MST 算法和CEN+MST 算法平均誤差率分別降低了2.08 個(gè)百分點(diǎn)、1.64個(gè)百分點(diǎn)和0.67個(gè)百分點(diǎn),同時(shí)還在真實(shí)水下雙目圖像上驗(yàn)證了本文算法針對水下圖像弱紋理區(qū)域以及重復(fù)紋理區(qū)域較多問題的有效性。下一步將在本文立體匹配結(jié)果基礎(chǔ)上實(shí)現(xiàn)AUV 前景視場的三維重建。