盛明偉,唐松奇,萬 磊,秦洪德,李 俊
(哈爾濱工程大學(xué)水下機(jī)器人技術(shù)重點(diǎn)實(shí)驗(yàn)室,黑龍江 哈爾濱 150001)
近幾十年,水下圖像處理由于其挑戰(zhàn)性和重要性受到了廣泛的關(guān)注。水下圖像的質(zhì)量對(duì)于水下計(jì)算機(jī)視覺,如水下目標(biāo)檢測[1]、評(píng)估地質(zhì)環(huán)境和水下勘探等具有重要意義,但是拍攝的水下圖像對(duì)比度低、顏色失真、噪聲大。由于光在水下的衰減,水對(duì)紅光吸收最為強(qiáng)烈,藍(lán)光由于波長最短,吸收最少[2],所以在水下拍攝得到的圖像會(huì)出現(xiàn)顏色失真,呈現(xiàn)藍(lán)綠色。前向和后向散射導(dǎo)致圖像對(duì)比度低,呈現(xiàn)霧狀模糊[3]。同時(shí),水中的有機(jī)物質(zhì)、懸浮粒子等雜質(zhì)也會(huì)降低水下圖像的質(zhì)量,單幅水下圖像的可視范圍受到極大限制[4],這些問題會(huì)影響水下圖像特征提取的精度與魯棒性。因此,從模糊退化的水下圖像中有效提取出特征點(diǎn)并進(jìn)行匹配是一個(gè)亟需解決的問題。
針對(duì)上述問題,研究者提出了多種方法。1999年Lowe[5]提出的尺度不變特征變換SIFT(Scale Invariant Feature Transform)方法是一種局部特征提取方法,具有尺度和旋轉(zhuǎn)不變性,其抗噪聲性能適用于水下圖像配準(zhǔn)。Chen等[6]綜合考慮了水下能見度、光照等的變化,利用SIFT對(duì)水下圖像進(jìn)行特征提取,然后利用隨機(jī)抽樣一致性RANSAC(RANdom SAmple Consensus)[7]方法去除誤匹配點(diǎn),保證了圖像匹配的準(zhǔn)確性和穩(wěn)定性,充分利用小波變換對(duì)匹配圖像進(jìn)行融合,實(shí)現(xiàn)水下圖像拼接,對(duì)水下圖像具有良好的視覺效果和匹配精度。Fu等[8]考慮到圖像的背景信息較少,而且特征總是主要集中在其他對(duì)象上,通過尋找一組潛在的特征點(diǎn)來確定感興趣區(qū)域ROI(Region Of Interest),然后采用機(jī)器學(xué)習(xí)方法構(gòu)建二進(jìn)制分類器,識(shí)別候選特征點(diǎn),并建立一個(gè)ROI搜索區(qū)域,最后使用加速穩(wěn)健特征SURF(Speeded Up Robust Features)方法來實(shí)現(xiàn)圖像配準(zhǔn)。該方法在保證拼接精度的同時(shí),提高了計(jì)算速度。Babu[9]通過Harris方法提取待配準(zhǔn)圖像中的特征點(diǎn),利用雙正交多小波變換得到特征向量,經(jīng)過支持小波變換的最小二乘準(zhǔn)則進(jìn)行處理得到變換因子,最后對(duì)圖像進(jìn)行重采樣和變換實(shí)現(xiàn)圖像配準(zhǔn)。
卷積神經(jīng)網(wǎng)絡(luò)CNN(Convolutional Neural Network)在計(jì)算機(jī)視覺領(lǐng)域取得了巨大的成功[10],研究者將CNN運(yùn)用到圖像特征提取與配準(zhǔn)上。雒培磊等[11]提出一種利用分層卷積特征進(jìn)行圖像配準(zhǔn)的方法,使用VGGNet網(wǎng)絡(luò)中第3~5個(gè)卷積層自適應(yīng)提取特征點(diǎn)的分層卷積特征,通過CF(Correlation Filter)濾波器對(duì)不同深度的卷積特征逐層進(jìn)行相關(guān)性分析,進(jìn)而綜合計(jì)算特征點(diǎn)的位置,根據(jù)配準(zhǔn)的特征點(diǎn)計(jì)算變換參數(shù),實(shí)現(xiàn)圖像的配準(zhǔn)。Ye等[12]通過將VGGNet中FC7層和FC6層的輸出作為基于CNN的圖像配準(zhǔn)特征,然后生成CNN和SIFT的組合特征,再將該組合特征集成到PSO-SIFT方法中實(shí)現(xiàn)圖像配準(zhǔn)。但是,該方法只適用于遙感圖像配準(zhǔn),對(duì)于特征點(diǎn)少的模糊水下圖像配準(zhǔn)效果不佳。
為了實(shí)現(xiàn)水下復(fù)雜場景下特征提取的魯棒性和精確性,本文將CNN引入水下圖像增強(qiáng)與特征提取中,利用基于深度CNN的水下圖像增強(qiáng)方法對(duì)模糊退化的水下圖像進(jìn)行增強(qiáng),提出了一種基于改進(jìn)的CNN-RANSAC的水下圖像特征配準(zhǔn)方法。通過水下圖像分類數(shù)據(jù)集遷移學(xué)習(xí)訓(xùn)練VGGNet-16網(wǎng)絡(luò)框架,利用修改后的網(wǎng)絡(luò)框架生成魯棒的多尺度特征描述符與特征點(diǎn),經(jīng)過特征粗匹配與動(dòng)態(tài)內(nèi)點(diǎn)選擇,并利用改進(jìn)的RANSAC方法剔除誤匹配點(diǎn),以提高特征點(diǎn)配準(zhǔn)的魯棒性。
基于改進(jìn)的CNN-RANSAC的水下圖像配準(zhǔn)具體流程如圖1所示。
基于特征的圖像配準(zhǔn)方法的核心步驟為:
(1)圖像特征提取。特征提取可以進(jìn)一步分為特征點(diǎn)提取和構(gòu)造特征描述符,可使用SIFT或SURF特征描述符在一對(duì)或多對(duì)圖像中檢測并提取足夠多的特征點(diǎn)[13]。圖像中每個(gè)特征點(diǎn)的坐標(biāo)、尺度以及方向都確定之后,根據(jù)這些信息構(gòu)造特征描述子[14]。
(2)特征預(yù)匹配。特征點(diǎn)提取之后,需要找出一個(gè)點(diǎn)集與另一個(gè)點(diǎn)集之間的對(duì)應(yīng)關(guān)系,通過在特征空間中尋找最近鄰來估計(jì)一個(gè)初步的逐點(diǎn)對(duì)應(yīng)關(guān)系[15]。
(3)匹配點(diǎn)對(duì)提純與模型參數(shù)估計(jì)。研究人員常采用隨機(jī)抽樣一致性方法RANSAC來消除匹配過程中的誤匹配點(diǎn)對(duì),該方法可從一組包含局內(nèi)點(diǎn)和局外點(diǎn)的觀測數(shù)據(jù)集中,通過不斷迭代的方式估計(jì)數(shù)學(xué)模型的參數(shù),完成對(duì)觀測數(shù)據(jù)集進(jìn)行數(shù)學(xué)模型擬合的過程,實(shí)現(xiàn)對(duì)數(shù)據(jù)集的局外點(diǎn)及噪聲進(jìn)行剔除的目的[16]。使用2幅圖像的最終的匹配特征點(diǎn)對(duì)計(jì)算圖像間的單應(yīng)矩陣H。
(4)圖像變換。圖像配準(zhǔn)過程的最后一步是根據(jù)前一步得到的對(duì)應(yīng)關(guān)系對(duì)2幅圖像進(jìn)行物理對(duì)齊。將待配準(zhǔn)圖像乘以單應(yīng)矩陣H,最后將所得結(jié)果與參考圖像進(jìn)行線性相加,得到最終的配準(zhǔn)結(jié)果。
Figure 2 A convolutional neural network for underwater image enhancement圖2 用于水下圖像增強(qiáng)的CNN網(wǎng)絡(luò)框架
CNN是一種深度學(xué)習(xí)模型,也是一種多層前饋人工神經(jīng)網(wǎng)絡(luò),在卷積層和池化層之間交替,并包含數(shù)個(gè)全連接的層[17]。卷積結(jié)構(gòu)可以減少深層網(wǎng)絡(luò)占用的內(nèi)存量,其具有2個(gè)關(guān)鍵的操作,其一是局部感受野,其二是權(quán)值共享。池化層從卷積層的輸出中提取小矩形塊并對(duì)其進(jìn)行子采樣,以從該塊中生成單個(gè)輸出,有效減少了網(wǎng)絡(luò)的參數(shù)個(gè)數(shù),緩解了模型的過擬合問題。隨著深度學(xué)習(xí)的推進(jìn),CNN開始不斷向縱深化方向發(fā)展,相繼出現(xiàn)了結(jié)構(gòu)很深的VGGNet和GoogLeNet等新模型[18],通過增加網(wǎng)絡(luò)的深度可以提升網(wǎng)絡(luò)的性能,VGGNet的核心思想是利用較小的卷積核來增加網(wǎng)絡(luò)的深度,其有2種基本類型:一種為VGGNet-16,另一種為VGGNet-19。VGGNet在圖像特征提取方面相比于其他CNN的優(yōu)勢體現(xiàn)在以下3個(gè)方面: (1)優(yōu)異的圖像定位與分類性能表明了該模型的效果,對(duì)其他數(shù)據(jù)集具有很好的泛化能力。(2)該模型結(jié)構(gòu)簡單,僅通過疊加卷積層、池化層和全連接層來構(gòu)造,無分支或快捷連接,可用于不同的目的,包括圖像特征提取。(3)利用加深結(jié)構(gòu)的思路來提升性能,全部使用3×3的卷積核和2×2的池化核,較小的卷積核能使網(wǎng)絡(luò)結(jié)構(gòu)更深,并經(jīng)過大量多樣的圖像數(shù)據(jù)訓(xùn)練,學(xué)習(xí)到的特征更多,結(jié)果更具判別性。
由于光在水下的衰減,在水下拍攝得到的圖像出現(xiàn)顏色失真,呈現(xiàn)藍(lán)綠色。前向和后向散射導(dǎo)致圖像對(duì)比度低,呈現(xiàn)霧狀模糊。同時(shí),水中的有機(jī)物質(zhì)、懸浮粒子等雜質(zhì)也會(huì)降低水下圖像的質(zhì)量,造成了水下圖像配準(zhǔn)困難,因此本文提出一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的水下圖像增強(qiáng)方法。
水下圖像的數(shù)量對(duì)于深度學(xué)習(xí)來說是相對(duì)有限的,目前仍未有完整的水下圖像數(shù)據(jù)集用于增強(qiáng),而大量訓(xùn)練數(shù)據(jù)是參數(shù)訓(xùn)練的關(guān)鍵。為解決該問題,本文通過暗通道先驗(yàn)估計(jì)圖像的透射率,利用水下成像模型公式計(jì)算得到模糊圖像,然后通過對(duì)紅、綠、藍(lán)通道衰減系數(shù)的更改,利用不同通道的衰減系數(shù)與模糊圖像做卷積運(yùn)算,得到模擬水下藍(lán)色和綠色圖像,最終將這3部分退化圖像與清晰圖像作為訓(xùn)練CNN的數(shù)據(jù)集。
本文充分考慮退化模糊圖像與增強(qiáng)清晰圖像之間的關(guān)系,即為端對(duì)端非線性映射關(guān)系,構(gòu)建了一種對(duì)稱式卷積的CNN用于圖像增強(qiáng),通過不斷調(diào)整卷積核與逆卷積核大小和特征圖的數(shù)量來優(yōu)化神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)退化特征的能力,得到水下退化圖像到增強(qiáng)清晰圖像的非線性映射。本文提出的用于水下圖像增強(qiáng)的CNN網(wǎng)絡(luò)框架如圖2所示,將模糊退化的水下圖像從輸入層輸入,網(wǎng)絡(luò)的隱含層均由特征圖組成,分別包括3個(gè)不同卷積核的卷積子網(wǎng)與逆卷積子網(wǎng),兩者卷積核對(duì)稱。由于CNN的連續(xù)卷積無法恢復(fù)低質(zhì)量水下圖像的細(xì)節(jié),所以引入對(duì)稱的逆卷積層對(duì)提取的紋理特征進(jìn)行細(xì)化。輸入圖像經(jīng)過卷積網(wǎng)絡(luò)訓(xùn)練之后,在輸出層得到與輸入圖像同等寬高的增強(qiáng)圖像。本文通過對(duì)比實(shí)驗(yàn)得出最佳卷積核為7×5×3×3×5×7,最佳特征圖數(shù)量為32×64×128×128×64×3。
為了充分利用CNN強(qiáng)大的特征提取與表示能力,并克服底層特征的不穩(wěn)定性,提高配準(zhǔn)的魯棒性,本文提出了一種基于改進(jìn)的CNN-RANSAC的水下圖像配準(zhǔn)方法。首先通過水下圖像分類數(shù)據(jù)集遷移學(xué)習(xí)訓(xùn)練VGGNet-16網(wǎng)絡(luò)框架,然后利用修改后的框架生成魯棒的多尺度特征描述符與特征點(diǎn),經(jīng)過特征點(diǎn)粗匹配與動(dòng)態(tài)內(nèi)點(diǎn)選擇,并利用改進(jìn)的RANSAC方法剔除誤匹配點(diǎn),以提高特征點(diǎn)配準(zhǔn)的準(zhǔn)確性。
Figure 3 Diagram of modified VGGNet-16圖3 修改后的VGGNet-16網(wǎng)絡(luò)框架圖
(1)遷移學(xué)習(xí)訓(xùn)練VGGNet-16框架并生成特征描述符與特征點(diǎn)。
本文選擇的CNN網(wǎng)絡(luò)框架是VGGNet-16,是一個(gè)分類1 000個(gè)類別的圖像分類網(wǎng)絡(luò),由13個(gè)卷積層(核大小均為3×3)、5個(gè)最大池化層和3個(gè)全連接層組成。在水下圖像分類數(shù)據(jù)集上遷移學(xué)習(xí)訓(xùn)練已在ImageNet數(shù)據(jù)集預(yù)訓(xùn)練完成的VGGNet-16網(wǎng)絡(luò)框架,對(duì)網(wǎng)絡(luò)框架中各個(gè)權(quán)值參數(shù)進(jìn)行微調(diào),使其更加適用于水下圖像特征提取。首先制作水下圖像分類數(shù)據(jù)集,數(shù)據(jù)集包括5類:海魚、海膽、章魚、珊瑚礁與水母,共包含約1 000幅圖像,每幅圖像中只包含一個(gè)樣本,均帶有一定的顏色衰減和模糊退化。在訓(xùn)練中,通過數(shù)據(jù)增強(qiáng)的方式適當(dāng)增加數(shù)據(jù)量,能有效按照需求提高訓(xùn)練集的質(zhì)量,以此來提高網(wǎng)絡(luò)的魯棒性與泛化能力,訓(xùn)練過程中微調(diào)網(wǎng)絡(luò)權(quán)值參數(shù),其中學(xué)習(xí)率設(shè)為0.01,batch_size設(shè)為16,迭代次數(shù)為200 000次,在水下驗(yàn)證集上的準(zhǔn)確率達(dá)到了90.75%。
由于全連接層對(duì)空間特征表達(dá)能力的劣勢,以及本文使用CNN的目的是圖像特征提取而不是圖像分類,本文去除了CNN的全連接層與Softmax層;由于原VGGNet中的第5個(gè)最大池化層受特定分類對(duì)象的影響,不適合提取一般特征,所以在第5個(gè)卷積塊中經(jīng)過1次卷積后添加1個(gè)最大池化層,修改后的VGGNet-16網(wǎng)絡(luò)框架如圖3所示。本文所用的卷積特征描述符是使用訓(xùn)練完成的VGGNet-16網(wǎng)絡(luò)框架中特定層的輸出來構(gòu)造的。通過對(duì)不同卷積層的可視化和以單層輸出為特征的實(shí)驗(yàn),需要選擇不同網(wǎng)絡(luò)層來構(gòu)建圖像的特征描述符,其中主要的考慮因素為卷積濾波器的普遍性和感受野大小,因此本文選擇pool3層、pool4層和在block5_conv1層之后添加的最大池化層即pool5_1層來提取圖像特征,這些層能夠很好地覆蓋不同大小的感受野,并能得到相應(yīng)的特征。
如圖3所示,修改后的VGGNet-16網(wǎng)絡(luò)框架包含5個(gè)卷積計(jì)算塊,每個(gè)塊分別有2~3個(gè)卷積層。由于pool3層所得特征圖的大小是28×28×256,所以在輸入圖像上放置一個(gè)28×28的網(wǎng)格來分割整個(gè)圖像塊,每個(gè)塊對(duì)應(yīng)于pool3層輸出中的256維向量,在圖像的每個(gè)8×8正方形區(qū)域中心生成一個(gè)描述符,將每個(gè)塊的中心視為一個(gè)特征點(diǎn)。將256維向量定義為pool3層的特征描述符,將pool3層的輸出直接作為pool3層特征圖FM1,大小為28×28×256。pool4層所得特征圖的大小為14×14×512,在圖像的每個(gè)16×16正方形區(qū)域中心,生成一個(gè)pool4描述符,它由4個(gè)特征點(diǎn)共享。pool4特征圖FM2由克羅內(nèi)克乘積(由?表示)計(jì)算得到:
FM2=Opool4?I2×2×1
(1)
其中,Opool4表示池化層pool4的輸出,I表示一個(gè)值都為1、形狀為2×2的張量。pool5_1層的輸出維度為7×7×512,每個(gè)pool5_1描述符被16個(gè)特征點(diǎn)共享,其特征圖FM3為:
FM3=Opool5_1?I4×4×1
(2)
圖4表示水下圖像特征的CNN描述符與特征點(diǎn)在32×32正方形區(qū)域中的分布。三角形點(diǎn)表示pool3層特征描述符,處于8×8正方形區(qū)域中,并將每個(gè)區(qū)域的中心視為一個(gè)特征點(diǎn)。圓形點(diǎn)表示pool4層特征描述符,處于16×16正方形區(qū)域中,每個(gè)描述符由4個(gè)特征點(diǎn)共享。正方形點(diǎn)表示由16個(gè)特征點(diǎn)共享的pool5_1層特征描述符。
Figure 4 Schematic diagram of the distribution of CNN feature descriptors and feature points圖4 CNN特征描述符與特征點(diǎn)的分布示意圖
在得到各個(gè)層的特征圖FM1、FM2和FM3后,需要將特征圖歸一化為單位方差:
(3)
其中,FMi表示所在層的特征圖,σ(·)表示計(jì)算矩陣中各值的標(biāo)準(zhǔn)差,F(xiàn)Mnorm_i表示歸一化為單位方差后的特征圖。點(diǎn)x的pool3層、pool4層和pool5_1層特征描述符分別用T1(x)、T2(x)和T3(x)表示。
(2)特征點(diǎn)粗匹配與動(dòng)態(tài)內(nèi)點(diǎn)選擇。
首先定義特征的距離度量,2個(gè)特征點(diǎn)x和y之間的特征距離是3個(gè)距離值的加權(quán)和:
(4)
滿足以下2個(gè)條件時(shí),特征點(diǎn)x與y匹配:
①d(x,y)是所有d(·,y)中最小的。
②不存在d(z,y)使d(z,y)<θ×d(x,y)。其中θ是匹配閾值,該參數(shù)值大于1,匹配閾值越小,選取的特征點(diǎn)越多。
本文所提取的特征點(diǎn)是在正方形圖像塊的中心生成的。在變形的情況下,待配準(zhǔn)圖像和參考圖像相應(yīng)的特征點(diǎn)的圖像塊可能部分重疊,也可能完全重疊,重疊比例較大的特征點(diǎn)具有更高的匹配程度,重疊比例越小的特征點(diǎn)匹配概率應(yīng)越低,其中部分重疊圖像塊的中心之間的距離應(yīng)較小。因此,為了實(shí)現(xiàn)更準(zhǔn)確的圖像特征點(diǎn)粗匹配,利用動(dòng)態(tài)內(nèi)點(diǎn)選擇[19]方法來確定對(duì)齊的程度。在每k次迭代中更新內(nèi)點(diǎn)的選擇,若特征點(diǎn)為內(nèi)點(diǎn),則移動(dòng)引導(dǎo)點(diǎn)位置,而外點(diǎn)移動(dòng)是一致的。在特征點(diǎn)粗匹配階段,使用一個(gè)低閾值θ0得到大量特征點(diǎn)并濾除不相關(guān)的點(diǎn),然后指定一個(gè)較大的初始閾值θ′,使只有正確的內(nèi)點(diǎn)才滿足條件,正確的內(nèi)點(diǎn)指的是具有重疊塊的特征點(diǎn)。在之后的粗匹配過程中,在每k次迭代中將閾值θ減去步長δ,允許更多的特征點(diǎn)影響變換。這使得強(qiáng)匹配的特征點(diǎn)能夠確定整體變換,而其他特征點(diǎn)可以優(yōu)化配準(zhǔn)精度,提高特征點(diǎn)粗匹配的精度。
(3)改進(jìn)的RANSAC方法剔除誤匹配點(diǎn)。
特征粗匹配中都會(huì)存在錯(cuò)誤匹配點(diǎn)對(duì),可采用RANSAC方法進(jìn)行特征點(diǎn)對(duì)提純。但是,傳統(tǒng)的RANSAC方法存在2個(gè)主要的局限:效率方面,當(dāng)配準(zhǔn)圖像中存在誤匹配點(diǎn)偏多時(shí),匹配過程需要的迭代次數(shù)將大大增加,效率低下;精度方面,初始模型參數(shù)估計(jì)是由隨機(jī)抽取的樣本數(shù)據(jù)計(jì)算得到的,選取最小子集是從效率的角度考慮的,往往得到的是非最佳模型參數(shù)[20]。為獲得最佳匹配點(diǎn)對(duì)集,本文綜合以下3種方式對(duì)傳統(tǒng)RANSAC方法進(jìn)行改進(jìn):
①減小觀測數(shù)據(jù)范圍。
在特征點(diǎn)粗匹配的過程中,2個(gè)特征點(diǎn)x和y之間的特征距離是建立特征點(diǎn)之間匹配關(guān)系的紐帶,特征距離越大,說明相似性越低。將所有匹配點(diǎn)對(duì)按照距離從小到大排列,那么排在前面的匹配點(diǎn)對(duì)具有較高的匹配準(zhǔn)確率。本文通過選取排序之后的前80%的匹配點(diǎn)對(duì)組成新的匹配點(diǎn)集,然后計(jì)算出單應(yīng)性矩陣參數(shù)模型,內(nèi)點(diǎn)在新匹配點(diǎn)集中所占的比例變大,提高了運(yùn)算效率,有效減少了計(jì)算所需的迭代次數(shù)。
②去除交叉特征點(diǎn)。
匹配的特征點(diǎn)之間的連接直線不應(yīng)該存在交叉,但如果一條直線與大部分直線相交,則該點(diǎn)對(duì)應(yīng)該是匹配錯(cuò)誤的。因此,本文通過設(shè)置一個(gè)閾值,然后計(jì)算一個(gè)匹配點(diǎn)對(duì)的連接直線與其他線相交的次數(shù),當(dāng)這個(gè)數(shù)大于閾值時(shí),則可以刪除這個(gè)點(diǎn),以此來提高匹配的正確率。
③通過尋找目標(biāo)區(qū)域,移除不在目標(biāo)區(qū)域內(nèi)的特征點(diǎn)。
大部分圖像中包括目標(biāo)對(duì)象和背景,圖像目標(biāo)區(qū)域與背景中的一些特征點(diǎn)會(huì)匹配,導(dǎo)致誤匹配點(diǎn)對(duì)增多,則需要直接刪除屬于背景區(qū)域的特征點(diǎn),只保留在目標(biāo)區(qū)域的特征點(diǎn)。通過計(jì)算出每個(gè)點(diǎn)周圍區(qū)域的特征點(diǎn)匹配成功數(shù)量,若小于閾值則認(rèn)為該點(diǎn)大概率屬于背景區(qū)域,并將其移除出內(nèi)點(diǎn)集。
(4)利用圖像間的單應(yīng)矩陣進(jìn)行圖像配準(zhǔn)。
經(jīng)過改進(jìn)的RANSAC方法剔除誤匹配點(diǎn)后,得到水下圖像中最佳匹配點(diǎn),使用2幅圖像的最終匹配特征點(diǎn)對(duì),通過式(5)計(jì)算圖像間的單應(yīng)矩陣H。根據(jù)配準(zhǔn)圖像間的單應(yīng)矩陣H,可以對(duì)相應(yīng)的圖像進(jìn)行變換,以確定圖像間的重疊區(qū)域。 將待拼接圖像乘以矩陣H,最后將所得結(jié)果與參考圖像進(jìn)行線性相加,得到最終的配準(zhǔn)結(jié)果。
(5)
其中,(x′,y′)表示參考圖像中的點(diǎn),(x,y)表示待配準(zhǔn)圖像中與(x′,y′)相對(duì)應(yīng)的點(diǎn)。
為了測試本文方法的水下圖像增強(qiáng)、特征提取與匹配性能,本節(jié)對(duì)不同類型的水下圖像進(jìn)行了增強(qiáng)與配準(zhǔn)測試。水下圖像集包括了海底圖像、水下輸水隧洞內(nèi)部圖像、AUV拍攝的湖底圖像等,約100幅圖像,均有一定的模糊退化與顏色衰減。在其中選取1組具有代表性的水下圖像,分別進(jìn)行圖像增強(qiáng)與配準(zhǔn)對(duì)比實(shí)驗(yàn),并從增強(qiáng)效果、提出特征點(diǎn)數(shù)、粗匹配對(duì)數(shù)、精匹配對(duì)數(shù)以及各個(gè)階段耗時(shí)4個(gè)方面對(duì)不同增強(qiáng)與配準(zhǔn)方法進(jìn)行客觀的評(píng)價(jià)。實(shí)驗(yàn)軟件平臺(tái):Windows 10,64位操作系統(tǒng),Matlab 2016a,使用TensorFlow深度學(xué)習(xí)框架對(duì)增強(qiáng)與配準(zhǔn)網(wǎng)絡(luò)框架進(jìn)行訓(xùn)練,在GPU上實(shí)現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)的增強(qiáng)與特征提取訓(xùn)練。使用的GPU為NVIDIA GeForce GTX 1060,使用的CPU主頻為2.2 GHz,顯存為8 GB,內(nèi)存為16 GB。
在水下圖像增強(qiáng)處理階段,將訓(xùn)練學(xué)習(xí)率設(shè)置為0.000 1,迭代次數(shù)設(shè)置為10萬次,使用均值為0、標(biāo)準(zhǔn)差為0.001的高斯隨機(jī)分布初始化權(quán)值w,所有偏置b初始化為0,并采用片段式的學(xué)習(xí)方式,從數(shù)據(jù)集中隨機(jī)多次采樣,從退化圖像與對(duì)應(yīng)清晰圖像中分別獲得片段大小為55×55的訓(xùn)練數(shù)據(jù),訓(xùn)練時(shí)輸入為模擬水下退化圖像,訓(xùn)練標(biāo)簽為清晰圖像。在特征提取與匹配階段,通過選擇最可靠的128對(duì)特征點(diǎn)自動(dòng)確定閾值θ0,然后通過選擇最可靠的64對(duì)特征點(diǎn)來確定θ′。在動(dòng)態(tài)內(nèi)點(diǎn)選擇階段,步長δ由δ=(θ′-θ0)/10確定。
首先對(duì)水下原圖像進(jìn)行增強(qiáng)預(yù)處理,為檢驗(yàn)本文所提出的基于深度CNN的水下圖像增強(qiáng)方法的效果,將其與常用的圖像增強(qiáng)方法進(jìn)行對(duì)比,包括直方圖均衡化方法(簡稱HE方法)、對(duì)比度受限自適應(yīng)直方圖均衡化方法(簡稱CLAHE方法)、基于暗通道先驗(yàn)的去霧方法(簡稱DCP方法)、用于水下圖像增強(qiáng)的波長補(bǔ)償和去霧增強(qiáng)方法(簡稱WCID方法)、具有色彩恢復(fù)的多尺度Retinex增強(qiáng)方法(簡稱MSRCR方法)和基于圖像融合的水下圖像增強(qiáng)方法(簡稱IFUIE方法)。水下圖像增強(qiáng)對(duì)比圖如圖6所示。
Figure 5 Comparison of underwater image enhancement methods圖5 水下圖像增強(qiáng)方法對(duì)比圖
如圖6所示,HE方法能有效改善圖像清晰度,對(duì)顏色衰減有較好的處理效果,但出現(xiàn)了部分顏色失真,偏離了正常顏色;DCP方法與CLAHE方法增強(qiáng)效果相似,能在一定程度上提高圖像清晰度,細(xì)節(jié)相對(duì)于退化圖像更加清楚,但未能改變圖像顏色衰減,所以不能應(yīng)用于水下成像的色度調(diào)整;WCID方法在顏色校正方面有著較好效果,但是與本文方法相比,整體偏暗,部分細(xì)節(jié)信息仍模糊不清。MSRCR方法存在顏色失真,且存在較大的噪聲,細(xì)節(jié)信息仍難以辨識(shí),增強(qiáng)效果較差。IFUIE方法能較好地改善圖像清晰度與顏色退化,效果與本文方法相接近。本文方法所得增強(qiáng)圖像在視覺上更為真實(shí),細(xì)節(jié)信息突出,在亮度、對(duì)比度方面改善明顯,具有更好的視覺效果,有利于之后的圖像特征提取與匹配。除了定性的視覺比較之外,為量化本文方法在水下實(shí)際場景中的增強(qiáng)效果,本節(jié)通過增強(qiáng)處理20幅水下退化圖像,采用常用的圖像評(píng)價(jià)指標(biāo)對(duì)不同水下圖像增強(qiáng)方法進(jìn)行對(duì)比,如表1所示,利用本文方法增強(qiáng)后的圖像均值略低于FUIE方法的,標(biāo)準(zhǔn)差與信息熵是最高的,模糊程度值為最低,平均梯度最高。由此可知,本文提出的增強(qiáng)方法清晰程度較高,信息提取量較高,增強(qiáng)處理效果更好。
Figure 6 Contrast results of underwater image feature extraction圖6 水下圖像特征提取對(duì)比圖
Table 1 Comparison of underwater image enhancement evaluation results among different methods
水下圖像特征提取結(jié)果如圖6所示。
水下圖像特征粗匹配與提純結(jié)果如圖7~圖9所示。
Figure 7 Results of underwater image feature rough matching and purification based on SIFT method圖7 基于SIFT方法的水下圖像特征粗匹配與提純結(jié)果圖
Figure 8 Results of underwater image feature rough matching and purification based on SURF method圖8 基于SURF方法的水下圖像特征粗匹配與提純結(jié)果圖
圖6中的上圖為參考圖像,記為圖A,下圖為待配準(zhǔn)圖像,記為圖B。選取了基于SIFT和基于SURF的配準(zhǔn)方法進(jìn)行對(duì)比,3種不同方法的水下圖像配準(zhǔn)結(jié)果如表2所示。在水下圖像特征點(diǎn)提取結(jié)果中,由于增強(qiáng)處理前的圖像對(duì)比度低、圖像細(xì)節(jié)模糊,未經(jīng)過圖像增強(qiáng)所提取的特征點(diǎn)數(shù)遠(yuǎn)遠(yuǎn)小于圖像增強(qiáng)后提取的特征點(diǎn)數(shù),并且無法得到正確的匹配點(diǎn)對(duì),無法滿足獲取變換矩陣所需的最少4個(gè)正確匹配點(diǎn)對(duì)。而增強(qiáng)處理后的圖像獲得了足夠多的特征點(diǎn),說明本文的增強(qiáng)方法突出了水下圖像的細(xì)節(jié)信息,有效地改善了圖像的亮度和對(duì)比度,提高了方法對(duì)水下圖像的特征提取能力。如圖6所示,SIFT方法所提取的特征點(diǎn)數(shù)量最多,但是耗時(shí)最多;SURF方法提取的水下圖像特征點(diǎn)最少,約為SIFT方法的一半,但是耗時(shí)最少,具有較好的實(shí)時(shí)性;本文方法提取的水下圖像特征點(diǎn)比SIFT方法稍微少一些,耗時(shí)比SIFT方法少,但與SURF方法相比,犧牲了一些速度優(yōu)勢,能夠提取更多的特征點(diǎn)??偟膩碚f,本文方法與傳統(tǒng)的SIFT和SURF相比,具有較好的特征提取能力。在水下圖像粗匹配階段,SIFT方法與SURF方法得到的粗匹配點(diǎn)對(duì)與耗時(shí)相差不多,本文方法在粗匹配階段增加了動(dòng)態(tài)內(nèi)點(diǎn)選擇,能有效提高特征點(diǎn)粗匹配的精度,得到的粗匹配點(diǎn)對(duì)相對(duì)更多。由圖7a、圖8a和圖9a可得,基于SIFF方法和SURF方法的2幅水下圖像的粗匹配點(diǎn)對(duì)中存在較多錯(cuò)誤匹配,而本文方法的粗匹配點(diǎn)對(duì)中只有少數(shù)錯(cuò)匹配點(diǎn)對(duì)。在水下圖像特征點(diǎn)對(duì)提純階段,使用傳統(tǒng)的RANSAC方法所得的精匹配點(diǎn)對(duì)都偏少,而且仍會(huì)存在誤匹配點(diǎn)對(duì),耗時(shí)更長;如圖9b和圖9c所示,采用傳統(tǒng)RANSAC方法提純本文方法所得粗匹配點(diǎn)對(duì),得到54對(duì)精匹配點(diǎn)對(duì),仍存在2對(duì)誤匹配點(diǎn)對(duì),而采用改進(jìn)的RANSAC方法能得到78對(duì)精匹配點(diǎn)對(duì),而且無錯(cuò)誤點(diǎn)對(duì),相對(duì)于傳統(tǒng)RANSAC方法耗時(shí)更少,內(nèi)點(diǎn)比例更高。綜上所示,本文所提出的特征提取方法能提取出足夠多的特征點(diǎn),粗匹配精度更高。改進(jìn)RANSAC方法能得到更多的正確匹配點(diǎn)對(duì),實(shí)現(xiàn)了匹配正確率的大幅度提高,內(nèi)點(diǎn)比例更高,且耗時(shí)遠(yuǎn)低于傳統(tǒng)RANSAC方法。這說明本文方法對(duì)于水下圖像特征提取與匹配具有較好的效果。
Figure 9 Results of underwater image feature rough matching and purification based on the proposed method圖9 基于本文方法的水下圖像特征粗匹配與提純結(jié)果圖
Table 2 Comparison of underwater image registration results among different method
水對(duì)光的吸收和散射效應(yīng)降低了水下圖像的質(zhì)量,為了更好地配準(zhǔn)水下圖像,本文提出了一種改進(jìn)CNN-RANSAC的水下圖像特征配準(zhǔn)方法。首先利用基于深度CNN的水下圖像增強(qiáng)方法對(duì)模糊退化的水下圖像進(jìn)行增強(qiáng),有效地改善了圖像的亮度和對(duì)比度,并提高了對(duì)水下圖像的特征點(diǎn)提取數(shù)量。然后通過水下圖像分類數(shù)據(jù)集遷移學(xué)習(xí)訓(xùn)練VGGNet-16網(wǎng)絡(luò)框架,微調(diào)VGGNet中的權(quán)值參數(shù),使其更適用于水下圖像特征提取。通過修改后的網(wǎng)絡(luò)框架生成魯棒的多尺度特征描述符與特征點(diǎn),經(jīng)過特征粗匹配與動(dòng)態(tài)內(nèi)點(diǎn)選擇過程,使用改進(jìn)的RANSAC方法剔除誤匹配點(diǎn),完成水下圖像特征點(diǎn)的配準(zhǔn)。經(jīng)過大量水下圖像特征提取和匹配實(shí)驗(yàn),將實(shí)驗(yàn)結(jié)果與傳統(tǒng)的基于SIFT方法和SURF方法的配準(zhǔn)方法相比,本文方法能夠檢測到足夠多的特征點(diǎn),匹配精度更高,對(duì)水下圖像特征提取與匹配具有較好的效果。