• 沒有找到結果。

網格模型簡化法是目前許多國內外研究單位研究主題之一,如微軟美國研究中心的Hoppe 研究團隊提出多層次精細度漸進式網格模型(Progressive Mesh)技術[Ho96]以及觀視點相依 之多層次精細度模型(View-dependent LOD)的方法[Ho97];卡內基美濃大學Garland等研究人 員提出的用quadric error metric來快速評估簡化邊之候選[GH97];以及國內台大歐陽明教授、

陳炳宇教授、交大莊榮宏教授在這方面皆有傑出的研究結果。網格簡化的主要目的是要降 低網格模型的資料量並且能各維持網格模形的外觀。我們可將簡化方法分為三大類:頂點 移除(Vertex Decimation)、頂點叢集(Vertex Clustering)、邊線退化(Edge Collapse)與模型細化 (Mesh Subdivision),下面對於這三大類簡化方法做一簡單介紹,並且對目前較少的動畫資 料簡化也做一介紹。

頂點移除(Vertex Decimation):Schroeder et al. [SZL92] 描述一網格簡化演算法,藉由頂點 移除方式來完成網格簡化,此研究團隊所提出的方法是以頂點附近局部區域的幾何形狀的 特徵程度做為考量依據來反覆地選取一候選頂點,此一候選頂點為下一步欲移除的頂點,

每次頂點移除程序都包含了兩個步驟,第一步驟為頂點移除,此步驟會將頂點與頂點相鄰

2

的三角形移除,移除之後網格模型在那地方就會留下一個破洞;第二步驟為三角化 (Triangulation),利用網格三角化演算法將將頂點移除後所產生的洞補起來。此頂點移除方 法將網格頂點分為三類:簡單頂點(Simple Vertex)、邊界頂點(Boundary Vertex)與複雜頂點 (Complex Vertex),只有簡單頂點與邊界頂點可以成為被移除頂點的候選頂點。藉由評斷頂 點移除前與移除後兩個不同解析力網格模型的誤差來選擇頂點候選人,而Ciampalini et al.

[CCMS96] 與Turk [Tu92]則是比較原始網膜模型與簡化後的網格模型來當成誤差評斷。

邊線退化(Edge Collapse):在網格模型簡化方法中最被廣為使用的策略是反覆的進行邊線 退化,也就是將兩個頂點的邊線退化成為一個頂點。這種簡化方式,每一次最多可以簡化 一個頂點和兩個三角形,這方面代表性的演算法有Hoppe [Ho96]與Garland et al. [GH97],在 他們所提出的方法裡面,可以輕易的建立網格模型多層解析力頂點樹狀結構,藉由記錄每 一次簡化步驟來記錄頂點之間的相依關係,則可建構一由頂點資訊所組織而成的階層架構,

稱為頂點二元樹(Vertex Binary Tree)或是網格模型多層解析力結構。此頂點樹狀結構被許多 人引用來進行適應式網格模型精細改進(adaptive refinement),譬如Hoppe [Ho97; Ho98]、Xia et al. [XV97]與Luebke et al. [LE97],適應式網格模型精細改進也就是只針對物體的局部區

域進行精細化或粗糙化的運算,也可以輕易的建立許多不同解析力的原始網格模型,並且 可以快速在不同解析力的網格模型中依需求轉換,這樣的方式常被使用在即時顯像系統 (Real-Time Visualization)與觀看者相依之多層解析力模型精化(View-dependent refinement)。

觀看者相依之多層解析力模型精化為Hoppe [Ho97]所提出,然後當動態瀏覽場景需要物體 的幾何模型時,即時根據觀視點的位置與觀視方向選取頂點二元樹上的節點,以達成觀視 點相依局部性精細化的過程。當觀視點改變後,直接調整動態串列的狀態。利用顯像畫面 前後的共效性(Frame-to-Frame coherence)以變更最少的頂點,以達到即時互動的需求。觀視 點相依的多層次精細度模型因為即時考慮觀視點的變動而局部更新幾何模型的精細度,因 此相較於觀視點無關的多層次精細度模型(View-independent LOD),就可以得到較好的視覺 效果。

頂點叢集(Vertex Clustering):頂點叢集法的多層解析力網格模型簡化方式可視為一種對幾

3

何模型的頂點重新取樣的方法。如果三維空間中許多接近的頂點在投影到影像平面之後,

這些頂點幾乎圍繞在同一個像素附近,因此這些頂點很直接的被認定為用一個代表頂點來 取代,如此作法,不但可以使得幾何模型的複雜度降低,對於輸出的品質效果也並不會有 太大的影響。頂點叢集法就是利用這種觀念簡化原始模型的。一般做法上,先將原始模型 的方形邊界(Bounding Box)做均勻的空間分割(Uniform Spatial Subdivision),一般是使用八分 樹(Octree)來做均勻切割,使得網格模型所佔據的空間分成好幾個小細格(Cell),然後在每個 小細格中選擇一個最具代表性的頂點來替代同細格內的其他頂點,最後把所有代表小細格 的頂點重新三角化,獲得複雜度較低的幾何模型。上個段落所提的反覆的進行邊線退化策 略也可視為頂點叢集運算的一種,一個邊線退化可看成兩個頂點叢集成為一個頂點叢集,

而網格模型多層解析力樹狀結構也可簡單的藉由反覆進行頂點叢集運算來完成。Carr et al.

[CH04] 提出對網格模型多層解析力樹狀結構重新頂點叢集方法,此研究團隊是利用樹的旋 轉與樹節點轉換來完成。

