莊蘇鋒,吉勇,屠大維,張旭
(上海大學(xué)機(jī)電工程與自動(dòng)化學(xué)院,上海 200444)
正如人類(lèi)利用兩只眼睛獲取場(chǎng)景二維、三維視覺(jué)信息才能在客觀世界中行動(dòng)和作業(yè)自如一樣,機(jī)器人在環(huán)境中行動(dòng)、開(kāi)展目標(biāo)識(shí)別和精細(xì)作業(yè),同樣需要場(chǎng)景及目標(biāo)的RGB 二維彩色圖像及3D 點(diǎn)云信息。目前市面上出現(xiàn)的微軟Kinect 及Intel 英特爾R200、R461 等產(chǎn)品具有同時(shí)獲取RGB 及3D 點(diǎn)云的能力,是一種RGB-D 相機(jī),可以滿足空氣中機(jī)器人應(yīng)用需要。水下機(jī)器人同樣需要RGB-D 視覺(jué)傳感器,以完成水下目標(biāo)識(shí)別及精細(xì)作業(yè)任務(wù),但至今為止鮮有水下RGB-D 相機(jī)商用產(chǎn)品報(bào)道。
目前,空氣中的基于雙目立體視覺(jué)技術(shù)的三維測(cè)量技術(shù)已經(jīng)趨于成熟[1-2]。但是,水下環(huán)境的特殊性給水下RGB-D 相機(jī)研制帶來(lái)了困難。首先,由于水介質(zhì)與水中懸浮顆粒的吸收和散射特性,使得水下圖像比空氣中的圖像存在更嚴(yán)重的顏色失真、對(duì)比度低、細(xì)節(jié)特征模糊等問(wèn)題[3-4]。國(guó)內(nèi)外研究者為此開(kāi)展相關(guān)研究,并取得了一定的效果。CHIANG J Y 等[3]提出了一種波長(zhǎng)補(bǔ)償和去模糊的水下圖像增強(qiáng)方法,但該方法無(wú)法處理降質(zhì)明顯的圖像。CARLEVARIS B N 等[5]根據(jù)不同波長(zhǎng)光線在水下衰減速率不同的特性,利用水下圖像三個(gè)顏色通道的衰減差異進(jìn)行場(chǎng)景深度估計(jì),進(jìn)而對(duì)圖像進(jìn)行散射光消除提高圖像質(zhì)量。HITAM M S 等[6]提出一種混合對(duì)比度受限的自適應(yīng)直方圖均衡化顏色模型對(duì)水下圖像的可視性差問(wèn)題進(jìn)行改善,該方法雖然提高了水下圖像的對(duì)比度,減少了噪聲和偽影,但對(duì)圖像顏色失真問(wèn)題的改善不明顯。王永鑫等[7]提出一種基于迭代直方圖均衡化水下圖像增強(qiáng)算法,來(lái)提升水下圖像的視覺(jué)對(duì)比度。各種圖像增強(qiáng)技術(shù)的研究,為水下立體視覺(jué)提供了高質(zhì)量的圖像保障。此外,工業(yè)相機(jī)應(yīng)用于水下場(chǎng)景時(shí),相機(jī)須封裝封在防水殼中,存在的折射現(xiàn)象使得光路彎曲,傳統(tǒng)的相機(jī)模型失效。為此,KWON Y H 等[8]深入研究了折射現(xiàn)象,并提出構(gòu)建水下折射模型才是解決水下三維重建問(wèn)題的根本解決方法。AGRAWAL A 等[9]提出一種多層平面折射幾何理論,用數(shù)學(xué)公式對(duì)光線在多種介質(zhì)中的折射傳播進(jìn)行準(zhǔn)確的描述。張文明等[10]提出一種基于非平行雙目視覺(jué)系統(tǒng)的轉(zhuǎn)化條件和轉(zhuǎn)化模型,將水下圖像轉(zhuǎn)化為攝像機(jī)與目標(biāo)間無(wú)水存在的一般空氣圖像后再利用空氣中的方法進(jìn)行處理。WU X 等[11]提出了一種基于幾何關(guān)系將水下圖像轉(zhuǎn)化為空中圖像的圖像校正方法以消除折射的影響。
雖然水下RGB-D 技術(shù)的研究還不多見(jiàn),但以上研究都為水下RGB-D 相機(jī)作了技術(shù)鋪墊。本文設(shè)計(jì)了一款基于雙目立體視覺(jué)的水下RGB-D 相機(jī),并對(duì)相關(guān)技術(shù)開(kāi)展研究。主要包括:考慮水下多層折射效應(yīng),建立水下相機(jī)成像及雙目立體成像模型;將水下圖像轉(zhuǎn)換為空氣中的圖像來(lái)消除折射對(duì)重建精度的影響,進(jìn)行對(duì)應(yīng)點(diǎn)像素匹配,重建3D 點(diǎn)云;采用基于顏色校正和暗原色先驗(yàn)的水下圖像增強(qiáng)算法對(duì)左、右水下圖像進(jìn)行圖像增強(qiáng)處理;最后,構(gòu)建對(duì)準(zhǔn)疊加模型將3D 點(diǎn)云和二維彩色數(shù)據(jù)疊加融合,獲得水下RGB-D 圖像數(shù)據(jù)。
研究的水下RGB-D 相機(jī)以雙目立體視覺(jué)為基礎(chǔ),本節(jié)對(duì)水下相機(jī)成像模型和水下雙目立體相機(jī)的成像過(guò)程進(jìn)行分析。
當(dāng)相機(jī)應(yīng)用于水下時(shí),需要將它封裝于防水密封艙體中,艙體前端具有玻璃窗口,光線的傳播依次經(jīng)過(guò)“水-玻璃-空氣”三種介質(zhì),并最終在相機(jī)像平面成像。然而,由于三者折射率不同,光線在不同介質(zhì)的分界面處發(fā)生折射,使得水下相機(jī)成像的物像關(guān)系不滿足空氣中小孔成像原理??紤]到窗口玻璃厚度較小且兩面平行,同時(shí)相對(duì)于物距而言其折射影響可忽略不計(jì),故簡(jiǎn)化的模型如圖1 所示。
圖1 水下相機(jī)成像模型Fig.1 Underwater camera imaging model
水下目標(biāo)點(diǎn)(xwat,ywat,zwat)的成像光線經(jīng)過(guò)折射平面上一點(diǎn)(xref,yref,zref),發(fā)生折射后在像平面的坐標(biāo)為(u,v),其中入射光線和折射光線的方向向量分別表示為(αwat,βwat,γwat)與(αair,βair,γair),與分界面法向量之間的夾角分別為θwat和θair,f為相機(jī)焦距,d為折射平面到相機(jī)鏡頭中心的距離。由折射定律知
式中,nair與nwat分別為光線在空氣和水介質(zhì)中的折射率,水和空氣分界面法向量的方向向量在相機(jī)坐標(biāo)系下可表示為(0,0,1)T,根據(jù)入射光線、折射光線及分界面法向量之間的關(guān)系有
式中,k1和k2為
設(shè)(xu,yu)為相機(jī)坐標(biāo)系下像平面上某像素點(diǎn),與該點(diǎn)對(duì)應(yīng)的折射光線的方向向量為
設(shè)r=表示折射光線和分界面的交點(diǎn)與像平面像點(diǎn)之間的直線距離,結(jié)合式(2)和(4)可得入射光線方向向量和像點(diǎn)坐標(biāo)(xu,yu)的關(guān)系為
設(shè)在相機(jī)坐標(biāo)系下像點(diǎn)對(duì)應(yīng)的空間目標(biāo)點(diǎn)的坐標(biāo)為(xcam,ycam,zcam),其對(duì)應(yīng)光線在傳播過(guò)程中與水和空氣分界面的交點(diǎn)坐標(biāo)為(xref,yref,zref),則有
結(jié)合式(5)與(6)可求得像點(diǎn)與空間目標(biāo)點(diǎn)之間的關(guān)系為
設(shè)相機(jī)的外參矩陣為P,內(nèi)參矩陣為B,有
令n0=nair/nwat,結(jié)合式(7)和(8)可得水下相機(jī)成像模型
基于雙目立體視覺(jué)的水下RGB-D 相機(jī)的核心硬件由左、右相機(jī)組成(圖2)。不失一般性,設(shè)左、右相機(jī)的焦距為f,兩者的基線距離為B,兩者的光心連線平行于玻璃封裝窗,同時(shí)也平行于設(shè)定的坐標(biāo)系x軸。光心與封裝窗口的距離為d,空氣和水的折射率分別為n0、n1。設(shè)水中目標(biāo)點(diǎn)在左相機(jī)坐標(biāo)系下的坐標(biāo)為P(xcam,ycam,zcam)。它在左圖上的圖像坐標(biāo)為p(ulef,vlef),主點(diǎn)坐標(biāo)為(u0lef,v0lef)。在右圖上的圖像坐標(biāo)為p(urig,vrig),主點(diǎn)坐標(biāo)為(u0rig,v0rig)。像元尺寸為dX×dY。基于上述水下相機(jī)模型以及標(biāo)定參數(shù)中的兩個(gè)相機(jī)坐標(biāo)系之間的關(guān)系,可將左、右水下圖像進(jìn)行立體校正,使其符合行對(duì)齊原則[12]。水下雙目立體視覺(jué)模型如圖3 所示。
圖2 系統(tǒng)示意圖Fig.2 System Schematic
圖3 水下雙目視覺(jué)模型Fig.3 Underwater binocular vision model
此時(shí),相機(jī)坐標(biāo)系下的P點(diǎn)三維坐標(biāo)為
式中,(ulef-u0lef-urig+u0rig)·dX為像素點(diǎn)的視差值,獲取該值需進(jìn)行對(duì)應(yīng)點(diǎn)匹配。
基于像素的立體匹配過(guò)程即搜尋左、右圖像上的所有對(duì)應(yīng)點(diǎn),根據(jù)對(duì)應(yīng)點(diǎn)之間的位置偏差得到視差值。簡(jiǎn)言之,針對(duì)左圖像中的每個(gè)像素點(diǎn),沿著它在右圖像中的水平極線方向?qū)ふ遗c它互相匹配的像素點(diǎn)。但在實(shí)際進(jìn)行像素點(diǎn)匹配時(shí)會(huì)存在幾個(gè)問(wèn)題:首先,要保證兩個(gè)相機(jī)完全共面且參數(shù)一致是非常困難的,且計(jì)算過(guò)程中也會(huì)產(chǎn)生誤差累積,右圖的匹配點(diǎn)未必恰好在極線上(但肯定在極線附近);其次,單個(gè)像素點(diǎn)進(jìn)行比較魯棒性很差,很容易受到光照變化和視角不同的影響,所以搜索范圍需要適當(dāng)放寬。
因此,實(shí)際的詳細(xì)像素匹配過(guò)程為:在高精度的標(biāo)定數(shù)據(jù)基礎(chǔ)上,獲取校正后的標(biāo)準(zhǔn)圖像對(duì),此時(shí)對(duì)應(yīng)點(diǎn)應(yīng)在一條水平線附近。在左圖像中建立一個(gè)以待匹配點(diǎn)a(x,y)為中心位置的m×n窗口(圖中的紅色虛線框),在視差d范圍(d∈[dmin,dmax],且為整數(shù),大小由實(shí)際場(chǎng)景決定)內(nèi)以1 個(gè)像素的步長(zhǎng)水平移動(dòng)這個(gè)模板窗口穿過(guò)右側(cè)目標(biāo)圖像,在每個(gè)位置都進(jìn)行相似度檢測(cè)。當(dāng)該相似度達(dá)到極值時(shí),該位置可被認(rèn)為是匹配點(diǎn),此時(shí)的d值即為該點(diǎn)的視差值。匹配過(guò)程示意圖如圖4 所示。
圖4 基于像素的匹配過(guò)程示意圖Fig.4 Pixel-based matching process diagram
水分子、水下微粒和雜質(zhì)對(duì)光線的散射作用使得水下圖像存在模糊和對(duì)比度下降等問(wèn)題,同時(shí)水介質(zhì)對(duì)光線的吸收作用使得水下圖像的顏色失真。由于水下特殊的成像環(huán)境,采集到的圖像清晰度下降、顏色失真,影響到立體匹配過(guò)程中對(duì)應(yīng)點(diǎn)的匹配精度及RGB 圖像顏色的真實(shí)性。因此對(duì)于水下RGB-D 相機(jī)而言,水下圖像的增強(qiáng)處理尤為重要。本文根據(jù)水下圖像成像原理,結(jié)合Retinex 理論提出一種基于水下圖像衰減校正系數(shù)的顏色校正算法用于對(duì)水下圖像進(jìn)行顏色校正,再基于暗原色先驗(yàn)理論改進(jìn)了水下均勻光成分估計(jì)方法對(duì)水下圖像進(jìn)行清晰度增強(qiáng)處理。并選取幾種常用圖像增強(qiáng)算法作為對(duì)比,利用信息熵、Sift 特征點(diǎn)與Canny 特征點(diǎn)數(shù)量作為評(píng)價(jià)指標(biāo),以衡量不同算法的效果。
Retinex 理論解釋了傳統(tǒng)顏色視覺(jué)理論解釋不了的顏色的恒常性,且物體在不同光線的照射下其顏色保持恒定不變[13-14]。然而,光線在水下進(jìn)行傳播時(shí)受到水介質(zhì)吸收散射的影響會(huì)被衰減,衰減程度也隨著波長(zhǎng)發(fā)生變化,其中紅色光相比藍(lán)綠色光衰減的更為嚴(yán)重。為此,本文結(jié)合Retinex 理論提出了一種基于水下圖像衰減校正系數(shù)的顏色校正算法用于對(duì)水下圖像進(jìn)行顏色校正。根據(jù)水下圖像RGB 三通道均值求解衰減校正系數(shù),利用Retinex 算法結(jié)合衰減校正系數(shù)分別對(duì)RGB 三個(gè)顏色通道圖像的反射分量進(jìn)行求解,合成三通道反射分量輸出顏色校正后的水下圖像。算法流程如圖5 所示。
圖5 顏色校正算法流程Fig.5 Flow chart of color correction algorithm
JAFFE J S 在MCGLAMERY B L 建立的光學(xué)模型的基礎(chǔ)上進(jìn)行了拓展,將水下圖像成像時(shí)相機(jī)平面接受的光線表示為前向散射光、后向散射光以及目標(biāo)反射衰減光的相加的形式[15-16]。根據(jù)水下圖像成像模型,相機(jī)接收到的總光強(qiáng))可簡(jiǎn)化為
式中,u表示圖像中的像素點(diǎn);Ec(u)表示未經(jīng)衰減的水下目標(biāo)的反射光;c表示圖像的RGB 顏色通道;d(u)為相機(jī)到水下目標(biāo)的距離;a(c)為光線水下衰減系數(shù)(由于不同波長(zhǎng)光線在水下的衰減程度不同,衰減系數(shù)a(c)的值會(huì)隨著顏色通道的改變而變動(dòng))。
由于光線在水中的衰減程度因波長(zhǎng)而異,這使得水下成像圖像中三通道分量的強(qiáng)度大小存在很大差異。本文提取圖像R、G、B 三通道值,并計(jì)算均值,即
式中,M、N代表圖像大小,IR、IG、IB分別表示RGB 三通道圖像。根據(jù)RGB 像素均值確定大小居中的顏色通道作為參考通道,設(shè)置參考通道的衰減校正系數(shù)值為1,另外兩個(gè)顏色通道的衰減校正系數(shù)為其對(duì)應(yīng)通道像素均值與參考通道像素均值的比值。
根據(jù)Retinex 理論,圖像LF(i,j)可分解成反射圖像RLF(i,j)和入射圖像LLF(i,j)
Retinex 理論認(rèn)為入射光線是影響圖像整體亮度的主要因素,而圖像的本質(zhì)特征由物體的反射性質(zhì)決定。它便是根據(jù)原始圖像LF(i,j)估算出入射光線的照射分量LLF(i,j),然后去除入射光的影響,從而恢復(fù)水下目標(biāo)物體原有的顏色信息。通過(guò)將圖像轉(zhuǎn)換到對(duì)數(shù)域,將其入射分量與反射分量進(jìn)行分離,利用原始圖像減去入射分量從而得到圖像的反射分量,原理公式為
為了獲取圖像的入射分量信息,采用高斯濾波器對(duì)原始圖像低通濾波來(lái)實(shí)現(xiàn)對(duì)圖像照射分量的估計(jì)
式中,F(xiàn)(i,j)代表高斯函數(shù),?表示卷積運(yùn)算。
在對(duì)數(shù)域用原始圖像減去高斯濾波后的低頻分量即入射分量的估計(jì)值便可以得到圖像的高頻分量,考慮到水介質(zhì)對(duì)光線的衰減特性,此處引入衰減校正系數(shù),對(duì)所減去的低頻分量進(jìn)行衰減校正,最后對(duì)獲得的高頻分量進(jìn)行反對(duì)數(shù)變換得到圖像的反射分量為
式中,δ表示當(dāng)前通道圖像的衰減校正系數(shù)。最后利用自適應(yīng)直方圖均衡化算法對(duì)反射分量圖像進(jìn)行增強(qiáng)處理,進(jìn)一步改善圖像的細(xì)節(jié)信息和局部對(duì)比度。將獲取的水下圖像三通道分解后,結(jié)合求得的三通道圖像的衰減校正系數(shù),利用Retinex 算法分別求出RGB 三個(gè)顏色通道圖像的反射分量,并將求得的三通道反射分量進(jìn)行合成獲取顏色校正后的水下圖像。
根據(jù)Jaffe-McGlamery 水下圖像退化理論,將式(11)簡(jiǎn)化后可知,水下圖像的成像是一個(gè)線性過(guò)程,可描述為真實(shí)圖像信息與水體透射率的乘積,再加上水下背景散射光分量。具體為
式中,u為圖像中的像素點(diǎn);ILF(u)是待增強(qiáng)圖像;JLF(u)是增強(qiáng)處理后的清晰圖像;A是水下均勻光成分;tLF(u)是水體透射率。
水下圖像的增強(qiáng)處理過(guò)程其實(shí)就是對(duì)圖像JLF(u)的求解過(guò)程,可分為四步。
Step1:獲取水下暗原色圖像。由暗原色先驗(yàn)理論可知,任意彩色圖像中總會(huì)存在暗淡的局部圖像,且RGB 三通道中必存在一個(gè)低灰度值的顏色通道。水下圖像的暗原色可定義為
式中,JLFdark(u)表示圖像在像素點(diǎn)u處的暗通道值(值趨近于0);Ω(u)為濾波窗口(以像素u為中心的局部區(qū)域);JLFc表示輸入圖像的C顏色通道。Step2:估算水下均勻光成分。TAN R T 和FATTAL R 認(rèn)為,一幅圖像中最亮的點(diǎn)可很好的表示環(huán)境的背景光強(qiáng),其核心思想是選取原始圖像中光照強(qiáng)度最強(qiáng)點(diǎn)的像素值作為估算的環(huán)境均勻光成分[17-18]。然而,由于水環(huán)境的復(fù)雜性和水體的散射吸收特性,使得該方法無(wú)法準(zhǔn)確的估算出水下均勻光成分。為了獲得準(zhǔn)確性和魯棒性較好的水下均勻光成分估計(jì)值,本文提出利用衰減校正系數(shù)和暗原色先驗(yàn)相結(jié)合的方法對(duì)均勻光成分進(jìn)行估算。根據(jù)上文中求得的水下圖像衰減校正系數(shù),利用其比例關(guān)系對(duì)輸入的彩色圖像進(jìn)行灰度轉(zhuǎn)換。對(duì)轉(zhuǎn)換得到的灰度圖像中的每個(gè)像素點(diǎn)進(jìn)行局部區(qū)域的方差計(jì)算,生成灰度方差圖像。在輸入圖像中選擇在對(duì)應(yīng)暗原色圖中亮度大小前0.1%的像素點(diǎn)作為預(yù)計(jì)水下均勻光估計(jì)點(diǎn)。從估計(jì)點(diǎn)中選取在相應(yīng)的灰度方差圖像中方差值最低的像素點(diǎn),將其灰度值作為水下均勻光成分估算值。
Step3:計(jì)算和優(yōu)化水下透射率。獲得水下均勻光成分估算值后,對(duì)式(16)歸一化處理,水下散射成像模型變換為
根據(jù)暗原色先驗(yàn)假設(shè),水下透射率在任意局部區(qū)域?yàn)橐怀?shù)值,其預(yù)估值定義為)。對(duì)水下成像模型進(jìn)行最小值濾波可得
由前述暗原色先驗(yàn)理論知,水下清晰圖像的暗原色值JLFdark(u)趨近于0。即
結(jié)合式(20)可得水體透射率的預(yù)估值
Step4:增強(qiáng)水下圖像。在求得水下均勻光成分和水體透射率后,可根據(jù)水下散射成像模型對(duì)水下圖像進(jìn)行增強(qiáng)
為了驗(yàn)證以上算法的效果,本文采用通用水下圖像增強(qiáng)數(shù)據(jù)集,選取直方圖均衡化算法(HE)[19]、暗原色先驗(yàn)算法(Dark Channel Prior,DCP)[20]以及基于圖像融合(Image Fusion,IF)[21]的增強(qiáng)算法作為對(duì)比算法,通過(guò)幾幅不同水下圖像的增強(qiáng)處理效果對(duì)算法性能進(jìn)行評(píng)估。本文算法與幾種算法的增強(qiáng)效果對(duì)比如圖6 所示。
圖6 圖像增強(qiáng)效果Fig.6 Enhanced effects of images
由以上實(shí)驗(yàn)結(jié)果可看出,由于水下光線的傳播受到水介質(zhì)的吸收散射影響,導(dǎo)致水下成像圖像呈現(xiàn)藍(lán)綠色調(diào),偏色現(xiàn)象嚴(yán)重。采用HE 算法處理后,圖像背景干擾信息的對(duì)比度也得到增強(qiáng),使得圖像細(xì)節(jié)信息丟失,當(dāng)背景光存在的較大突變時(shí)會(huì)造成顯著的過(guò)增強(qiáng)問(wèn)題。IF 算法對(duì)圖像亮度和紋理的恢復(fù)具有一定效果,但處理后的圖像依然存在顏色失真的問(wèn)題。DCP 算法處理后的水下圖像依舊存在偏色現(xiàn)象,且圖像自身的模糊問(wèn)題也未能被有效的去除。相比而言,本文提出的算法可有效校正水下圖像的偏色現(xiàn)象,提高圖像的對(duì)比度,且紋理細(xì)節(jié)信息也更加突出。
為進(jìn)一步說(shuō)明實(shí)驗(yàn)效果,選取信息熵、Sift 特征點(diǎn)與Canny 特征點(diǎn)的數(shù)量作為不同算法的評(píng)價(jià)標(biāo)準(zhǔn)。信息熵表示圖像灰度分布的聚集特性,反映了圖像平均信息量的多少,信息熵越大則圖像清晰度越高。特征點(diǎn)數(shù)量是一種能夠間接的反映圖像質(zhì)量的評(píng)價(jià)指標(biāo),高質(zhì)量清晰圖像比低質(zhì)量模糊擁有更多的有效特征點(diǎn),所以特征點(diǎn)數(shù)量越多圖像質(zhì)量越高。對(duì)圖6 中的實(shí)驗(yàn)結(jié)果進(jìn)行分析,不同算法性能的評(píng)價(jià)結(jié)果如表1所示。
表1 不同算法的對(duì)比結(jié)果Table 1 the comparison result of different algorithms
根據(jù)表1 可知,采用IF 算法和DCP 算法處理后的圖像的Sift 特征點(diǎn)和Canny 特征點(diǎn)數(shù)量有所增加,但相比于HE 算法和本文算法特征點(diǎn)數(shù)量較少,說(shuō)明其對(duì)于水下圖像具有一定的增強(qiáng)作用但處理效果不夠理想。HE 算法與本文算法相比,雖然增強(qiáng)處理后的圖像的特征點(diǎn)數(shù)量接近但是信息熵值較低,這也驗(yàn)證了HE 算法對(duì)于處理背景光存在較大突變的水下圖像的過(guò)增強(qiáng)現(xiàn)象。綜上,本文算法對(duì)于水下圖像的顏色失真和細(xì)節(jié)紋理模糊問(wèn)題都有明顯的改善。
將以上增強(qiáng)處理后的左、右水下圖像轉(zhuǎn)換為空氣中的圖像,進(jìn)而計(jì)算目標(biāo)三維點(diǎn)云[11]。再提取匹配點(diǎn)的RGB 三個(gè)通道的值,利用左、右匹配點(diǎn)的RGB 信息計(jì)算獲得標(biāo)準(zhǔn)RGB 值(即空間目標(biāo)點(diǎn)對(duì)應(yīng)的彩色信息值)。根據(jù)獲取的RGB 彩色信息對(duì)生成的三維點(diǎn)云作色彩對(duì)準(zhǔn)疊加處理得到RGB-D 數(shù)據(jù)。具體處理過(guò)程如圖7 所示。
圖7 3D 點(diǎn)云與RGB 色彩對(duì)準(zhǔn)疊加流程圖Fig.7 Flow chart of alignment and superposition of 3D point cloud and RGB color
基于雙目立體視覺(jué)的水下RGB-D 相機(jī)利用左、右彩色相機(jī)獲取RGB 三通道信息從而形成彩色圖像。對(duì)于空間中任意點(diǎn),利用立體匹配算法獲取其在左、右相機(jī)成像平面上對(duì)應(yīng)的像素點(diǎn),接著對(duì)左右成像圖像上的匹配像素點(diǎn)的RGB 三通道進(jìn)行彩色信息提取,通過(guò)計(jì)算獲得與目標(biāo)點(diǎn)對(duì)應(yīng)的標(biāo)準(zhǔn)RGB 彩色信息。如圖8 所示為三維點(diǎn)云的RGB 色彩對(duì)準(zhǔn)疊加模型,可看出根據(jù)匹配點(diǎn)的視差信息,結(jié)合三角測(cè)量原理可以計(jì)算獲得空間目標(biāo)點(diǎn)的三維坐標(biāo)信息(X,Y,Z),再利用左右匹配像素點(diǎn)的彩色信息可計(jì)算得到與空間目標(biāo)點(diǎn)對(duì)應(yīng)的RGB 彩色信息。最終融合三維坐標(biāo)信息與彩色信息生成的RGB-D 點(diǎn)云數(shù)據(jù)(X,Y,Z,R,G,B)。再對(duì)左、右成像平面上的匹配像素點(diǎn)進(jìn)行RGB 三通道彩色分離提取后,利用式(24)計(jì)算對(duì)應(yīng)空間目標(biāo)點(diǎn)的標(biāo)準(zhǔn)RGB 信息。
圖8 3D 點(diǎn)云與2D RGB 數(shù)據(jù)對(duì)準(zhǔn)疊加模型Fig.8 Alignment superposition model of 3D point cloud and 2D RGB data
式中,Rlef、Glef、Blef與Rrig、Grig、Brig分別為空間目標(biāo)三維點(diǎn)在左、右相機(jī)圖像上的匹配像素點(diǎn)分離后的RGB 三通道值,R、G、B為對(duì)應(yīng)空間目標(biāo)點(diǎn)的標(biāo)準(zhǔn)RGB 彩色信息值。根據(jù)點(diǎn)云RGB 色彩對(duì)準(zhǔn)疊加模型中三維點(diǎn)云和彩色圖像像素點(diǎn)之間的映射關(guān)系,便可將三維點(diǎn)云數(shù)據(jù)和二維彩色圖像信息進(jìn)行疊加融合,從而生成RGB-D 圖像數(shù)據(jù)。
研制的水下RGB-D 相機(jī)內(nèi)部電氣結(jié)構(gòu)示意圖如圖9 所示。采用的相機(jī)為MER2-1220-32U3C,分辨率4 024×3 036,像元尺寸1.85 μm。鏡頭為L(zhǎng)M5JC10M,焦距12 mm。雙目立體視覺(jué)系統(tǒng)的基線距離為350 mm。系統(tǒng)整體由左、右兩個(gè)相機(jī)控制單元與中央計(jì)算單元構(gòu)成,主要包含TX2、相機(jī)和電源等。相機(jī)采用外部供電,通過(guò)TX2 發(fā)送脈沖的方式,實(shí)現(xiàn)兩相機(jī)同時(shí)連續(xù)拍攝,并利用內(nèi)部USB 3.0 傳輸線將拍攝的圖片傳輸至中央計(jì)算單元的TX2 完成點(diǎn)云計(jì)算,樣機(jī)與上位機(jī)通過(guò)水密接插件通信。
圖9 系統(tǒng)電氣結(jié)構(gòu)示意圖Fig.9 System electrical structure diagram
圖10 為研制的工程樣機(jī)的實(shí)物圖,由中央計(jì)算單元與左、右相機(jī)控制單元3 個(gè)密封主體構(gòu)成,外部采用賽鋼材質(zhì)的夾具固定。密封殼體采用耐壓、耐腐蝕的鋁合金材料,光學(xué)窗口采用藍(lán)寶石玻璃,最大設(shè)計(jì)工作水深為1 000 m。圖11、圖12 分別為中央計(jì)算單元和相機(jī)控制單元的內(nèi)部結(jié)構(gòu)圖。中央計(jì)算單元和相機(jī)控制單元的TX2、電源模塊和網(wǎng)口分別固定在內(nèi)部支架的兩側(cè),其中中央計(jì)算單元擁有三個(gè)網(wǎng)口。相機(jī)控制單元擁有一個(gè)網(wǎng)口且與USB 接口固定在支架同一側(cè),網(wǎng)口與TX2 相連,相機(jī)控制單元的TX2 通過(guò)USB 與相機(jī)連接,用于對(duì)相機(jī)進(jìn)行供電和數(shù)據(jù)傳輸。中央計(jì)算單元具備三個(gè)水密接插件接口,其中兩個(gè)接口用于與左、右相機(jī)控制單元的連接通信,一個(gè)接口用于連接上位機(jī)進(jìn)行數(shù)據(jù)傳輸。
圖10 工程樣機(jī)實(shí)物圖Fig.10 Physical engineering prototype
圖11 中央筒內(nèi)部結(jié)構(gòu)Fig.11 Internal structure of the central cylinder
圖12 兩側(cè)筒內(nèi)部結(jié)構(gòu)Fig.12 Internal structure of cylinder on both sides
先利用迭代標(biāo)定法獲取空氣中的相機(jī)標(biāo)定參數(shù),再根據(jù)水下標(biāo)定算法[22]對(duì)相機(jī)進(jìn)行水下標(biāo)定。水下標(biāo)定結(jié)果見(jiàn)表2,fx和fy為相機(jī)焦距參數(shù);u0和v0為相機(jī)主點(diǎn)坐標(biāo);k和P為相機(jī)畸變系數(shù);R和T為左右相機(jī)的相對(duì)位姿轉(zhuǎn)換矩陣;d為相機(jī)光心到分界面的距離;n為分界面法線;μ為水的折射率。
表2 左、右相機(jī)的標(biāo)定參數(shù)Table2 Left and right camera calibration parameters
實(shí)驗(yàn)在實(shí)驗(yàn)室水池(3 m×3 m×3.5 m)中進(jìn)行,如圖13 所示。樣機(jī)置于水池上方,并浸入水中,垂直向下采集位于水池底部的目標(biāo)物。實(shí)驗(yàn)采用的水體為一般市用自來(lái)水,由于水介質(zhì)的散射特性,水下圖像不可避免存在色偏及圖像質(zhì)量降低等問(wèn)題。圖14(a)、(c)分別為水下RGB-D 相機(jī)采集到的左、右水下圖像,可看出原始圖像整體偏暗對(duì)比度較低且存在偏色現(xiàn)象。圖14(b)、(d)是經(jīng)過(guò)圖像增強(qiáng)處理后的效果圖。從增強(qiáng)處理前后的圖像對(duì)比中可看出,提出的水下圖像增強(qiáng)算法不僅能校正水下圖像的顏色失真,而且圖像的清晰度也得到了提高。
圖13 實(shí)驗(yàn)場(chǎng)景Fig.13 Experimental scene
圖14 原始水下圖像與增強(qiáng)處理后的圖像Fig.14 Original underwater images and enhanced images
圖15 分別為利用圖像增強(qiáng)前后的左、右水下圖像進(jìn)行三維重建獲得的三維點(diǎn)云圖。從圖15(a)可看出,未增強(qiáng)前的圖像的三維重建效果不理想,表面存在較多缺失。與之相比,圖15(b)中,原本存在缺失的區(qū)域可準(zhǔn)確的重建出來(lái)。實(shí)驗(yàn)結(jié)果表明,本文提出的水下圖像增強(qiáng)算法可提高水下三維重建的效果。
圖15 增強(qiáng)前后的效果對(duì)比Fig.15 Effect comparison of enhancement algorithms
在以上實(shí)驗(yàn)的基礎(chǔ)上,將增強(qiáng)處理后得到的3D 點(diǎn)云與二維RGB 顏色數(shù)據(jù)進(jìn)行對(duì)準(zhǔn)疊加,獲得RGB-D圖像數(shù)據(jù),圖16(a)是計(jì)算得到的水下物體的初始3D 三維點(diǎn)云,圖16(b)是該三維點(diǎn)云與提取的標(biāo)準(zhǔn)RGB彩色數(shù)據(jù)疊加配準(zhǔn)后的結(jié)果,圖16(c)、圖16(d)是局部放大圖。
圖16 目標(biāo)物RGB 色彩對(duì)準(zhǔn)疊加效果Fig.16 Registration effect of 3D point cloud and RGB color
從圖16 可看出3D 點(diǎn)云圖像與2D 彩色RGB 圖像對(duì)準(zhǔn)疊加獲得RGB-D 圖像,既有二維信息,也有3D 信息,這對(duì)于水下目標(biāo)識(shí)別尤為重要。模型可有效的將采集到的二維彩色RGB 圖像與三維點(diǎn)云進(jìn)行對(duì)準(zhǔn)疊加,獲得更具應(yīng)用價(jià)值的RGB-D 點(diǎn)云數(shù)據(jù)。
在水池底部放置圓形陶瓷盤(pán)作為目標(biāo)物(圖17(a)),實(shí)驗(yàn)時(shí),將目標(biāo)陶瓷盤(pán)擺放在水下不同位置(圖17(b)),與樣機(jī)距離大約3 m。采集多組含陶瓷盤(pán)的水下圖像,利用提出的水下圖像增強(qiáng)算法對(duì)圖像進(jìn)行增強(qiáng)處理,然后計(jì)算獲取陶瓷盤(pán)的三維點(diǎn)云。陶瓷盤(pán)直徑的名義值為259.3 mm,名義值與實(shí)驗(yàn)測(cè)量值之間的誤差和標(biāo)準(zhǔn)差如表3 所示。由表3 可看出,陶瓷盤(pán)直徑尺寸測(cè)量的標(biāo)準(zhǔn)差為2.6 mm,具有較好的測(cè)量精度。
圖17 精度測(cè)量實(shí)驗(yàn)Fig.17 Precision measurement experiment
表3 測(cè)量數(shù)據(jù)Table 3 The measurement data
本文研制了一款融合3D 點(diǎn)云和二維RGB 圖像為一體的RGB-D 水下相機(jī)工程樣機(jī)。針對(duì)水下圖像對(duì)比度低、顏色失真等問(wèn)題,提出了一種基于顏色校正和暗原色先驗(yàn)的水下圖像增強(qiáng)算法,基于雙目立體視覺(jué)原理,通過(guò)左右相機(jī)對(duì)應(yīng)點(diǎn)匹配計(jì)算,獲得了水下目標(biāo)的三維點(diǎn)云,建立了3D 點(diǎn)云與2D 彩色RGB 圖像的對(duì)準(zhǔn)疊加模型,實(shí)現(xiàn)了對(duì)目標(biāo)三維深度信息和彩色RGB 信息的疊加融合。進(jìn)行了一系列實(shí)驗(yàn)及理論驗(yàn)證,包括:基于圖像增強(qiáng)的水下三維重建實(shí)驗(yàn)表明,提出的水下圖像增強(qiáng)算法不僅能校正水下圖像的顏色失真,而且可提高水下三維重建的效果,為之后獲取更高質(zhì)量的RGB-D 數(shù)據(jù)奠定基礎(chǔ);三維點(diǎn)云RGB 色彩對(duì)準(zhǔn)疊加實(shí)驗(yàn)表明,構(gòu)建的點(diǎn)云RGB 色彩對(duì)準(zhǔn)疊加模型可將顏色校正后的顏色數(shù)據(jù)與3D 點(diǎn)云數(shù)據(jù)配準(zhǔn)生成高質(zhì)量的水下RGB-D 數(shù)據(jù);最終的水下三維重建精度分析實(shí)驗(yàn)表明,基于以上理論研制的水下RGB-D 樣機(jī)具有較好的實(shí)際水下三維重建效果。