張新,仵倩玉,王偉勝
(1.中國科學院遙感與數字地球研究所 遙感科學國家重點實驗室,北京 100101;2.中國科學院新疆生態與地理研究所 荒漠與綠洲生態國家重點實驗室,烏魯木齊 830011;3.中國科學院中亞生態與環境研究中心,烏魯木齊 830011)
建筑物的三維重建中經常會出現遮擋的情況,在傾斜攝影三維重建中表現更為明顯。由于拍攝角度和地物距離建筑物過近,重建出的建筑物模型立面紋理中會含有遮擋[1-2]。如果不對遮擋物進行處理,將會嚴重影響模型效果,甚至造成遮擋物與建筑物模型融合的情況。因此,必須對前景遮擋物問題進行處理。
在遮擋物的識別去除方面,國內外已存在一些相關研究。例如,用最優紋理選擇的方法排除遮擋嚴重的圖像,然后進行三維重建[3-5]、用紋理拼接的方法移除遮擋[6-7]等。這些方法雖然在一定程度上減少了遮擋的影響,但無法解決選出的最優紋理中仍存在遮擋的情況。因此,需要對這類紋理運用圖像處理的方法進行遮擋物的去除和遮擋區域修復。
在樹木遮擋的識別去除方面,王宇新等[8]提出運用摳像技術來移除樹木的遮擋。周勝安[9]提出了一種基于前景物形態的GrabCut改進算法,通過用戶指定前景物的基本形態,再利用優化的分割能量函數來提取前景遮擋。以上方法雖能很好地提取出前景樹木的遮擋,但人工參與量大、時效性低。康志忠[10]提出將影像劃分為矩形格網,通過分析格網中色調值在80~200范圍內的像素所占百分比以及格網的平行直線密度來去除樹木遮擋。Engels等[11]結合紋理和顏色信息去除樹木的遮擋。這些方法雖然提高了樹木遮擋提取的自動化程度,但是沒有考慮遮擋物在形狀方面的特征。劉亞文等[12]依據遮擋物的形狀特征,將遮擋分為面狀和線狀分別進行研究。這種方法雖然考慮了遮擋物的形狀,但是它將樹木遮擋歸為面狀遮擋物,并未考慮樹木本身存在的形狀差異,從而造成提取結果偏大,影響遮擋區域的修復,降低了模型的準確度。
為了進一步提高建筑物立面紋理中樹木遮擋提取的準確性,本文提出一種樹冠、樹干分類提取方法。依據樹木本身形狀和顏色的差異,將樹木分為樹冠和樹干兩部分,分別進行提取研究。對于僅含樹冠的遮擋,依據色調信息和平行直線信息進行提取。對于既含樹冠又含樹干的部分,樹冠部分遮擋依據色調和平行直線信息進行提取,樹干部分遮擋依據灰度信息和邊緣檢測方法進行提取。然后,利用Criminisi算法修復被遮擋區域[13],從而解決樹木遮擋問題。最后,文章選擇新疆庫爾勒市傾斜攝影三維模型中遮擋嚴重區域作為實驗區,通過將本文方法與傳統方法進行比較,得出本文方法誤提取率減少12.5%的結論,從而證明了本文方法的有效性。
在建筑物的立面紋理中,樹冠遮擋往往呈現出面狀特點,樹葉顏色通常為綠色或者接近綠色,具有特殊的色調范圍,直線信息與建筑物紋理直線信息形成鮮明對比。針對這些特征,本文首先通過設置特殊的色調空間作為約束條件對樹冠進行初提取,然后依據直線信息來進行樹冠遮擋的精提取。
1)樹冠遮擋的初提取。首先將彩色圖像由RGB(紅、綠、藍色)色度空間轉為HSV(色度、飽和度、亮度)色度空間。在HSV空間中,圖像特征明顯,易于進行分割、目標識別和邊緣檢測;然后選出樹冠樣方圖像,并分析其各個分量的分布區間;最后以這3個分布范圍為約束條件進行樹冠提取。在這一處理過程中,可能存在誤判的情況,因此需要對這一結果進行精提取,排除誤提取的與樹葉特征接近的建筑物紋理。
2)樹冠遮擋的精提取。在建筑物的立面影像中,建筑物立面上的直線大多數都對應于平行物方坐標系X和Y軸的直線,因而其方向都有很強的規律性。所以可以依據平行直線信息來對樹冠遮擋初提取的結果進行判斷,排除誤提取的建筑物紋理。
首先對初提取結果進行格網劃分,然后統計樹冠遮擋初提取結果中格網的平行線密度,若格網的平行線密度大于給定閾值,則認為其不是樹冠遮擋格網,否則,認為其為樹冠遮擋格網。格網的平行線密度按式(1)進行計算[12]。
(1)
式中:ρ表示格網的平行直線密度;Li表示直線的長度(單位為像素);S表示格網的大小(單位為像素);n表示格網內直線的數量。
在建筑物的立面紋理中,樹干遮擋往往呈現出線狀特點,樹干輪廓較為清晰簡單,樹干顏色接近灰褐色,具有特定的色調范圍。針對這些特征,本文首先通過設置特殊的色調空間作為約束條件對樹干進行初提取,再利用邊緣檢測和跟蹤的算法對樹干進行精提取,排除誤提取的部分。
1)樹干遮擋的初提取。首先將彩色圖像由RGB色度空間轉為HSV色度空間。利用色調、飽和度和亮度來提高樹干與建筑物紋理之間的辨識度。然后選出樹干樣方圖像,并分析其各個分量的分布區間。最后以這3個分布范圍為約束條件進行樹干提取。
2)樹干遮擋的精提取。在樹干的初提取中,可能會存在與樹干的R、G、B分量接近的紋理(通常為墻面),因此會造成誤判的情況。針對這一情況,本文采用Canny算法對樹干輪廓進行進一步提取,以剔除非樹干區域。
遮擋物體移除之后,需對被遮擋區域的紋理進行修復。本文選擇Criminisi算法來對遮擋區域進行紋理修復。如圖1所示[14],圖像I為待修補的目標圖像,Ω為待修復區域,δΩ代表其輪廓。修補過程從輪廓邊緣向待修復區域的內部進行,圖像的源區域為Φ,它在填充過程中提供采樣信息。

