ASM和AAM:這兩種方法都是基於訓練集建立的統計模型方法,通過對某一類特定圖像進行建模,來進行特征提取。在主動形狀模型中,通過訓練集中大量描述的物體樣本形狀實例進行統計,建立起反應目標形狀變化規律的形狀統計模型一點分布模型,同時利用標定點所在輪廓線方向上的灰度信息建立起反映灰度分布規律的局部灰度模型。在搜索過程中首先利用訓練得到的局部灰度模型進行搜索,之后利用形狀模型來搜索到的形狀進行近似表達,同時對其合理性進行判斷,對不合理的圖像進行調整以保證形狀在統計意義上的合理性。通過循環迭代,得到理想的匹配結果。
主動表觀模型(AAM)不僅建立了反映形狀變化的形狀統計模型,同時建立了反映全局紋理變化的全局灰度模型,以充分利用全局的紋理信息。即:Appreance = Shape + Texture。並對形狀模型及灰度模型結合起來建立表觀模型。得到的表觀模型去處了形狀和紋理之間的相關性,可以准確地生成形狀及紋理變化的目標圖像。在主動表觀模型的搜索過程中,利用訓練得到的圖像灰度差值與表觀參數變化的線性關系,不斷變化表觀模型參數以及二維幾何位置和尺度等參數,直至得到理想的匹配效果。其搜索方法的主要思想是基於模型紋理和形狀所包圍區域紋理的差值與參數變化之間的線性關系的假設,而該假設只是在一定的偏差范圍內才較為合理,並且其覆蓋范圍對於訓練集的依賴性很強,因此在搜索中該方法的魯棒性受到一定的限制。
兩者之間的區別:ASM是對某一類特定物體的特征建立其形狀統計模型。在搜索過程中先依據灰度變化規律判斷再利用形狀模型來判斷目標物體的合理性。AAM是針對全局的紋理信息建立形狀和灰度結合的模型的表觀模型,主要是基於模型紋理和形狀所包圍區域紋理的差值與參數變化之間的線性關系假設在某一偏差范圍內進行搜索。與AAM相比,ASM的優點是能根據訓練形狀數據對參數的調節加以限制,以期在一個合理的范圍內。
人臉特征點定位的目的是在人臉檢測的基礎上,進一步確定臉部特征點(眼睛、眉毛、鼻子、嘴巴、臉部外輪廓)的位置。定位算法的基本思路是:人臉的紋理特征和各個特征點之間的位置約束結合。經典算法是ASM和AAM。
1. ASM(Active Shape Model):分為訓練和搜索兩步。訓練時,建立各個特征點的位置約束,構建各個特定點的局部特征。搜索時,迭代的匹配。
第一步:訓練:
首先,構建形狀模型:
搜集n個訓練樣本(n=400);
手動標記臉部特征點;
將訓練集中特征點的坐標串成特征向量;
對形狀進行歸一化和對齊(對齊采用Procrustes方法);
對對齊后的形狀特征做PCA處理。
接着,為每個特征點構建局部特征。目的是在每次迭代搜索過程中每個特征點可以尋找新的位置。局部特征一般用梯度特征,以防光照變化。有的方法沿着邊緣的法線方向提取,有的方法在特征點附近的矩形區域提取。
第二步:搜索:
首先:計算眼睛(或者眼睛和嘴巴)的位置,做簡單的尺度和旋轉變化,對齊人臉;
接着:匹配每個局部特征點(常采用馬氏距離),計算新的位置;
得到仿射變換的參數,迭代直到收斂。
另外,常采用多尺度的方法加速。搜索的過程最終收斂到高分辨率的原圖像上。
2. AAM(Active Appreance Model):ASM只用了形狀約束(加上特征點附近的特征),AAM又加入了整個臉部區域的紋理特征。即:Appreance = Shape + Texture。
在對形狀和紋理特征統一量綱后,建模和搜索過程和ASM基本相同。
有個區別是紋理特征的搜索過程:由於紋理特征維數較高,搜索過程是一個高維的優化問題。解決方法是事先學習出紋理預測需要的線性模型,根據該模型調整參數,提高搜索效率。
其中矩陣A就是先驗。
下面是隨着迭代次數增加,模型收斂情況示例:
3. 開源庫和SDK
參考:
Statistical Models of Appearance for Computer Vision.
AAM(Active Appearance Model)算法介紹