與三維網格物體簡化相關且相當重要的一項研究為三維物體多重解析力分析,由一個原始 的 3D 物體 M 建立出一個低解析度物體 MJ,這樣的一個解析度物體和原始物體是差不多 的,但是它的複雜度和精細度卻可以隨需要而作調整,也就是由比較少的資料所構成的。

建一個多重解析力的 3D 物體一般都會先建立一個最低解析度物體 M0,也就是最粗糙的一 個物體,再由這個最低解析度物體和原始物體之間來求不同解析度的物體。Eck et al.

[EDDH95]在 Siggraph’95 提出了一個 3D 物體多重解析度分析的方法,此方法主要可以分為 三個部分,第一個部分是將原來的 3D 物體作分割的動作,此做法是在原始的 3D 物體上均 勻的撒點並得到其 Voronoi diagram,然後藉由 Voronoi diagram 將這些點三角化而得到一個 三角網格,此三角網格就當成最低解析力物體。第二個步驟是對之前所產生的每個三角形 區塊進行攤平的程序,也就是將原始物體中每一點對應到最低解析度物體的三角形上某一 點的關係求出來,這部分所用的方法為 Harmonic maps。有了最低解析度物體與其攤平圖的 關係之後,最後一個步驟是對最低解析度物體上的三角形作 recursive 4-to-1 splits,直到三 角形被細分到和原始物體的誤差直降到一個給定的容忍值以下,這樣就得到了一個解析度 介於最低解析度物體和原始物體之間的一個物體。而另一研究 Lee et al. [LDSS98]的做法則

4

是用點移除(vertex removal)的方式,從一個比較高解析度的物體 Ml,選取一些點移除之後 則成為下一層解析度的物體 Ml-1,這樣從原始的物體一層層移除點,最後就得到最低解析 度物體。至於哪些點是要移除的,有兩個判斷的依據,一個要求是每次移除的點必須是獨 立的點集合,也就是任兩點一定不會包含於對方的 1-ring neighborhood 中。而另一個要考 慮的就是每一點的權重,權重越小的代表是越不重要的點,也就是可以優先被移除,而當 一個點被移除,這個點的 1-ring neighborhood 就要作一次三角化的動作,而被移除的那一 點在 Ml-1找周圍的三角形以 Barycentric coordinate 的方式,用三角形的三點來表示。所以當 最後降到 M0時,所有原來物體上被移除的點都可以用 M0的三個點來表示,最後重新網格 化(re-meshing)的部分和上一研究一樣是作 4-to-1 splits 增加點的數目,在取一個閥值讓物體 的誤差降到一定的程度之後停止。Lee et al. [LDSS98]與 Guskov et al. [GVSS00] 是用同樣的 方法求得最低解析度物體 M0,但是不同的地方在於 Lee et al. [LDSS98]是利用 Barycentric coordinate 的方式來代表移除掉的點,而 Guskov et al. [GVSS00]是以法向量的差來紀錄一點。

另一個不同作法是用小波來描述不同解析力下網格的形狀[LDW97],以小波進行遞迴式的 細化在曲面的描述上,將牽涉到一群小波尺度函數(scaling functions)的表示,也就是多解析 度的分析。一個細化曲面的產生是經由一個初始的控制網格(control mesh) M ,連續產生0 一序列的較細緻的網格,M1,M2,...,最後會收斂到一個曲面。每個細化的步驟包含了分裂 (splitting)和平均(average)兩個小步驟,分裂: 當我們要將一個網格由 j 解析力提升到 j+1 解析力時,我們將網格中的三角形每邊取其中點,將此三角形分割成四個小的三角形。平 均:平均的步驟則是將分裂步驟後所得的新網格的點作調整,而這些點新位置的給定,是 經由臨近的點作比重式的平均而得。

在 Garland et al. [GH97]的方法被提出之後,有許多以 Quadric Error Metric 為基礎的簡化方 法被提出來。如加入不同材質屬性的考慮 Garland et al. [GH97]與 Hoppe [Ho99]。而在 Kho et al. [KG03]所提出的方法中,可以讓使用者方便的指定與控制所要加強保留的部份,達到

最佳的簡化效果。在動態網格簡化方面,Mohr et al. [MG03]提出來的方法能簡化動態網格,

並且盡量保持運動狀況,而且簡化後的相連性相同。該方法依然基於 QEM,只是在反覆移 除邊的過程中,每個邊的邊線退化成本為所有畫格該邊的邊線退化成本(Collapse Cost)的總

5

和,這種作法雖然能盡量保持運動狀況,但某些運動特徵僅在少數幾個畫格中出現,造成 這些運動特徵使用該方法無法完整保留。此外,若只是單純的分別針對每個畫格的網格作 靜態網格的簡化,則會造成每個畫格的網格資料相連性不同,播放動畫時會有不連續與跳 動的情況產生。在 Kircher et al. [KG05]所提出的方法中,為了要達到保留更多的幾何特徵,

所以該方法是針對單一畫格來進行最佳的簡化,雖然方法中有考慮相鄰畫格的相似關係,

盡量消除不連續的情況,但最後的結果在視覺上仍可以輕易看出有跳動的情況產生,而非 十分平滑的運動。我們的方法能在動態網格簡化後,每個畫格的網格資料依然保持相同的 連接性,而且外觀上的特徵又能依運動的情況以予保留,同時兼顧外觀與運動情況。

在 Houle et al. [HP01]所提出的方法中,主要針對有骨架的動態網格,他們組合 漸進式網格

在 Houle et al. [HP01]所提出的方法中,主要針對有骨架的動態網格,他們組合 漸進式網格

相關文件