圖1 圖像修復原理圖
目標塊優先級的計算是Criminisi算法的核心,能夠對具有較多已知信息和較強結構的目標塊進行優先修復并獲得更新,以保證填充準確有序地進行。對于以輪廓上的點p為中心的目標塊,其優先級按照式(2)計算[14]。
P(p)=C(p)D(p),p∈Ω
(2)
式中:C(p)為置信項,用于衡量目標塊內的可靠信息的數量;D(p)為數據項,表示每次迭代時輪廓前沿等照度強度函數;Ω表示待修復區域。
確定具有最大優先權的目標塊后,就要在已知區域內搜索此目標塊的最佳匹配塊,目標塊與最佳匹配塊的匹配準則見式(3)[14]。
(3)

通過全局搜索,找到最佳匹配塊,將最佳匹配塊中的像素對應復制到目標塊中的未知像素點,該目標塊內未知像素點轉變為已知像素點,因此這些點的置信度需要重新更新。置信度利用式(4)進行計算[14]。
(4)
重復以上步驟,直至修復完畢。
針對傾斜攝影三維重建中存在的樹木遮擋問題,文章以新疆庫爾勒市傾斜攝影三維場景中樹木遮擋嚴重區域的模型進行實驗。依據本文遮擋物移除和遮擋區域修復方法對影像中的遮擋物進行處理,從而得到修復后的新紋理。最后,在三維建模軟件中進行紋理映射,利用移除遮擋的紋理去代替原始紋理,從而形成新的三維模型。
最常見的樹木遮擋主要有兩種:一種是只含樹冠部分或者樹木較為密集的遮擋;另一種是既含樹冠又含樹干,比較稀疏或者單一樹木的遮擋。針對第一種遮擋情況,直接采用樹冠遮擋物去除的方法進行提取遮擋;針對第二種遮擋情況,首先進行樹冠遮擋物的提取,在此基礎上進行樹干遮擋物的提取。本文分別選擇只含樹冠遮擋和既含樹冠又含樹干遮擋的情況進行實驗。
圖2為樹冠RGB轉為HSV的結果。實驗所用建筑物立面影像為僅含樹冠遮擋的影像,影像大小為3 000像素×2 000像素。

圖2 樹冠RGB轉為HSV結果
從HSV圖像中選出一塊樹冠圖像作為樣本,并分析其3個通道的直方圖分布。圖3為樹冠樣本的R、G、B3個分量的分布范圍。其中R的取值范圍為40~62,G的取值范圍為45~250,B的取值范圍為45~250。以上述R、G、B3個分量的取值范圍作為約束條件對整個HSV圖像進行提取,提取結果如圖4所示。

圖3 樹冠通道直方圖分布

圖4 樹冠提取結果
實驗所用建筑物立面影像為包含樹冠和樹干兩部分遮擋的影像。圖5為樹干RGB轉為HSV的結果,影像大小為2 500像素×1 500像素。

