李治遠,豆虎林,胡 俊,吳子敬,吳永亭
(1. 自然資源部第一海洋研究所,山東 青島 266061; 2. 山東水利職業(yè)學院,山東 日照 276826)
聲學探測是高效、精確地調查水體和海床狀況最好的方式,甚至常常是唯一可行的手段[1]。在眾多聲學設備中,側掃聲吶(side-scan sonar,SSS)系統(tǒng)因為低廉的價格,以及可以高效地獲取高分辨率海底地貌圖像等優(yōu)點,在海洋科學、海洋工程、水下搜救與目標識別等領域得到了廣泛的應用[2]。但由于作業(yè)模式及其成像機理的原因,側掃聲吶圖像存在局部畸變和位置偏差,按照地理編碼結果將不同條帶拼接到一起時,存在共視目標錯位的問題,不利于地貌信息的準確表達。
針對側掃聲吶圖像的配準,許多學者為此作了相關研究。文獻[3]提出基于SURF的共視目標分段配準方法,并通過小波變換實現(xiàn)圖像融合,該方法顧及局部畸變圖像特點,配準后共視目標一致性較好。文獻[4]研究了顧及畸變的側掃聲吶條帶圖像鑲嵌方法,提出了分塊提取特征思想以及基于薄板樣條的局部彈性配準方法,取得了很好的效果。文獻[5]研究了基于ORB(oriented brief)算法和KAZE算法的側掃聲吶配準方法,但在配準的過程中未顧及圖像局部畸變不一致的特點,當側掃聲吶采用拖曳作業(yè)模式或海底線提取不準確時,該方法拼接效果難以保證。文獻[6]提出了針對側掃聲吶圖像的分層特征匹配算法及基于非線性尺度空間的特征匹配算法,提高了特征點的匹配率。文獻[7—8]研究了基于SURF的側掃聲吶圖像配準,但同樣未顧及不同區(qū)域圖像變形程度不一致的問題。通過以上分析可以看出,現(xiàn)有關于側掃聲吶拼接的研究大都是先提取特征點,然后再進行特征匹配,最后以某種準則進行圖像的融合。但是,側掃聲吶圖像存在噪聲大、整體細節(jié)特征分量少的特點,大量穩(wěn)定的特征點不易獲取,這給配準帶了困難。近年來,圖像分割領域發(fā)展很快,出現(xiàn)了大量優(yōu)秀的算法,這給側掃聲吶圖像的結構化分析帶了可能。側掃聲吶圖像配準的最終目的就是保證相同目標拼接后輪廓一致,為此,本文提出一種基于目標輪廓的配準方法,期望能對現(xiàn)有配準方法進行補充。
本文所提出的聲吶圖像配準方法核心是輪廓點配準及圖像彈性變換模型的建立,下面分別對其詳細介紹。
在對圖像進行分割后,可以很容易地獲取不同分割區(qū)域的輪廓P={p1,p2,…,pn},其中,pi∈R2,為輪廓點在圖像上的坐標,n為輪廓上的點數(shù)。圖像配準的目的是找到兩幅圖像上像素的對應關系,對于圖像上的兩個輪廓來說就是找到它們邊界點的對應關系。邊界點的特征描述越豐富、越具有代表性,則在匹配時越不容易發(fā)生誤匹配。環(huán)境上下文(shape context,SC)是一種可以描述豐富特征的描述子,能夠表達出周圍點相對某一點的分布情況,具有很強的分辨能力,對于各種變形、異常值等具有很強的穩(wěn)健性,因此,很適合非剛性變換的點位匹配[9]。
對于輪廓上的任意一點pi(如圖1所示),以點pi為圓心的5個同心圓和過該點的6條直徑將以半徑為r的范圍內的區(qū)域分割成了60個區(qū)域,其中的一個區(qū)域如圖1中區(qū)域A(即式(1)中的bin(k))所示,通過統(tǒng)計落入每個區(qū)域除去pi以外輪廓點的個數(shù),得到pi周圍點位的分布直方圖hi,作為該點的SC描述。為了使SC具有尺度不變性,通常選擇所有輪廓點之間的平均距離作為r值。實際計算過程中,圓的個數(shù)及直徑的個數(shù)可調整,每個圓的半徑rc滿足條件log(rc)=c/log(r)(c=1,2,…,C,C為圓的個數(shù))。
(1)
由于SC是一種表示點位分布的直方圖,因此,可以用χ2檢驗作為度量兩個點匹配的損失函數(shù)Cij。
(2)
在定義了損失函數(shù)之后,兩個輪廓之間的配準就變?yōu)閷ふ沂沟脫p失函數(shù)之和最小時的輪廓點對應關系,而尋找最小損失值是一個雙邊圖配準問題,有很多方法可以解決此問題,本文采用文獻[10]中的方法。為了能夠穩(wěn)健地處理異常值,可以向輪廓點集合中添加虛擬的點并賦予其一個恒定的匹配損失值ε,當一個輪廓中的點pi在另一個輪廓中找不到損失值小于ε的匹配點qj時,就分配給pi一個損失值為ε的虛擬點,因此,可以將ε當作一個排除異常值的閾值。
(3)
通過輪廓配準可以找到輪廓上對應的點對,為了使兩幅聲吶圖像中的對應區(qū)域能夠重合到一起,還需要建立變換模型??紤]聲吶圖像存在局部畸變,不能簡單地用剛性變換來表示,本文采用薄板樣條函數(shù)(thin plate spline,TPS)作為變換函數(shù)。薄板樣條函數(shù)能夠將空間變換分解為一個全局仿射變換和一個局部非仿射變換[11],是一種應用較多的彈性變換方法。TPS插值函數(shù)可以使彎曲能量函數(shù)(如式(4)所示)的值取得最小,函數(shù)形式如式(5)所示。
(4)
f(x,y)=v=a1+axx+ayy+
(5)
式中,v表示坐標(x,y)經(jīng)變換后的橫坐標x′或縱坐標y′;U(r)是一個核函數(shù),定義為U(r)=r2logr2,r為兩個輪廓對應點對的歐氏距離,通常有U(0)=0。TPS函數(shù)有n+3個參數(shù),而f(x,y)=v只有n個方程,需要添加3個約束條件才能求解,即
(6)
綜上可得方程式組(7),方程組寫成分塊矩陣的形式如式(8),由文獻[12]可知方程組左側方陣是可逆的,因此,方程是有解的。
(7)
(8)
根據(jù)式(8)可分別解出x軸和y軸方向上的變換參數(shù)[a1(b1),ax(bx),ay(by),w1,w2,…,wn]T,則一幅圖像上的任意一點(x,y)的變換坐標(x′,y′)的計算公式為
(9)
當輪廓點存在噪聲時,可通過正則化來放寬插值的精度,實現(xiàn)的方式是使得式(10)取得最小值[13]。
(10)
正則化參數(shù)λ是一個正值,控制著平滑的程度。當λ=0時,矩陣塊U的對角元素均為零,式(10)退化為精確的插值,薄板樣條函數(shù)嚴格經(jīng)過各參考點;當λ=+∞,式(10)變?yōu)橐话愕姆律渥儞Q模型。求解方法是將式中U矩陣替換為U+λI,I是一個n×n的單位矩陣。
聲吶圖像配準流程如圖2所示,首先,對圖像A和B進行分割,分割方法不限,只要能夠有效地分割出圖像中的目標即可;其次,統(tǒng)計分割結果中目標的輪廓點集合,尋找對應的輪廓,方法有很多,如通過計算輪廓Hu矩、成對幾何直方圖(pairwise geometrcal histogram,PGH)等進行匹配,在匹配的過程中可根據(jù)地理位置坐標縮小搜索范圍,加快匹配過程;然后,根據(jù)找到的對應形狀,基于形狀上下文進行輪廓配準,得到輪廓上對應的點對;最后,基于薄板樣條函數(shù)建立彈性變換模型,同時進行數(shù)據(jù)融合,值得注意的是,兩幅圖像都應是側掃。
為驗證本文方法的有效性,分別進行模擬試驗及使用野外實測側掃聲吶圖像數(shù)據(jù)進行試驗。
模擬試驗采用I1、I2、I3及I4等4幅圖像進行(圖3中C1列),其中,I1、I2為模擬圖形,且I1為規(guī)則五角星、I2為不規(guī)則圖形;I3、I4為側掃聲吶圖像,且I3為凹陷目標、I4為凸起沉船目標。使用imgaug圖像增強庫對圖像進行隨機的分段仿射變換,來模擬圖像的局部形變,參數(shù)scale取0.01~0.06之間的隨機數(shù),變換后的結果如圖3中C2列所示。可以看出,4幅圖像均得到了不同程度的局部變形,模擬試驗通過變形前后輪廓匹配并計算變換參數(shù),且使用變換參數(shù)對變形后的圖像進行恢復,然后與原始圖像進行比較,以評價本文提出算法的有效性。
首先采用OpenCV中的grabcut分割算法對圖像進行簡單的分割并提取輪廓,結果如圖3中C3列所示;然后,計算輪廓點的形狀上下文并使用1.1節(jié)描述的算法進行輪廓點匹配,其中ε取值0.15,匹配的結果如圖3中C4列所示;最后,在找到對應的輪廓點之后使用1.2節(jié)中描述算法進行變換參數(shù)計算,其中λ取值0.25,根據(jù)計算得到的變換參數(shù)對目標輪廓進行恢復,結果如圖3中C5列所示。其中黑色點表示圖像恢復時的變形情況,從圖像上可以看出,進行分段仿射變換的圖像中目標的輪廓經(jīng)過恢復變換后與原始圖像中目標的輪廓重合度較好。對于圖像I4的結果進行局部放大,如圖4所示,其中(b)為輪廓點匹配結果的局部放大圖像,可以看出大部分輪廓點對得到了較好的匹配;(d)是根據(jù)變換參數(shù)恢復過來的圖像,可以看出經(jīng)TPS恢復的目標形狀能夠較好地與原始圖像保持一致。
為了量化說明試驗結果,分別對每個圖像原始輪廓點數(shù)、分段仿射變換圖像上目標輪廓點的個數(shù)、匹配上的點對數(shù),以及圖像恢復變換后與原始圖像上對應輪廓點之間的不符值中誤差進行了統(tǒng)計,統(tǒng)計結果見表1。從表中可以看出,通過目標形狀環(huán)境上下文匹配可以匹配到密集的點對,而且使用TPS插值函數(shù)函數(shù)建模,能夠有效描述圖像的局部形變,經(jīng)TPS恢復的目標輪廓中誤差最大為1.72像素,最小為沉船,0.77像素。
表1 匹配與變形恢復結果
使用實測側掃聲吶數(shù)據(jù)進行試驗,試驗的步驟及參數(shù)與模擬試驗相同,不同的是圖5中C1列和C2列的側掃聲吶圖像來自于不同測量條帶對于相同目標的測量結果??梢悦黠@地看出,由于復雜的水下測量環(huán)境、側掃聲吶姿態(tài)改正不完全及測量角度不一致等問題,側掃聲吶對于同一目標的測量結果具有較大的差異,盡管有較大的畸變,但是整體上還是能夠看出一定的相似性。以C1列的圖像為參考圖像,將C2列的圖像作為需要變換的圖像,在經(jīng)過形狀上下文的配準及TPS插值函數(shù)建模之后,C2列的圖像變換結果如C5列所示,盡管圖像局部畸變很大,但是經(jīng)過配準并形變建模后,圖像可以很好地恢復成參考圖的形狀,需要說明的是,C5列的圖像僅僅是由C2列圖像上每個像素點經(jīng)TPS計算出對應位置取整填充所得,因此,圖像上存在空缺,用灰度值0填充。
同樣的,對試驗結果進行量化統(tǒng)計,結果見表2,成功匹配的點對數(shù)比較密集,最大不符值中誤差為2.3像素,因此,通過TPS建立的變換模型能夠有效地描述側掃聲吶圖像的局部畸變。
表2 實測側掃聲吶數(shù)據(jù)匹配及變形恢復結果
針對側掃聲吶圖像存在局部畸變的問題,本文提出了一種基于輪廓的側掃聲吶圖像配準方法。試驗表明,本文方法不僅可以高效地獲得共視目標輪廓上點的對應關系,從而獲得大量的配準點對,而且能夠通過TPS函數(shù)對局部變形進行有效建模,這對于后面?zhèn)葤呗晠葓D像相鄰條帶拼接,以及側掃聲吶圖像與多波束地形疊加具有重要意義,是對現(xiàn)有基于SURF算子方法的補充。但同時也要注意到,本文方法需要準確地分割結果,當圖像比較雜亂時,效果會受到影響,未來可考慮通過增強并利用邊緣信息來改善算法性能。