3D 模型姿態單位化在模型的處理與分析領域中是一個很重要的操作。目前常用的對於3D 模型進行姿態單位化的方法一般有兩咱,即基於主成分分析的對齊方法(PCA)和基於最佳化演算法的最優模型對齊(OA)。
PCA方法是使用組成3D 模型的網格中的頂點、法向量或其它的一些資訊來分析3D 模型幾何體元的分布特性,進而使用PCA方法計算出一個全域對齊下交座標系,從而將3D 模型對齊到該座標系中。這種方法的操作對象為單個模型,它的最重要的特點是效率較高,實現較快。但它也有最主要的缺點即是對齊的效果較差,而3D 模型的姿態單位化的品質直接關係到後面的對於姿態不具有不變性的相關處理的品質。
基於最佳化的對齊方法是另外一個很重要的3D 模型姿態對齊方法,它的操作對象可以是單個模型,這裡就類似於上述的PCA方法,不過這裡使用了智能最佳化演算法來彌補單純PCA主軸計算中的某些缺陷,速度也較快。另外一種最佳化方法的操作對象為兩個模型,這種演算法直接將兩個模型對齊到一個最優或近似最優的局部正交座標系中,然後,這兩個模型之間的後續操作,比如相似性計算等則直接在此對齊座標系下進行,這樣就可以得到非常好的計算效果。
基於最佳化的3D 模型對齊方法主要有以下幾個主要組成部分:
1. 3D 模型之間的相似性度量函數。這個度量函數通常用來反映3D 模型之間的相似程度,它也是智能最佳化演算法中評價模型姿態個體的優劣的標準。可以使用的模型間的相似性度量方法有多種,比如常用的基於映像(深度圖,輪廓圖)的相似性度量,基於球面調諧函數的相似性度量等。不過需要注意的是,由於需要使用智能演算法來計算不同姿態下的模型相似性,因而這裡的相似性度量函數需要對3D 模型的空間姿態具有可變性,即姿態的改變也對應著模型相似程度的改變。
2. 3D 模型的姿態描述。即是對3D 模型間的姿態關係給出一種數值描述,因為各個姿態個體在智能演算法的進行中要不斷地施加於3D 模型,以便可以計算出在不同姿態下兩個模型之間的相似程度,進而實現演算法的啟發學習法進化。可以使用的模型姿態描述也具有多種形式,比如歐拉角,空間矩陣,球面座標等。這裡的選取標準可以根據對齊的空間姿態要求,比如對旋轉、平移、縮放操作全部考慮或是只考慮一部分等。
3. 一種合適的智能最佳化演算法。選取一種合適的智能最佳化演算法來進行上述基於姿態的模型間最大相似性的最優對齊姿態,這裡的智能最佳化演算法可以是常用的多種最佳化演算法,或者是幾種最佳化演算法的綜合使用,總之,最佳化演算法的收斂速度和品質同樣影響著最優對齊姿態產生的速度與品質。一般來說,可以使用的智能最佳化演算法多種多樣,例如有遺傳算、類比退火、粒子群演算法等。不同的演算法對應著不同的收斂速度與品質,同時也影響著演算法的最終效果。
使用基於最佳化演算法的對齊方法可以得到較高品質的3D 模型對齊,但其也有一般的智能最佳化演算法所具有的普遍弱點,即較大的已耗用時間。這裡的較大不是指幾秒或幾十秒,而是一般為了得到較為不錯的姿態調整效果甚至會耗時幾分鐘,甚至更多。這樣的已耗用時間在基於3D 模型的分析與處理的應用中,比如線上的模型檢索應用中,根本是不可接受的。不過幸好,針對智能最佳化演算法的低效問題此前已經有不少學者研究並提出了相應的解決方案,一種可以根本上減少其已耗用時間的方法是藉助於當前流行的GPU平台來對其進行並行化加速。經過合理的並行化後的最佳化姿態對齊方法相對於傳統的CPU平台上的實現,可以得到高達幾十倍甚至上百倍的速度提升,這就大大推廣了這種方法的應用。
使用PCA方法的對齊效果
使用最佳化演算法的對齊效果