李潔瓊 薛玉芳 李亞軍
(1,2.安徽理工大學計算機科學與工程學院,安徽 淮南 232001;3.寧夏青銅峽68242部隊 751601)
淺談三維建模的幾種方法
李潔瓊1薛玉芳2李亞軍3
(1,2.安徽理工大學計算機科學與工程學院,安徽 淮南 232001;3.寧夏青銅峽68242部隊 751601)
介紹了從二維坐標空間轉化到三維坐標空間所要遵從的對極幾何限制,并通過數學推導得出坐標轉化表達式。在此基礎上重點討論了三維物體主動還原重建方式,特別是結構光還原的方法,通過結構光的引入,能夠較好地解決像素匹配問題,可以提高還原確定性、減少拍照的次數、有利于動態物體的重建。
計算機視覺;三維建模;主動還原;結構光
三維物體的建模是指通過一定的方法,建立物體幾何表面的點云,這些點可以通過插補的方法形成物體的表面形狀,點云越密集所建立的模型就越精確。物體的建模方式可以根據所用儀器的類型分為接觸式與非接觸式兩類。接觸式建模方式需要實際觸碰物體的表面,如使用測徑器、尺子和坐標測量機等。雖然坐標測量機可以精確地獲得重建物體的數據,但由于必須接觸物體,有可能對待測物造成污染、變形或損壞,用于一些價值較高的物體如遺跡古文物和古文物等的重建則不太合適。非接觸式建模方式可以分為主動式和被動式兩種。主動視覺系統一般采用結構光的方法,該方法通常包括一臺攝像機和一個投影儀,投影儀向物體投射一些人工設計的圖案,攝像機拍攝被照物體得到這些結構光圖案在物體表面形成的變形圖像,利用結構光的編碼技術和三角測量方法,來恢復物體的三維結構。這種方法借助結構光的信息,從而簡化了圖像匹配問題。被動視覺方法即立體視覺方法,用多臺攝像機或一臺攝像機在不同位置拍攝多幅物體圖像來恢復場景深度信息,但這類方法有在不同圖像間尋找匹配關系的問題,圖像匹配是計算機視覺領域的一個經典難題,從而限制了這類方法的廣泛應用。兩種方法的本質都是根據立體視覺法重建圖像。被動式重建方式,其本身不發射輻射線,而是通過測量由待測物表面反射周邊輻射線的方法獲取圖像,再通過輔助方法實現還原。其還原方法可分為:明暗法,是把圖像像素的亮度值代入預先設計的色度模型中,再通過表面可微分性、曲率限制及光滑度的限制求解方程;立體光學法,為了彌補明暗法中單張照片提供的信息不足,立體光學法是在同一個相機、同一場景下,采用不同的照明條件拍攝多張待測物的照片,通過處理得到物體表面的梯度向量,然后再經過向量場的積分得到三維模型;界提取法,重建的對象一般是一些簡單形狀的物體,通過拉普拉斯和高斯濾波等提取物體的邊界信息以還原圖像,在該法中利用到了物體的仿射不變性和尺度不變性算法;還有紋理識別和法輪廓法等。主動還原重建方式是指將額外的輻射能量投射至物體上,借助反射能量所得到額外信息計算出待測物體的深度信息。常使用的輻射能量有可見光、高能光束與激光。被動還原的各種方法相似,是以立體視覺法為基礎的。但立體視覺法的缺點是,在還原過程中不能確定兩幅照片中的對應點是否來自空間中的同一點,這就是像素匹配問題,給還原增加了難度。采用主動視覺系統建模將解決這一問題,首先必須對系統進行標定。現有的標定方法大致可以分為2類,即結構光標定法和轉換矩陣法。其中,結構光標定法是最常用的一種方法,它對攝像機和投影儀分別標定,求出投射的光條所在光平面的模型。轉換矩陣法對每一個投影光條求解一個4x3的變換矩陣,通過變換矩陣求解圖像上的光條所對應的空間三維信。這兩類方法都假定被照亮的物體表面上的點恰好在光平面上,當投影儀鏡頭存在畸變時,光平面的模型無法精確描述投影關系。當主動視覺系統的某個部件發生位置變化,或內部參數調整時,必須對系統重新進行標定。以上這些標定方法,其標定過程都比較繁瑣,而且需要一個可以精確控制其運動的移動機構來完成。為了提高建模的速度和效率,大多數系統都采用同時向物體投射各種結構光圖案的方法,需要利用結構光編碼技術來解決結構光的匹配問題。對此,文獻[3]給出了一個較好的綜述。第一類方法是采用顏色編碼策略,假設物體表面顏色為中性,不改變投影儀投射的彩色信息;第二類方法是基于時間連續性假設,即物體相鄰像素在不同時刻是相同的,投影儀按照編碼策略,在不同時刻,控制像素的亮滅,由攝像機檢測這些特別的灰度圖案,從而實現匹配。第一類方法投影儀投射條紋的順序與其在圖像上的順序是一致的每一種編碼策略均有其局限性,第二類方法不適合對運動物體的模。
2.1 點和線的投影。先考慮兩種比較簡單的情況。如果僅有一個點投影到物體上,則它在投影儀和照片上的相對位置是確定的,通過上面計算三維物體坐標公式的方法就可以求解該點的坐標。如果是一條線,比如,一條平行于x軸方向的線,則該線在y軸方向的投影仍是一個點,仍然可用上面的坐標公式進行計算。點和線的投影可以很好地匹配。但是,由于單獨的點和線的投影可能會超出照相機的拍攝范圍,投影到物體的背面,有時需要對整個物體進行掃描拍照,需要不斷地移動照相機,這是很耗時的,并且在移動過程中會引入機械誤差,大大降低了效率和還原的可靠性。
2.2 網格。有人提出了網格的方法,它兼有點和線的優勢,線的突變意味著邊界的變化,交叉的點可以對物體進行定位。網格的覆蓋增大了物體的探測范圍,消除了機械誤差。網格線的粗細變化可以產生平滑效果。J·L·Mogen等人在此基礎上進行了改進,如圖2所示。在網格中增加方塊點,用來初始化標記圖像和作為識別圖像的依據。經過優化,使得方塊點在網格中的數量最少,且所有的垂直線都能與方塊點中的一個或者多個相連。投影儀和相機的特殊放置使它們的橫軸(x)相互平行,縱軸(y)在一條線上。因此,對于網格線來說,垂直線的投影基本不會變形,變化不會很大,在后期可以使用垂直線來輔助水平線的提取,而水平線投影到物體上會出現扭曲或斷裂。扭曲包含了物體的深度(z)信息,斷裂則是由于線比較細。相反,粗線會對圖像進行平滑,改變圖像的分辨率。重建中,根據需要,可以適當調節線的粗細來得到不同的精細程度(分辨率)。對于得到的圖像,先進行高斯濾波,然后用拉普拉斯算法提取垂直線。掃描垂直線的左右兩邊得到垂直線與水平線的交點和方塊點,通過這些交點把水平線恢復出來,如果恢復不出來,說明水平線細了,需要重新選擇水平線的寬度。得到網格后,對方塊點的左右兩邊進行掃描,標記各交點并與原圖進行匹配。因為有些線在投影中被截斷了,使得有些點不能與交點相連,因此從不同的方塊點開始會得到不同的結果,通過把這些不同結果合并,可以得到一個較好的網格圖,這也是選用了幾個方塊點的意義所在。

圖1
本文討論了這幾年來三維物體建模的幾種方法,其關鍵之處在于找到物體的深度信息。幾種方法從本質上來說還是基于人眼的雙目視差,雙眼視物時,主觀上可產生被視物體的厚度以及空間的深度或距離等感覺,即同個物體從兩個或多個不同的角度觀察,通過視差信息得到深度信息。基于此原理,首先發展起來的是被動還原的方法,它能夠重建三維物體,但存在匹配問題,不能夠確定兩張照片上的對應點是否來自同一個三維空間點的投影。在此基礎上提出了主動還原重建方法,能夠較好地解決像素匹配的問題。
[1]三維掃描儀[EB/OL].(2010-04-08)[2010-05-20].http://zh·Wikipedia·org/zh-cn/三維掃描儀.
[2]MIKOLAJCZYK K,ZISSERMAN A,SCHMID C.Shape Recognition with edge-based features[C].//Proceedings of The British Machine Vision Conference.Norwich,UK,2003:1-8.[3]REMONDINO F,EL-HAKIM S.Imagebased3D modeling:a Review[J].The Photogrammetric Record,2006,21(115):269-291.
Z
B