許 殊 譚愛紅 秦梓杰
1武漢大學(xué)遙感信息工程學(xué)院,湖北 武漢,430079
2中國科學(xué)院空天信息創(chuàng)新研究院,北京,100094
3揚州市職業(yè)大學(xué)機械工程學(xué)院,江蘇 揚州,225009
航空影像密集匹配旨在為由原始影像及經(jīng)檢校和空三獲得的內(nèi)外方位元素生成的核線像對重疊區(qū)域中每個像素確定同名點。其結(jié)果可用于數(shù)字表面模型(digital surface model,DSM)、數(shù)字正射影像圖(digital orthophoto map,DOM)等傳統(tǒng)測繪產(chǎn)品的生產(chǎn)。此外,相較于激光雷達(dá)(light detection and ranging,Li DAR),密集匹配生成的點云具有色彩、紋理,點云密度高,是三維城市重建的重要數(shù)據(jù)源[1]。
密集匹配通常有代價計算、代價聚合、視差選擇或代價函數(shù)優(yōu)化、視差精化4個步驟[2]。依據(jù)光滑假設(shè)的使用方式,密集匹配方法分為局部方法、全局方法。一般全局方法速度慢,但效果優(yōu)于局部方法[3]。
局部立體匹配方法一般在代價聚合階段隱式使用光滑假設(shè)。由于已經(jīng)隱式考慮了光滑約束,其優(yōu)化過程退化為贏家通吃(winner take all,WTA)[4]。針對原始匹配代價,局部立體匹配方法假定圍繞待匹配點的某種窗口中的視差滿足一定條件,選擇相應(yīng)濾波手段,消除可能存在的一些噪聲。具體方法主要分為兩大類[5]:聚合窗口的選擇方式、聚合窗口內(nèi)權(quán)重確定方式。對于矩形聚合窗口,可以通過變換窗口大小或者偏移[6,7]、使用多窗口[8]、自由變換聚合窗口形狀[9?11]來實現(xiàn)聚合窗口的選擇。值得一提的是Patch?Match算法[12],首先為每個像素點隨機生成初始法向量;然后利用視、空間、時序等多種傳播過程優(yōu)化每個像素點對應(yīng)的法向量;最后進(jìn)行視差、法向量精化。最小二乘匹配[13]在密集匹配中的應(yīng)用解決了最小二乘初值問題,并在后續(xù)優(yōu)化中使用了稍有差別的方法。PatchMatch衍生出許多改進(jìn)方法[14?17]。另一大類方法通過改變聚合窗口內(nèi)每個像素的權(quán)重來提升聚合效果,其本質(zhì)是賦予不滿足窗口所使用假設(shè)的像素更低的權(quán)重[18]。其首見于文獻(xiàn)[19],它通過雙邊濾波的方式確定窗口內(nèi)權(quán)重,即依據(jù)距離中心像素的距離和與中心像素顏色距離來確定權(quán)重。此外也有測地線距離定權(quán)[20]、引導(dǎo)濾波定權(quán)[21]、利用空間通道可靠性定權(quán)[22]等方法。利用多尺度信息[23?25]、分割信息[26]輔助匹配也取得了相當(dāng)不錯的效果。航空影像對應(yīng)的地面結(jié)構(gòu)相對復(fù)雜,幅面一般較大。為更好地處理大像幅航空影像,并在深度不連續(xù)處獲得較好的結(jié)果,本文提出了一種改進(jìn)的基于引導(dǎo)濾波的快速密集匹配方法——基于Census測度的快速引導(dǎo)濾波匹配(fast matching with Census cost and guided fil?ter,F(xiàn)CG),旨在提高匹配效率和匹配正確性。
本文使用具有一定抗差能力的Census測度計算匹配代價。具體過程如下:①針對以目標(biāo)點和待匹配點為中心的目標(biāo)窗口和搜索窗口內(nèi)的像素,根據(jù)其與中心像素的灰度關(guān)系進(jìn)行二值編碼;②對兩編碼串按照式(1)計算Hamming距離作為代價:
式中,C(i,l)為i像素視差為1時的原始代價;Cr(·)為r×r階的Census特征;I、I′分別為左右灰度影像;i、il分別為左影像i像素及視差為l時在右影像上的對應(yīng)像素;h(·,·)表示Hamming距離。
影像上的視差分布并不是簡單的均一分布[27],考慮到計算全部候選視差的方法效率低,且匹配解空間過大會引起匹配錯誤,本文首先將稀疏匹配獲得的尺度不變特征變換(scale?invariant feature trans?form,SIFT)點對[28]轉(zhuǎn)換到核線影像坐標(biāo)系下,在使用核線約束對其進(jìn)行檢查后,統(tǒng)計其視差分布情況。此外,對原始影像按規(guī)則格網(wǎng)進(jìn)行分塊,對其使用相關(guān)系數(shù)進(jìn)行匹配,并記錄通過左右一致性檢查的格網(wǎng)點的視差分布情況。統(tǒng)計上述兩種來源的視差出現(xiàn)次數(shù)之和,并按每一個視差在匹配結(jié)果中出現(xiàn)的頻次降序排列,選擇前30%的視差作為候選視差序列。
對應(yīng)某個視差的代價影像是在給定一個視差值的情況下,將每個像素依據(jù)當(dāng)前視差計算得到的代價作為灰度值記錄在對應(yīng)像素位置上所生成的影像。將引導(dǎo)濾波應(yīng)用于代價聚合就是將左核線影像和代價影像分別作為引導(dǎo)影像和參考影像,依據(jù)窗口內(nèi)的均值、方差計算濾波的加性系數(shù)和乘性系數(shù),以此求得濾波代價,代價聚合計算公式如下:
式中,Cjl為j像素在視差為l時的原始代價;Cil′為j像素在視差為l時聚合后的代價;G為引導(dǎo)影像;Wij為j像素對于中心像素i的權(quán),可寫成:
式中,|ω|為歸一化系數(shù),即窗口ωk中的像素數(shù);Ii、Ij分別為引導(dǎo)影像上i、j像素的灰度;μk、分別為引導(dǎo)影像I在窗口ωk中的灰度均值和方差;ε為光滑系數(shù)。
為加快計算速度,其實際計算公式為:
式中,qi為輸出影像上i像素的值;ak、bk為由參考影像計算出的線性變換參數(shù),可表達(dá)為:
式中,pi表示參考影像上像素i的灰度值;為參考影像p在窗口ωk中的灰度均值。
由于參數(shù)變化較緩慢,本文先對原始影像降采樣計算參數(shù),再將其上采樣到原始分辨率來加快計算速度。本文重復(fù)使用不變參數(shù),首次計算后存留后用。
實驗系統(tǒng)環(huán)境為Windows 10操作系統(tǒng),8 GB內(nèi)存,i7中央處理器(central processing unit,CPU),實驗數(shù)據(jù)為由德國Vaihingen地區(qū)航攝影像生成的一對像素為2 200×1 400的核線影像以及Middlebury[2,29]數(shù)據(jù)集的Cones、Teddy像對。
表1展示了不同參數(shù)組合下FCG方法的處理時間。圖1展示了樣例區(qū)域原始影像及利用FCG方法在不同實驗方案下得到的結(jié)果。較大的計算或聚合窗口的抗噪能力強,結(jié)果光滑,但消耗時間多。由于FCG方法優(yōu)化了代價聚合,聚合窗口對時間的影響要小于計算窗口對時間的影響。
表1 FCG方法在不同參數(shù)配置下的處理時間Tab.1 Processing Time of FCG Method Under Different Parameter Configurations
圖1 不同參數(shù)視差圖Fig.1 Disparity Images of Different Parameters
本文將FCG、基于梯度顏色差代價的盒狀濾波匹 配(matching with gradient and color difference cost and box fiter,GB)、基于梯度顏色差代價的引導(dǎo)濾波匹配(matching with gradient and color difference cost and guided fiter,GG)、Census測度盒狀濾波的匹配(matching with Census cost and boxing filter,CB)、基于Census測度引導(dǎo)濾波的匹配(matching with Census cost and guided filter,CG)、Local Ex?pansion(LE)[30]、傾斜平面光滑立體匹配(slanted plane smoothing stereo,SPSS)[31]方法進(jìn)行對比。參數(shù)設(shè)置見表2。
表2 對比實驗參數(shù)設(shè)置/像素Tab.2 Parameter Setting of Contrast Experiment/pixel
原始影像及不同方法獲取的結(jié)果見圖2。其中,藍(lán)色方框中樓房邊緣深度不連續(xù)和遮擋區(qū)的局部放大圖見圖3,紅色方框中視差傾斜變化和紋理重復(fù)區(qū)的局部放大圖見圖4。
圖2 原始影像及不同方法獲取的結(jié)果Fig.2 Original Image and Images Obtained by Different Methods
圖3 圖2中藍(lán)色方框局部放大圖Fig.3 Local Enlarged Images of Blue Boxes in Fig.2
圖4 圖2中紅色方框的局部放大圖Fig.4 Local Enlarged Images of Red Boxes in Fig.2
由圖2可知,F(xiàn)CG方法獲得的視差圖較為光滑一致,沒有明顯的噪聲或大面積錯點,且能較好地保留物體深度不連續(xù)的結(jié)構(gòu)。觀察紅框區(qū)域,發(fā)現(xiàn)FCG在重復(fù)紋理、視差傾斜變化區(qū)表現(xiàn)較好。在淡綠色箭頭指示區(qū)域,GB、GG方法表現(xiàn)出雜亂的視差變化,CB出現(xiàn)了明顯的噪聲點,而FCG、CG、SPSS、LE方法在此區(qū)域均表現(xiàn)優(yōu)秀。觀察藍(lán)框區(qū)域可知,GB、CB在深度不連續(xù)區(qū)域表現(xiàn)不佳,其視差變化未能與邊緣保持一致。觀察黃色箭頭區(qū)域,其結(jié)果呈現(xiàn)一定扭曲,將使重建房屋扭曲變形。而GB、GG在該區(qū)出現(xiàn)了明顯亮點,意味著結(jié)果中有大異常值,后續(xù)生成的三維點云里將會出現(xiàn)飛點。GB、CB方法在全片上還出現(xiàn)了大量錯點,而FCG、GG、CG方法表現(xiàn)優(yōu)秀。FCG、CB、CG方法比GB、GG方法在左上角紋理重復(fù)區(qū)表現(xiàn)更優(yōu)。SPSS與LE在上述位置表現(xiàn)優(yōu)秀,但LE在粉色箭頭指示區(qū)出現(xiàn)了視差異常線,SPSS在黑色箭頭指示區(qū)賦予房屋邊緣與地面陰影相同的視差。相較于各類局部算法,F(xiàn)CG結(jié)果更優(yōu),其結(jié)果和LE與SPSS相比并未有太大質(zhì)量退化。
各方法用時見表3,F(xiàn)CG快于GB、CB方法,比CG快約97%,且其明顯快于LE、SPSS,其耗時約為LE的0.4%,SPSS的1%。
表3 不同方法的處理時間Tab.3 Processing Times of Different Methods
由于航空影像缺少評價結(jié)果的真值,本文使用Middlebury測試數(shù)據(jù)集中的Teddy、Cones像對評價算法的正確性。雖有區(qū)別,但其結(jié)果仍可部分反映匹配質(zhì)量。正確匹配為計算所得視差與真值視差之差小于一個像素。計算結(jié)果見表4,可以看出,F(xiàn)CG效果和原始方法接近,與半全局和全局方法大體相當(dāng)。
表4 不同方法在Middlebury數(shù)據(jù)集Cones、Teddy像對上的正確率/%Tab.4 Correctness Matched by Different Methods of Cones and Teddy Image Pairs in Middlebury Dataset/%
針對航空影像場景復(fù)雜,幅面大的特點,本文提出了一種快速并在重復(fù)紋理、深度不連續(xù)處表現(xiàn)良好的基于快速引導(dǎo)濾波的密集匹配算法。相較于其他局部匹配方法,該方法速度更快,在深度不連續(xù)、重復(fù)紋理處匹配質(zhì)量更好;相較于半全局方法和全局方法,該方法在保證匹配質(zhì)量與其相當(dāng)?shù)耐瑫r,速度上有明顯優(yōu)勢。