動態輪廓是圖像切割的一個熱點,從早期的snake,就有很是多的優化版。測地線動態輪廓(GAC)就是當中之中的一個。總體來講,其摒棄了snake對參數的依賴。並增長了水平集,使得輪廓曲線更貼近目標物的拓撲結構。函數
經典的動態輪廓模型(activecontour model)的能量公式爲:post
(1)優化
當中,α。β,λ爲正值常量。spa
當中前兩項控制曲線的平滑度。第三項吸引曲線向物體邊界靠近。極小化該E(C)能量函數獲得切割輪廓。get
VICENT(參考1)指出第二項有無對切割結果影響不大(即β=0)。class
而最大化第三項,也是最小化g(|▽I|)2 。sed
則簡化爲:model
(2)im
當中,img
依據一系列的黎曼積分定理的推導(參見1和2)。將(2)式轉換爲:
(3)
爲了求解上式,採用梯度降低法,具體推導參見1(附B),有
(4)
當中,上式增長水平集後的GAC爲:
水平集{μ:μ(t)=k}表示閉合的曲線C
(5)
當中。c爲常數, k是曲率, N是曲線的標準法向量
且 N= -(▽μ/|▽μ|)
整體來講:
GAC模型借用了水平集。結合經典的active contour 模型,以圖像的梯度爲驅動力。在圖像梯度最大處,達到收斂。其攻克了傳統的AC不能處理變形過程當中拓撲的變化,如不能處理多物體檢測。以及需要對參數的預設置等問題。但是。其在處理模糊圖像,或者紋理圖像時。效果仍是不理想。
參考:
1. Geodesic Active Contours(VICENT)
1. 函數列的黎曼積分極限定理的應用
2. Geodesic Active Contours (Waterloo)
3. 局部熵驅動的GAC模型在生物醫學圖像切割中的應用(對於驅動力的更換有思考)
4. PDE Based Image Processing (matlab 代碼)