圖5 樹干RGB轉為HSV結果
從圖5的HSV圖像可以看出,樹冠和樹干的色調區分較為明顯。按照樹冠提取方法對圖5中的HSV圖像進行樹冠提取,得到如圖6所示的結果。

圖6 樹冠提取結果
在HSV圖像中選出一塊樹干圖像作為樣本,并分析其3個分量的直方圖分布。樹干樣本的R、G、B3個分量的分布范圍如圖7所示。其中R的取值范圍為15~30,G的取值范圍為25~86,B的取值范圍為39~106。

圖7 樹干通道直方圖分布
以上述R、G、B3個通道取值范圍作為約束條件對整個HSV圖像進行提取,提取結果如圖8所示。

圖8 樹干提取結果
從圖8樹干提取結果可以看出,雖然樹干能夠被很好地提取出來,但窗沿和空調水管區域因與樹干HSV圖像中的R、G、B分量較為接近而被誤提取,因此,需要對上述結果進行進一步的判別。圖9為利用Canny算法進行邊緣提取的結果。

圖9 樹干最終提取結果
樹木遮擋物被提取出來后,需對遮擋區域進行修復處理,盡可能地還原建筑物立面的原始紋理。本文采用Criminisi算法對遮擋區域進行修補,修補結果如圖10所示。

圖10 樹木遮擋修復結果
遮擋區域修補完成后,通過紋理映射對被樹木遮擋區域的三維模型重新進行貼合紋理,從而實現對傾斜攝影三維建模中含樹木遮擋模型的修復[15]。本文首先將含樹木遮擋嚴重的模型(圖11)導入到三維建模軟件中;然后利用修復后的紋理替換原始的含樹木遮擋的紋理,從而實現模型的修復;最后,將修復后的模型添加到三維場景中,修復結果如圖12所示。

圖11 含樹木遮擋三維場景

圖12 修復后的三維場景
為驗證本文方法的合理性,利用樹冠、樹干分類提取方法與樹木整體提取方法,對同一樹木遮擋進行提取,分別計算其誤提取率和漏提取率,通過分析不同方法所得結果,對本文方法進行驗證,計算結果如圖13所示。

圖13 基于不同方法的誤提取和漏提取結果
從圖13和表1可以看出,本文方法很大程度上提升了提取結果的正確性,誤提取率降低了12.5%。從比較結果中可以看出,整體提取方法的漏提取率較低,這是因為樹冠樹干在色調方面有一些差別,為了更完整地提取整個樹木,只能增加樹木所屬色調范圍,擴大提取面積,因此漏提取率較低,誤提取率較高。而本文方法考慮了樹冠和樹干在色調和形狀方面的差異,將其分開進行提取,縮小了其所屬的色調范圍,因此誤提取率較低。
從圖13(a)、圖13(b)可以看出,樹冠、樹干分類提取方法相比樹木整體提取方法更為精確,能夠體現樹木細節。由圖13 (c)、圖13 (d)漏提取結果圖得出,樹冠、樹干分類提取的漏提取率更高一些,但由圖13(e)、圖13(f)可以看出,樹冠、樹干分類提取誤提取率比樹木整體提取低很多,尤其在樹干部分,樹冠、樹干分類提取能夠得到很好的結果;而樹木整體提取則難以區分樹干之間的間隙,從而造成誤提取率偏高的情況。表1計算結果則很好地佐證了這一事實。從表1可以看出本文方法很大程度上提升了提取結果的正確性,雖然漏提取率比起整體提取方法增長了1.5%,但誤提取率降低顯著,相比整體提取降低了12.5%。

表1 不同方法對比結果 %
本文針對傾斜攝影三維建模中存在的遮擋情況進行總結研究,將遮擋分為樹木、車輛、路燈和行人4類,并依據各類遮擋物的特征,總結各類遮擋物的最優去除和修復方法。針對建筑物側面紋理存在的樹木遮擋物,提出了一種樹冠、樹干分類提取方法。該方法基于樹冠、樹干與建筑物側面紋理色調的差異對樹冠和樹干進行檢測,然后利用樹冠和建筑物墻面平行直線密度的差異,對樹冠提取結果進行進一步判別,利用邊緣檢測方法對樹干提取結果進行進一步提取,從而剔除偽樹木區域。最后采用Criminisi算法對樹冠、樹干遮擋區域進行修復,得到修復后的紋理圖像。文章以新疆庫爾勒市傾斜攝影三維場景中遮擋嚴重的模型進行實驗,提取了樹木遮擋,并對樹木遮擋區域進行了修復,得到較好的效果,證明了該方法的優越性。