algorithms 來重建 3D 模型的技術有大幅度的發展。Seitz 等人更設立了一 public website 提供 data set 進行 benchmark 評量 [1] [2]。MVS algorithms 主要分成幾 大類:patch-based, volume-based…等。由於 MVS 的計算量很大,所以在近兩年 有多位學者利用 parallel hardware 來加速計算 MVS [3] [4],甚至用於 real-time 的 應用 [5]。
目前絕大部份的 MVS 技術都是針對 general purpose 來設計 [6] [7] [8],其中 最為知名的是 Furukawa et al. 的方法,以 patch 為單位,估測出於空間中的 3D 位置及其 normal 方向,透過多次的 expansion 及 filtering 來處理 noisy 的重建結 果。此方法在 Middlebury 的 benchmark data set 當中,得到了相當不錯的結果。
另一方面,Habbecke et al.則是使用 region growing 的方式,假設物體表面為
2
smooth 的變化,穩定地從較正確的 region 向外 expansion 並重建,而無 Furukawa et al.的 filtering 動作。前述的方法皆適用於 well controlled 的拍攝環境,如 [2]
中的 data set,其相機不管數目多寡,皆 uniform 地分佈在空間中,對於實際拍攝 物體時,較難有如此控制良好的環境。目前的 MVS algorithms 皆聲稱非針對 uniform 相機擺設而設計,然而,在本論文的實際測試發現,如 Furukawa et al.
的方法,在有較完善的相機擺設會有較佳的重建結果,若在一些資訊較缺乏(如 texture-less, specular)的物體表面無較多的影像來參考時,容易重建出 noisy 的 3D model,或是 completeness 較不足的結果。本論文則是針對 non-uniform sparse camera arrangement 問題,透過較穩定的 feature detection and matching,以及 novel photo consistency 計算方法,可以有效地解決此問題。
在利用 MVS algorithms 重建物體時,多會有 smoothness constraint [9],因此 在重建如四方體這種有 sharp edge 時,會因為在計算 patch 投影至影像上 window 的 photo consistency 時,因為 window 包含了不同物體平面的 planar patch,重建 出的結果多會是 smooth 的表面,無法正確重現物體邊緣 sharp 的變化。本論文 亦提出了 adaptive weighted window algorithm,可以解決 mixture of planar patches 的問題。
透過最大化 photo consistency 的值來重建物體表面的 MVS algorithm,其核 心技術皆是利用 optimization 來求得某一局部表面 patch 的最佳空間位置及 normal 方向,或是透過如 graph cut [10] [11] [12] [13], level-set [14] [15] [16] [17]
或 deformable models [18] [19]的 global energy minimization approaches。然而在設 計要最佳化的 equation 時,往往會面臨到幾個問題:(1)使用 numerical optimization 時,容易進入 local trap,造成計算出的結果並非是最佳解,也就是會建出 noisy 的 data,還需要其他方法(如 filtering)來處理。(2)無法設計出複雜的最佳化算式,
造成欲最佳化的算式無法微分,將使得此方面的技術無法往更精確的方向發展。
本論文則是採用 stochastic optimization 演算法中的 Particle Swarm Optimization
3
(PSO)來避開 local trap,此外也使用更適用於 image-based 3D modeling 的 GLN-PSO 演算法,GLN-PSO 演算法是標準 PSO 演算法的延伸技術,同時使用 了 global、local、以及附近鄰近粒子的最佳位置來更新每一粒子的速度。此外,
在做如 Furukawa 的 expansion 時,我們考慮不同的因素,如 photo consistency value, texture correlation, number of visible cameras, level of detail 來評斷 expansion 的 priority,如此可以重建出更正確的結果。
4 各 patch 的深度(depth)及法向量(normal)之準確度。利用 PSO 進行最佳化的過程 則在第四章中說明。第五章描述如何由種子點往外擴展,並提出了一種新的擴展
Matching Camera Calibration Seed Points form Triangulation
Patch Filtering Surface Reconstruction
5