アクティブ輪郭モデル(別名スネーク)は、マイケル・カス、アンドリュー・ウィトキン、デメトリ・テルゾポロス[1]によって導入された、ノイズの多い可能性のある2D画像から物体の輪郭を描くためのコンピュータビジョンのフレームワークです。スネークモデルはコンピュータビジョンで人気があり、物体追跡、形状認識、セグメンテーション、エッジ検出、ステレオマッチングなどのアプリケーションで広く使用されています。
スネークは、エネルギーを最小化する変形可能なスプラインであり、物体の輪郭に向かって引っ張る拘束力とイメージ力、および変形に抵抗する内部力の影響を受けます。スネークは、エネルギー最小化によって変形可能なモデルをイメージに一致させる一般的な手法の特殊なケースとして理解できます。[1] 2次元では、アクティブシェイプモデルはこのアプローチの離散バージョンを表し、ポイント分布モデルを利用して、トレーニングセットから学習した明示的なドメインに形状範囲を制限します。

Snake は、画像内の輪郭を見つけるという問題全体を解決できるわけではありません。この方法では、事前に目的の輪郭の形状に関する知識が必要になるからです。むしろ、ユーザーとのやり取り、より高レベルの画像理解プロセスとのやり取り、時間的または空間的に隣接する画像データからの情報など、他のメカニズムに依存します。
モチベーション
コンピューター ビジョンでは、輪郭モデルは画像内の形状の境界を記述します。特に、Snake は境界のおおよその形状がわかっている問題を解決するように設計されています。変形可能なモデルであるため、Snake はステレオ マッチングやモーション トラッキングにおける違いやノイズに適応できます。さらに、この方法では、欠落している境界情報を無視することで、画像内の 錯覚的な輪郭を見つけることができます。
従来の特徴抽出技術と比較して、スネークには複数の利点があります。
- 自律的かつ適応的に最小状態を探します。
- 外部のイメージの力は直感的に蛇に作用します。
- 画像エネルギー関数にガウス平滑化を組み込むと、スケール感度が導入されます。
- 動的なオブジェクトを追跡するために使用できます。
伝統的なヘビの主な欠点は
- これらは局所最小値状態に敏感であり、シミュレーテッドアニーリング技術によって打ち消すことができます。
- 輪郭全体にわたるエネルギー最小化の際には、微細な特徴が無視されることがよくあります。
- その精度は収束ポリシーに依存する。[2]
エネルギー処方
単純な弾性スネークは、のn個の点、内部弾性エネルギー項、および外部エッジベースのエネルギー項によって定義されます。内部エネルギー項の目的は、スネークに加えられる変形を制御することであり、外部エネルギー項の目的は、輪郭が画像にフィットするように制御することです。外部エネルギーは通常、画像自体による力と、ユーザーによって導入された拘束力の組み合わせです。
ヘビのエネルギー関数は、外部エネルギーと内部エネルギーの合計、つまり
内部エネルギー
蛇の内部エネルギーは輪郭の連続性と輪郭の滑らかさから構成されます。
- [3]
これは次のように展開できる。
ここで、 およびはユーザー定義の重みです。これらは、それぞれ、蛇の伸びの量と蛇の曲率の量に対する内部エネルギー関数の感度を制御し、それによって蛇の形状に対する制約の数を制御します。
実際には、連続性項の重みが大きいと、輪郭内の点間の距離の変化が不利になります。滑らかさ項の重みが大きいと、輪郭の振動が不利になり、輪郭が薄い板のように動作します。
イメージエネルギー
画像のエネルギーは、画像の特徴の関数です。これは、微分法における最も一般的な変更点の 1 つです。画像の特徴や画像自体は、さまざまな方法で処理できます。
画像、画像内に存在する線、エッジ、終端について、画像によるエネルギーの一般的な定式化は次のようになる。
ここで、、はこれらの顕著な特徴の重みです。重みが大きいほど、顕著な特徴がイメージ力に大きく寄与することを示します。
ライン機能
線関数は画像の強度を表し、次のように表される。
の符号によって、線が暗い線に引き寄せられるか、明るい線に引き寄せられるかが決まります。
画像に何らかのスムージングやノイズ低減が使用される場合、線関数は次のようになります。
エッジ機能
エッジ関数は画像の勾配に基づいている。その実装例の1つは
目的の物体の輪郭から遠く離れたところから始まるスネークは、誤って局所的最小値に収束する可能性があります。スケール空間の連続性は、これらの局所的最小値を回避するために使用できます。これは、画像にぼかしフィルターを使用し、計算が進むにつれてぼかしの量を減らしてスネークの適合を洗練させることによって実現されます。スケール空間の連続性を使用したエネルギー関数は次のとおりです。
ここで、 は標準偏差 のガウス分布です。この関数の最小値は、Marr-Hildreth理論に従ってエッジを定義するゼロ交差に該当します。
終了機能
わずかに滑らかに された画像内の水平線の曲率を利用して、画像の角や終端を検出することができます。この方法を使用すると、
勾配角度付き
勾配方向に沿った単位ベクトル
勾配方向に垂直な単位ベクトル
エネルギーの終結関数は次のように表される。
制約エネルギー
オリジナルのスネーク実装を含む一部のシステムでは、ユーザーによるインタラクションによって、初期配置だけでなくエネルギー面でもスネークを誘導することができました。このような制約エネルギーは、 スネークを特定の特徴に近づけたり遠ざけたりするためにインタラクティブに誘導するために使用できます。
勾配降下法による最適化
蛇の初期推定値が与えられると、蛇のエネルギー関数は反復的に最小化される。勾配降下法による最小化は、蛇のエネルギーを最小化するために使用できる最も単純な最適化の1つである。[4]各反復では、制御されたステップサイズで点の負の勾配を1ステップ実行し、局所最小値を見つける。この勾配降下法の最小化は次のように実装できる。
エネルギー場の勾配の負によって定義される、ヘビにかかる力は どこにありますか。
重みとがに関して一定であると仮定すると、この反復法は次のように簡略化できる。
離散近似
実際には、画像の解像度は有限であり、有限の時間ステップでのみ積分できます。そのため、スネークの実用的な実装には離散的な近似を行う必要があります。
ヘビのエネルギー関数は、ヘビ上の離散点を使用して近似できます。
その結果、蛇の力は次のように近似できる。
勾配近似は、有限差分など、sに関する任意の有限近似法を通じて実行できます。
離散時間による数値不安定性
アルゴリズムに離散時間を導入すると、スネークが引き寄せられる最小値を過ぎると更新が導入される可能性があります。これにより、最小値付近で振動が発生したり、別の最小値が見つかったりする可能性があります。
これは、イメージ力によりステップ サイズが 1 ピクセルを超えないように時間ステップを調整することで回避できます。ただし、エネルギーの低い領域では、内部エネルギーが更新を支配します。
あるいは、各ステップでイメージ力を正規化して、イメージ力がスネークを1ピクセルだけ更新するようにすることもできます。これは次のように定式化できます。
ここで、はピクセルサイズの値に近い。これにより、時間ステップの調整から生じる支配的な内部エネルギーの問題を回避できる。[5]
離散空間による数値不安定性
連続画像内のエネルギーには、画像内のピクセルとして存在しないゼロ交差がある場合があります。この場合、スネーク内の点は、このゼロ交差に隣接する2つのピクセル間で振動します。この振動は、最近傍の代わりにピクセル間の補間を使用することで回避できます。[5]
ヘビのいくつかの変種
スネークのデフォルト メソッドにはさまざまな制限があり、収束のパフォーマンスが悪くなるコーナー ケースもあります。デフォルト メソッドの問題に対処する代替手段はいくつかありますが、それぞれにトレードオフがあります。ここではいくつかを示します。
GVF スネークモデル
勾配ベクトルフロー(GVF)スネークモデル[6]は、スネークに関する2つの問題に対処します。
- 凹面境界での収束性能が悪い
- スネークが最小値から大きく外れて初期化されると収束性能が悪くなる
2次元では、GVFベクトル場はエネルギー関数を最小化する。
ここで、は制御可能な平滑化項である。これはオイラー方程式を解くことで解くことができる。
これは、定常値に向かって反復することで解決できます。
この結果はデフォルトの外部力を置き換えます。
GVF を使用する際の主な問題は、平滑化項によって輪郭のエッジが丸くなることです。 の値を小さくすると丸みは減りますが、平滑化の量は弱くなります。
バルーンモデル
バルーンモデル[5]は、デフォルトのアクティブ輪郭モデルを使用してこれらの問題に対処します。
- ヘビは遠い端には引き寄せられません。
- 実質的なイメージの力が作用していない場合、蛇は内側に縮みます。
- 最小値の輪郭より大きいヘビは、最終的には最小値の輪郭に縮小しますが、最小値の輪郭より小さいヘビは最小値を見つけられず、縮小し続けます。
バルーンモデルは、ヘビに作用する力に膨張項を導入する。
ここで、は曲線の法線ユニタリベクトルであり、は力の大きさです。画像の端の力が膨張力を克服できるようにするには、は画像正規化係数と同じ大きさで、より小さい値である必要があります。
バルーン モデルを使用すると、次の 3 つの問題が発生します。
- スネークは縮小する代わりに、最小値に向かって拡大し、それよりも小さい最小値の輪郭を見つけなくなります。
- 外向きの力により、輪郭は実際の最小値よりもわずかに大きくなります。これは、安定した解が見つかった後にバルーン力を減らすことで解決できます。
- インフレーション力は弱いエッジからの力を上回り、スネークが画像内の弱い特徴を無視するという問題を増幅する可能性があります。
拡散スネークモデル
拡散スネークモデル[7]は、ノイズ、乱雑さ、および遮蔽に対するスネークの感度を扱う。これは、マンフォード・シャー関数とその漫画限界の修正を実装し、統計的形状知識を組み込んでいる。デフォルトの画像エネルギー関数は、
ここで、は修正されたマンフォード-シャー関数に基づく。
ここで は領域 の像の区分的に滑らかなモデルである。境界は次のように定義される。
ここで、は 2 次 B スプライン基底関数であり、 はスプラインの制御点です。修正カートゥーン極限は として取得され、 は の有効な構成です。
この関数は、さまざまな輪郭の2値画像からのトレーニングに基づいており、パラメータによって強度が制御されます。平均制御点ベクトルと共分散行列を持つ制御点ベクトルのガウス分布の場合、ガウス確率に対応する2次エネルギーは
この方法の強さは、トレーニング データの強さと、修正された Mumford-Shah 関数の調整に依存します。スネークごとに、異なるトレーニング データ セットと調整が必要になります。
幾何学的アクティブ輪郭
幾何アクティブ輪郭、または測地アクティブ輪郭(GAC)[8]あるいは等角アクティブ輪郭[9]は、ユークリッド曲線の短縮進化のアイデアを採用しています。輪郭は、画像内のオブジェクトの検出に応じて分割および結合されます。これらのモデルは、主にレベルセットからヒントを得ており、医療画像コンピューティングで広く採用されています。
例えば、GACの勾配降下曲線の進化方程式は[8]である。
ここで、は停止関数、cはラグランジュ乗数、は曲率、は単位内向き法線です。この特定の曲線発展方程式は、法線方向の速度にのみ依存します。したがって、レベルセット関数を挿入することで、次のように オイラー形式で同等に書き直すことができます。
このシンプルだが強力なレベルセット法は、動的輪郭が勾配降下曲線の進化中にトポロジーの変化を処理することを可能にする。これは関連分野で大きな進歩をもたらし、数値手法を使用してレベルセット法を解くことは、現在ではレベルセット法としてよく知られている。レベルセット法は動的輪郭を実装するための非常に一般的なツールとなっているが、WangとChanは、すべての曲線進化方程式をこれによって直接解くべきではないと主張した。[10]
アクティブ コンターの最近の開発では、地域特性のモデリング、柔軟な形状事前条件の組み込み、完全自動セグメンテーションなどが取り上げられています。
局所的特徴と全体的特徴を組み合わせた統計モデルは、ランクトンとアレン・タンネンバウムによって策定された。[11]
グラフカットとの関係
グラフ カット、または最大フロー/最小カットは、マルコフ ランダム フィールド (MRF) エネルギーと呼ばれる特定の形式のエネルギーを最小化する一般的な方法です。グラフ カット メソッドは画像セグメンテーションにも適用されており、モデルが MRF であるか、MRF で近似できる場合は、レベル セット メソッドよりもパフォーマンスが優れていることがあります。
参照
参考文献
- ^ ab Kass, M.; Witkin, A .; Terzopoulos, D. (1988). 「Snakes: Active contour models」(PDF) . International Journal of Computer Vision . 1 (4): 321. CiteSeerX 10.1.1.124.5318 . doi :10.1007/BF00133570. S2CID 12849354. 2016-01-12 に オリジナル(PDF)からアーカイブ。2015-08-29に取得。
- ^ ヘビ: 現役モデル、ラマーニ・ピクヒューマーニ、http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/RAMANI1/node31.html
- ^ ジョージ・ベビス博士、ネバダ大学、http://www.cse.unr.edu/~bebis/CS791E/Notes/DeformableContours.pdf
- ^ イメージ理解、ブライアン・S・モース、ブリガムヤング大学、1998~2000 http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MORSE/iu.pdf
- ^ abc Cohen, Laurent D. (1991). 「アクティブ輪郭モデルとバルーンについて」CVGIP: Image Understanding . 53 (2): 211– 218. doi :10.1016/1049-9660(91)90028-N.
- ^ Chenyang Xu; Prince, JL (1997). 「勾配ベクトルフロー: ヘビのための新しい外力」. IEEE Computer Society Conference on Computer Vision and Pattern Recognition の議事録(PDF) . pp. 66– 71. doi :10.1109/CVPR.1997.609299. ISBN 0-8186-7822-4. S2CID 980797。
- ^ Cremers, D.; Schnorr, C.; Weickert, J. (2001). 「拡散スネーク: 変分フレームワークにおける統計的形状知識と画像情報の組み合わせ」。IEEE ワークショップ変分法とレベルセット法によるコンピュータビジョンに関する議事録。 第 50 巻。 pp. 137– 144。CiteSeerX 10.1.1.28.3639。doi :10.1109/VLSM.2001.938892。ISBN 978-0-7695-1278-5. S2CID 14929019。
- ^ ab Geodesic Active Contours、V. Caselles、R. Kimmel、G. Sapiro http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.2196
- ^ Kichenassamy, Satyanad; Kumar, Arun; Olver, Peter; Tannenbaum, Allen; Yezzi, Anthony (1996). 「共形曲率フロー: 相転移からアクティブビジョンまで」.合理的力学と分析のアーカイブ. 134 (3): 275– 301. Bibcode :1996ArRMA.134..275K. doi :10.1007/BF00379537. S2CID 116487549.
- ^ Wang, Junyan; Chan, Kap Luk (2014-07-08). 「接線成分を持つアクティブ輪郭」. Journal of Mathematical Imaging and Vision . 51 (2): 229– 247. arXiv : 1204.6458 . doi :10.1007/s10851-014-0519-y. ISSN 0924-9907. S2CID 13100077.
- ^ Lankton, S.; Tannenbaum, A. (2008). 「領域ベースのアクティブ輪郭のローカライズ」. IEEE Transactions on Image Processing . 17 (11): 2029– 2039. Bibcode :2008ITIP...17.2029L. doi :10.1109/TIP.2008.2004611. PMC 2796112. PMID 18854247 .
外部リンク
- デビッド・ヤング、1995年3月
- スネーク:アクティブコンター、CVOnline
- Chenyang Xu と Jerry Prince によるアクティブ コンター、変形可能モデル、勾配ベクトル フロー (コードのダウンロードを含む)
- ICBE、マンチェスター大学
- アクティブコンターの実装とテストプラットフォームのGUI
- クリス・ルエンゴ准教授によるスネークのシンプルな実装
- アクティブ輪郭を使用して画像をセグメント化するアクティブ輪郭の MATLAB ドキュメント
サンプルコード
- 徐とプリンスが開発したさまざまなヘビの実例
- マンチェスター大学の Tim Cootes による、スネーク (アクティブ コンター モデル) を操作するための基本ツール
- GVF とバルーン フォースを含む 2D および 3D スネークの Matlab 実装
- Interval Research Corporation のChris Bregler 氏とMalcolm Slaney 氏による Matlab Snake デモ。
- Javaを使用したデモ
- アクティブ コンター実装とテスト プラットフォーム GUI (Nikolay S. と Alex Blekhman による「エッジのないアクティブ コンター」の実装)
- Shawn Lankton による「エッジのないアクティブ輪郭」を実装したアクティブ輪郭セグメンテーション
- Jarno Ralli による幾何学的アクティブ輪郭コード
- 形態学的ヘビ
