本發(fā)明涉及圖像處理技術(shù)領(lǐng)域,更具體的,涉及一種立體測繪衛(wèi)星影像匹配可疑區(qū)域自動檢測方法。
背景技術(shù):
在衛(wèi)星、航空立體影像匹配獲取數(shù)字表面模型(digitalsurfacemodel,dsm)的過程中,由于大的地形坡度或遮擋,大面積陰影、水域、厚云,曝光過度等因素的存在,導(dǎo)致有些區(qū)域匹配錯誤。在存在冗余觀測的條件下,這些錯誤區(qū)域往往是可以修補的。如果能自動檢測出這些錯誤區(qū)域,將會顯著提高大區(qū)域、多影像冗余條件下dsm提取的自動化程度。
左右匹配結(jié)果一致性檢測是一種傳統(tǒng)的可疑區(qū)域檢測方法,對遮擋區(qū)域的檢測成功率較高。但也要借助碎片過濾等輔助手段才能使可疑區(qū)域去除的更加干凈。而對大面積陰影、水域、厚云,曝光過度等因素造成的錯誤匹配,單靠左右匹配結(jié)果一致性檢測很難將錯誤區(qū)域去除干凈,而且由于左右匹配一致性門限設(shè)的過低可能會將一些正確的匹配區(qū)域去除。若要提高可疑匹配區(qū)域的檢測成功率,需要綜合多種可疑區(qū)域檢測方法。
技術(shù)實現(xiàn)要素:
本發(fā)明提出一種立體測繪衛(wèi)星影像匹配可疑區(qū)域自動檢測方法,可充分地消除由于現(xiàn)有技術(shù)的限制和缺陷導(dǎo)致的一個或多個問題。
本發(fā)明另外的優(yōu)點、目的和特性,一部分將在下面的說明書中得到闡明,而另一部分對于本領(lǐng)域的普通技術(shù)人員通過對下面的說明的考察將是明顯的或從本發(fā)明的實施中學(xué)到。通過在文字的說明書和權(quán)利要求書及附圖中特別地指出的結(jié)構(gòu)可實現(xiàn)和獲得本發(fā)明目的和優(yōu)點。
本發(fā)明提供了一種立體測繪衛(wèi)星影像匹配可疑區(qū)域自動檢測方法,其特征在于,所述方法包括以下步驟:
步驟1,生成立體影像的核線立體影像對,所述核線立體影像對包括左核線影像和右核線影像;
步驟2,讀取所述核線立體影像對,并通過對所述核線立體影像對的左核線影像和右核線影像分別進行小波變換,建立所述左核線影像和右核線影像的各自的影像金字塔;其中,所述影像金字塔包括多層金字塔影像,原始讀取的左核線影像和右核線影像為第一層金字塔影像,經(jīng)小波變換后得到的第二層及第二層以上的金字塔影像均包括一個影像區(qū)域和三個紋理區(qū)域;
步驟3:對頂層以下的每一層左、右核線影像,逐層確定可疑區(qū)域。
優(yōu)選的,采用投影軌跡法生成立體影像的核線立體影像對。
優(yōu)選的,步驟2中的小波變換的過程具體包括:將第i層金字塔影像作為原核線影像,對所述第i層金字塔影像進行小波變換,得到第i+1層核線影像,i為大于1的整數(shù),其中,所述第i+1層核線影像包括左上、右上、左下、右下四個區(qū)域的影像,其中,左上區(qū)域的影像為影像區(qū)域,其包含長寬均為原核線影像二分之一的縮小影像,右上、左下和右下這三個區(qū)域為紋理區(qū)域,其包含了原核線影像的紋理信息。
優(yōu)選的,根據(jù)下式計算小波變換后的影像區(qū)域第k行j列的灰度g0(j,k),右上紋理區(qū)域第k行,w/2+j列的灰度g1(w/2+j,k),左下紋理區(qū)域第h/2+k行,j列的灰度g2(j,h/2+k),右下紋理區(qū)域第h/2+k行,w/2+j列的灰度g3(w/2+j,h/2+k):
其中,cu、cv和du、dv分別為小波變換所使用的低通濾波器和高通濾波器的系數(shù),h、w分別為小波變換前的原核線立體影像的長和寬。
優(yōu)選的,步驟3具體包括以下子步驟:
步驟3.1,獲取當(dāng)前層左、右核線影像的視差初值,用于確定當(dāng)前層左(右)核線影像每個像點視差搜索起點和搜索范圍;
步驟3.2,對當(dāng)前層小波變換后得到的紋理區(qū)域進行紋理分析,確定紋理缺失點和非紋理缺失點;
步驟3.3,基于步驟3.2確定的每個像點的視差搜索起點和搜索范圍,計算左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價;
步驟3.4,對所述左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價進行全局優(yōu)化,以基于不同路徑組合和對應(yīng)平滑模型獲取多對視差圖,
步驟3.5,基于步驟3.4確定的基于不同路徑組合和對應(yīng)平滑模型獲取的四對視差圖,初步確定影像中的可疑區(qū)域;
步驟3.6,進行左右匹配一致性檢測,將符合左右一致性檢測的點標(biāo)記為有效點,不符合左右一致性檢測的點標(biāo)記為無效點;
步驟3.7,基于步驟3.2的紋理分析結(jié)果,對步驟3.6確定的視差圖有效點和無效點進行碎片過濾;
步驟3.8,將經(jīng)碎片過濾后的所有無效點對應(yīng)的區(qū)域確定為當(dāng)前層最終的可疑區(qū)域。
優(yōu)選的,步驟3.2具體包括以下子步驟:
步驟3.2.1,將小波變換后得到的三個紋理區(qū)域疊加后形成一幅二值圖,用0代表有紋理,255代表無紋理;
步驟3.2.2,對該二值圖作膨脹處理后,確定紋理缺失點和非紋理缺失點。
優(yōu)選的,步驟3.3具體包括以下子步驟:
步驟3.3.1,對通過步驟1獲得的左核線影像和右核線影像進行census變換,獲得左核線影像和右核線影像的每個像點的census值;
步驟3.3.2,基于步驟3.3.1計算的每個像點的census值,計算左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價。
優(yōu)選的,步驟3.3.2中的“計算左核線影像-右核線影像匹配代價”具體包括以下子步驟:
步驟3.3.2.1,選取左核線影像的一個像點p,并確定所述左核線影像的像點p在視差搜索范圍內(nèi)的n個候選視差d1,d2,…dn(n為大于1的整數(shù));
步驟3.3.2.2,確定所述像點p的每個候選視差d1,d2,…dn對應(yīng)的右核線影像的像點p1’,p2’,…,pn’;
步驟3.3.2.3,分別計算所述左核線影像的像點p的census值和所述右核線影像的像點p1’,p2’,…,pn’中的每個像點的census值之間的距離值,將計算得到的n個距離值組成的數(shù)組記為像點p的匹配代價數(shù)組;
步驟3.3.2.4,選取左核線影像的其他像點,重復(fù)步驟3.2.1-3.2.3,計算得到左核線影像的所有像點的匹配代價數(shù)組,所述左核線影像的所有像點的匹配代價數(shù)組為所述左核線影像-右核線影像匹配代價。
本發(fā)明還提供了一種計算機程序,當(dāng)由處理器執(zhí)行所述計算機程序時,執(zhí)行上述任一實施例所述的方法。
本發(fā)明還提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)中存儲有計算機程序,當(dāng)由處理器執(zhí)行所述計算機程序時,執(zhí)行上述任一實施例所述的方法。
本發(fā)明具有以下優(yōu)點:
(1)可以實現(xiàn)高效的厚云自動檢測和剔除,后續(xù)生成數(shù)字表面模型(digitalsurfacemodel,dsm)環(huán)節(jié)不受厚云干擾,從而可以獲取“干凈”的dsm。
(2)可以實現(xiàn)高效的遮擋區(qū)域檢測。
(3)可以實現(xiàn)高效的大面積水域檢測。
(4)可以實現(xiàn)高效的無紋理陰影區(qū)域檢測。
附圖說明
圖1是根據(jù)本發(fā)明實施例的、立體測繪衛(wèi)星影像匹配可疑區(qū)域自動檢測方法的流程圖。
圖2a是根據(jù)本發(fā)明實施例的、原核線影像(即第一層金字塔影像)的示意圖。
圖2b是根據(jù)本發(fā)明實施例的、通過小波變換生成的第二層金字塔影像的示意圖。
圖2c是根據(jù)本發(fā)明實施例的、通過小波變換生成的第三層金字塔影像的示意圖。
圖3是16個消息傳播路徑示意圖。
圖4是sgm的雙參數(shù)模型(p1、p2)和huber模型。
圖5是左核線影像與左-右方向匹配獲取的視差圖。
圖6是右核線影像與右-左方向匹配獲取的視差圖。
圖7是未經(jīng)可疑檢測獲取的dsm與本方法對厚云區(qū)域檢測并剔除后獲取的dsm對比圖。
圖8本方法對大面積水域的檢測反應(yīng)在dsm上的效果圖。
圖9本方法對無紋理陰影區(qū)域的檢測反應(yīng)在dsm上的效果圖。
具體實施方式
下面對本發(fā)明進行更全面的描述,其中說明本發(fā)明的示例性實施例。
如圖1所示,本發(fā)明提出的立體測繪衛(wèi)星影像匹配可疑區(qū)域自動檢測方法包括以下步驟:
步驟1,生成立體影像的核線立體影像對,所述核線立體影像對包括左核線影像和右核線影像;
根據(jù)本發(fā)明的優(yōu)選實施例,采用投影軌跡法生成立體影像的核線立體影像對。通過投影軌跡法生成立體影像的核線立體影像對是本領(lǐng)域的公知技術(shù),在此不再贅述。
步驟2,讀取所述核線立體影像對,并通過對所述核線立體影像對的左核線影像和右核線影像分別進行小波變換,建立所述左核線影像和右核線影像的各自的影像金字塔,其中,所述影像金字塔包括多層金字塔影像,原始讀取的左核線影像和右核線影像為第一層金字塔影像,經(jīng)小波變換后得到的第二層及第二層以上的金字塔影像均包括一個影像區(qū)域和三個紋理區(qū)域;
影像金字塔指將影像進行降采樣處理得到的縮小影像,即,影像金字塔就是長、寬依次遞減二分之一的多個小波變換影像(及紋理影像)。
步驟2中的小波變換的過程具體包括:將第i層金字塔影像作為原核線影像,對所述第i層金字塔影像進行小波變換,得到第i+1層核線影像,i為大于1的整數(shù),其中,所述第i+1層核線影像包括左上、右上、左下、右下四個區(qū)域的影像,其中,左上區(qū)域的影像為影像區(qū)域,其包含長寬均為原核線影像二分之一的縮小影像,右上、左下和右下這三個區(qū)域為紋理區(qū)域,其包含了原核線影像的紋理信息。小波變換后的三個紋理區(qū)域和影像區(qū)域的長寬相同。
下面根據(jù)圖2a-2c進行舉例說明,建立的影像金字塔如圖2a-2c所示,其中,圖2a是原核線影像(即第一層金字塔影像),圖2b是對第一層金字塔影像縮小2倍后得到第二層金字塔影像,圖2c是將圖2b的第二層金字塔影像再縮小2倍得到第三層金字塔影像。原核線影像沒有紋理影像,從第二層金字塔影像開始有紋理影像,第三層金字塔影像是將第二層金字塔影像的影像區(qū)域作為原影像做小波變換獲取的影像區(qū)域和紋理區(qū)域,依次類推。
如圖2a-2c所示,縮小一次,影像的長寬變?yōu)樯弦粚拥亩种?,其中,將影像的長寬最小的一層稱為頂層影像,在圖2a-2c中,將圖2c所示的圖像稱為頂層影像。
下面的小波變換過程就是由每一層影像獲取下一層影像的計算過程,即,將小波變換后長、寬均為原影像二分之一的影像區(qū)域作為“原影像”進行小波變換的過程。以下對小波變化過程進行詳細描述:
本方法是對核線立體影像對的左核線影像和右核線影像都進行了小波變換,即,對左核線影像和右核線影像分別進行小波變換,分別生成左核線影像和右核線影像的各自的影像金字塔。設(shè)小波變換前的原核線立體影像對的左核線影像和右核線影像長寬相同,分別為h、w,則對其進行小波變換后的核線立體影像對的左核線影像和右核線影像的長寬分別為h1=h/2,w1=w/2。
小波變換前的核線立體影像對的左核線影像和右核線影像為原核線影像,其作為第一層金字塔影像,對所述核線立體影像對的左核線影像和右核線影像分別進行小波變換后得到各自的第二層金字塔影像,所述第二層金字塔影像包括左上、右上、左下、右下四個區(qū)域的影像,其中,左上區(qū)域的影像為影像區(qū)域,其包含長寬均為原核線影像二分之一的縮小影像,右上、左下和右下這三個區(qū)域為紋理區(qū)域,其包含了原核線影像的紋理信息。
得到左右核線影像的第二層金字塔影像后,將所述第二層金字塔影像作為新的原始影像,對其進行小波變換后得到如圖2c所示的第三層金字塔影像(包括一個影像區(qū)域和三個紋理區(qū)域)。依次類推,可以到第四、第五層金字塔影像。根據(jù)本發(fā)明的優(yōu)選實施例,金字塔影像的層數(shù)為5層。
小波變換后的一個影像區(qū)域和三個紋理區(qū)域的灰度值都是在一個4*4窗口內(nèi)根據(jù)濾波器系數(shù)加權(quán)累加求和的結(jié)果。具體的,根據(jù)下式計算小波變換后的影像區(qū)域第k行j列的灰度g0(j,k),右上紋理區(qū)域第k行,w/2+j列的灰度g1(w/2+j,k),左下紋理區(qū)域第h/2+k行,j列的灰度g2(j,h/2+k),右下紋理區(qū)域第h/2+k行,w/2+j列的灰度g3(w/2+j,h/2+k):
其中,cu、cv和du、dv分別為小波變換所使用的低通濾波器和高通濾波器的系數(shù),h、w分別為小波變換前的原核線立體影像的長和寬。
根據(jù)本發(fā)明的優(yōu)選實施例,小波變換低通濾波器系數(shù)為:
c0=0.341706351,c1=0.591906350,c2=0.158493649,c3=-0.091506350。
小波變換高通濾波器系數(shù)為:
d0=0.091506350,d1=0.158493649,d2=-0.591906350,d3=0.341706351。
步驟3,對于頂層以下的每一層影像金字塔的左核線影像和右核線影像,逐層確定所述左核線影像和右核線影像中的可疑區(qū)域;
設(shè)金字塔層數(shù)為n,則頂層為第n-1層,以下依次為n-2層、n-3層、...、0層,0層也成為底層,即初始左、右核線影像層。
將左、右核線影像每個像點的視差搜索范圍都設(shè)為h,搜索起始視差設(shè)為-h/2。通常,通過sgm匹配方法獲取金字塔頂層左、右核線影像視差。頂層不進行可疑區(qū)域檢測。
對第n-2層到第0層逐層確定可疑區(qū)域,具體來說,包括以下子步驟:
步驟3.1,獲取當(dāng)前層左、右核線影像的視差初值,所述視差初值用于確定當(dāng)前層左核線影像和右核線影像中的每個像點視差搜索起點和搜索范圍;
設(shè)左(右)核線影像某個像點p在圖3所示的0-15鄰接像點視差最小值和最大值為ddown和dup,則像點p的視差搜索范圍為ddown-dd到dup+dd,dd為搜索范圍的余量,即,在ddown和dup確定的范圍的基礎(chǔ)上將搜素范圍加大的余量,本發(fā)明設(shè)為3。
通過上一層匹配獲取了上一層左、右核線影像的視差,由于當(dāng)前層左、右核線影像長寬為上一層的兩倍,所以通過將坐標(biāo)映射到上一層的方法獲取當(dāng)前層左、右核線影像的視差初值。具體為:
設(shè)當(dāng)前層左(右)核線影像任意一像點坐標(biāo)為(j,k)(第j列,第k行),則對應(yīng)上一層左(右)核線影像的坐標(biāo)為(j/2,k/2),設(shè)上一層左(右)核線影像(j/2,k/2)點的視差為dlast,若dlast為有效值,則當(dāng)前層左(右)核線影像(j,k)點視差為dlast*2,若dlast為無效值,則在上一層左(右)核線影像的視差圖中以當(dāng)前點(j/2,k/2)為中心向圖3所示的第0到7方向在一定距離范圍內(nèi)(如7個像素)搜索有效點,假設(shè)搜索到m(m=1,2,...,8)個有效點,視差分別為d0,d1,...,dm-1,對應(yīng)搜索距離為s0,s1,...,sm-1,通過距離倒數(shù)加權(quán)法計算擬合視差dfit:
其中,dfit為擬合視差,l為范圍在0到m-1的下標(biāo)變量,sall為m個方向距離倒數(shù)之和,sl為第l個搜索距離。
則當(dāng)前層左(右)核線影像(j,k)點視差為dfit×2。
若沒有搜索到有效點(m=0),當(dāng)前層左(右)核線影像(j,k)點視差為dlast,即也為無效值。
步驟3.2,對當(dāng)前層小波變換后得到的紋理區(qū)域進行紋理分析,確定紋理缺失點和非紋理缺失點;若當(dāng)前層為第0層,則將當(dāng)前層左(右)核線影像第0層行、列坐標(biāo)(j,k)除以2映射到第一層得到對應(yīng)行列坐標(biāo)(j/2,k/2)。若第一層左(右)核線影像點(j/2,k/2)為紋理缺失點,則當(dāng)前層左(右)核線影像點(j,k)為紋理缺失點,否則為非紋理缺失點。若當(dāng)前層為第1層到第n-2層,則通過下述方法確定紋理缺失點和非紋理缺失點。
如圖2a-c所示,當(dāng)前層左右核線影像小波變換后的影像區(qū)域存儲在左上四分之一區(qū)域,其余三個區(qū)域包含了紋理信息。
具體來說,步驟3.2具體包括以下子步驟:
步驟3.2.1,將小波變換后得到的三個紋理區(qū)域疊加后形成一幅二值圖,用0代表有紋理,255代表無紋理;
步驟3.2.2,對該二值圖作膨脹處理后,確定紋理缺失點和非紋理缺失點。
具體來說,對每個0值點,以該點為中心向上下方向和兩個斜45度方向在一定閾值范圍d內(nèi)檢測值為255的點(閾值d的選擇與分辨率有關(guān),設(shè)影像分辨率為r,則d=int(9/r),int表示對浮點數(shù)取整),若檢測到一個以上值為255的點,將該0值標(biāo)記為255。最終所有值為0的點表示紋理缺失點,值為255的點為非紋理缺失點。
步驟3.3,基于步驟3.1確定的每個像點視差搜索起點和搜索范圍,計算左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價;
步驟3.3計算匹配代價的過程就是計算“一定視差范圍”內(nèi)的左右核線影像對應(yīng)像點的census距離,這里的“一定視差范圍”如d0、d1、…dm-1,就是3.1里利用上一層視差確定的每個像點視差搜索起點和搜索范圍,d0就是搜索起點,d0、…dm-1m為搜索范圍。
步驟3.3具體包括以下子步驟:
步驟3.3.1,對通過步驟1獲得的左核線影像和右核線影像進行census變換,獲得左核線影像和右核線影像的每個像點的census值;
對投影軌跡法獲取的左核線影像和右核線影像(即,核線立體影像對的兩幅圖像)作census變換;census變換方法為:以左核線影像或右核線影像的某個像點為中心設(shè)置m*n窗口,對比m*n窗口內(nèi)每個點的灰度與窗口中心點的灰度大小,若窗口內(nèi)某一點的灰度大于中心灰度,則設(shè)置標(biāo)簽1,否則設(shè)置標(biāo)簽0,這樣每個點都表示為m*n個由0和1組成的數(shù)字串,即每個像點的census值為m*n個由0和1組成的數(shù)字串。
步驟3.3.2,基于步驟3.3.1計算的每個像點的census值,計算左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價。
步驟3.3.2中的“計算左核線影像-右核線影像匹配代價”具體包括以下子步驟:
步驟3.3.2.1,選取左核線影像的一個像點p,并確定所述左核線影像的像點p在視差搜索范圍內(nèi)的n個候選視差d1,d2,…dn(n為大于1的整數(shù));
步驟3.3.2.2,確定所述像點p的每個候選視差d1,d2,…dn對應(yīng)的右核線影像的像點p1’,p2’,…,pn’;
其中,左核線影像的像點p的一個候選視差對應(yīng)右核線影像的一個像點,即,像點p的每個候選視差d1,d2,…dn與右核線影像的像點p1’,p2’,…,pn’是一一對應(yīng)的。
步驟3.3.2.3,分別計算所述左核線影像的像點p的census值和所述右核線影像的像點p1’,p2’,…,pn’中的每個像點的census值之間的距離值,將計算得到的n個距離值組成的數(shù)組記為像點p的匹配代價數(shù)組;
例如,在步驟4.1已經(jīng)獲得左核線影像和右核線影像的每個像點的census值,假設(shè)像點p的候選視差d1對應(yīng)右核線影像的像點p1’,則像點p的census值和像點p1’的census值的距離值即為像點p的視差d的匹配代價。像點p的census值和像點p1’的census值的距離值的計算方法為:依次對比像點p和p1’的census變換值的0、1數(shù)字串對應(yīng)位置數(shù)字不同的個數(shù)n’,n’即為p與p’間的census距離。依次計算像點p在所有視差的匹配代價,即得到像點p的匹配代價數(shù)組,數(shù)組的長度等于候選視差的個數(shù)。
步驟3.3.2.4,選取左核線影像的其他像點,重復(fù)步驟4.2.1-4.2.3,計算得到左核線影像的所有像點的匹配代價數(shù)組,所述左核線影像的所有像點的匹配代價數(shù)組為所述左核線影像-右核線影像匹配代價。
計算右核線影像-左核線影像匹配代價的方式與上面描述的計算左核線影像-右核線影像匹配代價的方式類似,在此不再贅述。
左核線影像獲取的影像金字塔頂層(分辨率最低層)的匹配代價存儲為一個以區(qū)域最低高程和最高高程對應(yīng)視差范圍內(nèi)的匹配代價立方體的形式,立方體的長、寬分別對應(yīng)影像區(qū)域的長、寬,立方體的高等于視差范圍,設(shè)立方體中某一元素三維坐標(biāo)為(x,y,z),則對應(yīng)匹配代價為左核線影像x行、y列像素的census變換數(shù)字串與視差z對應(yīng)的右核線影像像素的census變換數(shù)字串間的census距離。頂層以后的每一層每個像素僅計算以上一層金字塔計算的視差為中心的一定視差范圍內(nèi)的視差對應(yīng)的census距離,因此需要存儲最小視差、視差范圍及每個視差對應(yīng)的census距離。
步驟3.4,對所述左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價進行全局優(yōu)化,以基于不同路徑組合和對應(yīng)平滑模型獲取多對視差圖;
每個像點p對應(yīng)搜索范圍內(nèi)的多個候選視差中只有一個視差是正確的,這需要通過步驟3.4的全局優(yōu)化來確定每個像點的視差。
計算完所述左-右匹配代價和右-左匹配代價后,可以通過兩種方法(局部算法和全局優(yōu)化算法)獲取像點的視差,全局優(yōu)化算法較局部算法魯棒性更強,有云區(qū)域和無云區(qū)域在匹配穩(wěn)定性上對比更加明顯,所以對所述左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價進行全局優(yōu)化。
根據(jù)本發(fā)明的優(yōu)選實施例,采用基于消息傳播的優(yōu)化策略,對所述左核線影像-右核線影像匹配代價和右核線影像-左核線影像匹配代價進行全局優(yōu)化。消息傳播的16個方向如圖3所示,中心點表示接收消息的像素,周圍16個像素表示16個傳播來向上最近的像素。對每個像對匹配方向(左核線影像-右核線影像方向和右核線影像-左核線影像方向這兩個方向)采用四種消息傳播路徑組合,分別是:
路徑組合1:0、12、1、13;
路徑組合2:4、14、5、15;
路徑組合3:2、9、3、8;
路徑組合4:6、11、7、10。
全局優(yōu)化匹配方法以全局能量最小化為目標(biāo),通常采用如下形式的能量方程:
其中,e(d)表示全局能量大小,d表示整幅影像的“視差圖”,q為像素p的相鄰像素,np表示像素p相鄰像素的合集。dp和dq表示像素p和像素q的視差。c表示像素p在視差為dp時的左、右核線影像的像素的相似程度,s為平滑項,表示dp和dq不同時施加的懲罰。
平滑項模型采用兩種(如圖4所示),一種是半全局匹配采用的雙參數(shù)模型,所謂雙參數(shù)模型指消息傳播來向的像素的某一視差d0與目標(biāo)像素的某一視差d1差異等于1時在d0對應(yīng)匹配代價l的基礎(chǔ)上施加懲罰參數(shù)p1,視差差異大于1時施加懲罰p2,要求p1<p2;另一種是huber模型,huber模型是一個漸變模型,假設(shè)消息傳播來向的像素的某一視差d0與目標(biāo)像素的某一視差d1差異等于dx,則施加懲罰ph計算方法為:
其中,a為設(shè)置參數(shù),a的大小決定了懲罰參數(shù)隨視差詫異dx變化的程度。
對路徑組合1和2采用雙參數(shù)模型,但參數(shù)p1、p2的大小不一致,對路徑組合3和4采用huber模型,但具體參數(shù)a大小也不一致。
全局優(yōu)化之后將得到每個像點優(yōu)化之后的匹配代價l,l的形式與全局?jǐn)?shù)據(jù)項c類似,為一個長度等于像點搜索范圍dmax的數(shù)組。數(shù)組中最小值的序號dmin(數(shù)組下標(biāo)0,1,…,dmax-1)加上該像點的最小視差ds即該像點的視差dend。該像點列坐標(biāo)col和視差dend相加得到右核線影像對應(yīng)像點列坐標(biāo)col’,左右準(zhǔn)核線影像兩個像點行坐標(biāo)row相同。由左、右準(zhǔn)核線影像像點坐標(biāo)和左、右準(zhǔn)核線影像各自rpc進行前方交會可以得到對應(yīng)的地面坐標(biāo)(經(jīng)度l、緯度b和高程h)。前方交會及后續(xù)的數(shù)據(jù)處理不屬于本發(fā)明內(nèi)容,本發(fā)明只需獲取左、右準(zhǔn)核線影像每個像點的視差,由于視差有正負,為了便于展示,將視差轉(zhuǎn)換為高程用圖5、圖6的形式表示。
根據(jù)本發(fā)明的優(yōu)選實施例,在步驟3.4中最終獲得四對視差圖,分別對應(yīng)前述4種路徑組合及其平滑模型對應(yīng)的視差圖,即:
路徑組合1及其平滑模型對應(yīng)得左-右匹配方向視差圖和路徑組合1及其平滑模型對應(yīng)得右-左匹配方向視差圖;
路徑組合2及其平滑模型對應(yīng)得左-右匹配方向視差圖和路徑組合2及其平滑模型對應(yīng)得右-左匹配方向視差圖;
路徑組合3及其平滑模型對應(yīng)得左-右匹配方向視差圖和路徑組合3及其平滑模型對應(yīng)得右-左匹配方向視差圖;
路徑組合4及其平滑模型對應(yīng)得左-右匹配方向視差圖和路徑組合4及其平滑模型對應(yīng)得右-左匹配方向視差圖。
步驟3.5,基于步驟3.4確定的基于不同路徑組合和對應(yīng)平滑模型獲取的多對視差圖,初步確定影像中的可疑區(qū)域;
步驟3.4獲得了不同路徑組合(和對應(yīng)平滑模型)獲取的四種結(jié)果,就是四對視差圖,還沒有確定可疑區(qū)域,步驟3.5對四種結(jié)果進行對比分析并進行處理形成初步的可疑區(qū)域。
具體包括:
(1)確定可疑點。左核線影像和右核線影像獨立進行四種全局優(yōu)化,獲取各自的四幅視差圖,也就是左、右核線影像的每個像點都得到了四個視差值,每個像點四個視差值中的任何兩個差異超過0.5個像素,則將該點標(biāo)記為可疑,用255標(biāo)記,否則用0標(biāo)記。最終得到長寬與左、右核線影像相同,用0和255區(qū)分的“可疑點影像”。
(2)形成可疑區(qū)域。將“可疑點影像”進行膨脹、腐蝕處理,形成可疑區(qū)域,可疑區(qū)域內(nèi)的點標(biāo)記為無效點。
(3)非可疑區(qū)域點的匹配結(jié)果為四種優(yōu)化策略得到的四個視差的平均值。
步驟3.6,進行左右匹配一致性檢測,將符合左右一致性檢測的點標(biāo)記為有效點,不符合左右一致性檢測的點標(biāo)記為無效點;
步驟3.6進一步確定前面的方法沒有識別出的可疑區(qū)域,步驟3.6的處理基于步驟3.5的結(jié)果進行,步驟3.5進行可疑區(qū)域檢測后,得到左核線影像和右核線影像各自的視差圖(注意左右方向都是一副視差圖)。
左核線影像-右核線影像方向及右核線影像-左核線影像方向的匹配完成后,得到初步確定左、右核線影像可疑區(qū)域的視差圖(視差圖與影像是一一對應(yīng)的,視差圖某點可疑,則對應(yīng)像點可疑),進行左右匹配結(jié)果的一致性檢測。
步驟3.6具體包括:
(1)在金字塔的頂層(分辨率最低的層),左右匹配一致性檢測閾值設(shè)為固定值(例如,該閾值為1像素)。
(2)頂層以后每一層的左右匹配一致性檢測閾值根據(jù)上一層匹配結(jié)果計算的局部坡度動態(tài)設(shè)置。坡度計算方法為當(dāng)前像素視差與上下左右方向間隔2個像素的視差之差絕對值之和。坡度越大,閾值越大,坡度越小,閾值越小,但大小不能超過閾值的上限(如2像素)和下限(如0.5像素)。
(3)將左核線影像像點(xl,yl)根據(jù)其視差投射到右核線影像得到右核線影像像點坐標(biāo)(xr,yr),其中yr=y(tǒng)l,將(xr,yr)根據(jù)右核線影像該點視差反投射到左核線影像得到坐標(biāo)(xl’,yl’),其中yl’=y(tǒng)l,則評價標(biāo)準(zhǔn)為xl與xl’的差值絕對值是否大于設(shè)定的閾值,大于該閾值表明左片像點視差(xl,yl)無效。將不符合左右一致性檢測的點標(biāo)記為無效點。
步驟3.7,基于步驟3.2的紋理分析結(jié)果,對步驟3.6確定的視差圖有效點和無效點進行碎片過濾;
左右一致性檢測完成后,對所有保留的有效點進行坡度計算,坡度計算方法為計算當(dāng)前有效點視差與上下左右四鄰域有效點視差之差,取四個差值絕對值的最大值作為坡度值。坡度大于一定閾值的點設(shè)為無效點。所有被無效點包圍的點均為碎片。從這個意義上講,這時所有的有效點都可能是被剔除的碎片點。但隨后的剔除過程會綜合考慮紋理分析結(jié)果和碎片周圍的無效區(qū)域特點。通過上下、左右及兩個斜45度對角方向探測到到無效點的距離之和估計碎片的面積,即每個有效點根據(jù)4對探測方向探測到無效點的距離大小確定該碎片的大小。對應(yīng)某一閾值d,若兩個以上對角距離小于d或最小對角距離小于0.2d,則認(rèn)為該點屬于需要剔除的“碎片點”?;谌c考慮進行碎片過濾:
(1)有效點面積測度小于一個較小閾值的“尖刺”將作為小碎片過濾掉;
(2)檢測可疑區(qū)域類別,確定“較大面積可疑區(qū)域”,以某無效點為中心,若在一定區(qū)域范圍內(nèi)探測不到有效點,則該點為“較大面積可疑區(qū)域”;
(3)確定過濾大碎片的閾值。過濾大碎片時,“大碎片面積閾值”根據(jù)是否被“較大面積可疑區(qū)域”包裹和是否為紋理缺失區(qū)域確定。若被“較大面積可疑區(qū)域”包裹且為紋理缺失區(qū)域,則“大碎片面積閾值”設(shè)為較大值,若被“較大面積可疑區(qū)域”包裹且為非紋理缺失區(qū)域,則“大碎片面積閾值”設(shè)為較小值,若不被“較大面積可疑區(qū)域”包裹,則“大碎片面積閾值”設(shè)為最小值。
根據(jù)本發(fā)明的一個優(yōu)選實施例,碎片過濾的具體方法可以為:以所有有效點為中心向8鄰域方向探測無效點,探測最大距離為前面所述的方法確定的閾值,若8個方向均可以檢測到“較大面積可疑區(qū)域”點,則該有效點是需要剔除的碎片點。
步驟3.8,將經(jīng)碎片過濾后的所有無效點對應(yīng)的區(qū)域確定為當(dāng)前層最終的可疑區(qū)域。
通過本發(fā)明提出的上述方法,本發(fā)明具有以下優(yōu)點:
(1)可以實現(xiàn)高效的厚云自動檢測和剔除,后續(xù)生成數(shù)字表面模型(digitalsurfacemodel,dsm)環(huán)節(jié)不受厚云干擾,從而可以獲取如圖7所示的“干凈”的dsm。
(2)可以實現(xiàn)高效的遮擋區(qū)域檢測,如圖6所示的門的邊緣部分存在視差跳變,即存在遮擋,視差圖中門邊緣的黑色部分即檢測出的遮擋區(qū)域,可以看出遮擋區(qū)域內(nèi)部沒有發(fā)現(xiàn)沒去干凈的碎片,遮擋區(qū)域的邊緣與圖中實物的邊緣吻合很好。
(3)可以實現(xiàn)高效的大面積水域檢測,如圖8所示,左邊兩圖分別是包含大面積河流、湖泊的影像,右圖是對應(yīng)dsm,白色區(qū)域是檢測的可疑區(qū)域(無效值)。
(4)可以實現(xiàn)高效的無紋理陰影區(qū)域檢測,如圖9所示,左圖影像包含大量的山體陰影,右圖是對應(yīng)dsm,白色區(qū)域是檢測的可疑區(qū)域(無效值)。
以上內(nèi)容僅為本發(fā)明的較佳實施例,對于本領(lǐng)域的普通技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。