ASM(active shop model)アルゴリズム概要(一)

5192 ワード

この記事は私の個人ブログから来ました.
概要
ASMは点分布モデル(Point Distribution Model,PDM)に基づくアルゴリズムである.PDMでは、顔、人、心臓、肺などの形状がいくつかの重要な特徴点(landmarks)の座標によって順次直列になって一つの形状ベクトルを形成して表現できます.ASMアルゴリズムは人工的に定められた方法でまずトレーニングセットを定め,訓練を経て形状モデルを得て,鍵となる点の整合によって特定の物体の整合を実現する必要がある.ASMの利点は、トレーニングデータによってパラメータの調整を制限し、形状の変化を合理的な範囲に制限することができることである.本論文はASMのオリジナル論文といくつかの資料に基づいてASMアルゴリズムの数学原理を整理する.
訓練画像の表示
ASMを確立するためには、トレーニングデータとしてn個の特徴点を示すN枚の顔画像(複数人の異なる表情と姿勢を含む)のセットが必要である.特徴点は、顔の外郭と器官の縁にマークすることができます.この図には67の基準点がありますが、各基準点の順序は訓練セットの各写真と一致する必要があります.例えば212の2つの点は、顔と耳の接続にそれぞれ対応し、他のトレーニング画像にも同じ基準点が必要である.全部でN枚の訓練図があると仮定すると、各図にはn個の点があり、第i枚の画像の第k点の座標は次のように表されています.
(xi,j,yi,j)
i番目の画像については、各点を行列で表すことができます.
Xi=[xi 0,yi 0,xi 1,yi 1,…(n−1),yi(n−1)]T
そのうちの1<=i<=N;
訓練画像の配置
訓練画像の形状変化を調べるために,異なる形状に対応する点を比較して,これらの画像を先に整列させなければならない.配置とは、ある形状を基準にして他の形状を回転させ、スケーリングと平行移動させ、できるだけ基準形状に近いようにする過程です.基準形状にできるだけ近いですが、数学的には常に欧米式の距離の大きさで近い度合いを測定します.画像iの基準点行列がXiであると仮定し、画像jの基準点行列がXjであり、両者の欧風距離サイズがXjである.
dik=(xi 0−xk 0)2+(yi 0−yk 0)2+(xi 1−xk 1)2+(yi 1−yk 1)2+…(xi(n−1)−xk(n−1)+2+(yi(n−1)−yk(n−1)−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√
次のようなマトリックス演算形式でも表現できます.
d 2 ik=(Xi−Xk)T(Xi−Xk)
時には、各点に対して異なる重みを加え、重み付け行列を設定する必要があります.
W、重み付けされたヨーロッパの距離は
dik=w 0(xi 0−xk 0)2+w 0(yi 0−yk 0)2+w 1(xi 1−xk 1)2+w 1(yi 1−yk 1)2+…+wn−1(xi(n−1)2+wn−1(n−1)2+wn−1(n−1)−1(yi(n)−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
または行列式で表します.
d 2 ik=(Xi−Xk)TW(Xi−Xk)
そのうち
Wは対角行列である
W=diag(w 0,w 0,w 1,w 1,…wj,wj,…wn−1,wn−1)
訓練画像の配置を実現するために、まず一つの基準画像を選択します.一般的に最初の画像を選択します.
X 1です.トレーニングセットの他の画像は、できるだけ基準画像に近いように変換されます.具体的な変化過程は、ズーム幅パラメータを使用することができます.
s,回転パラメータ
thetaおよび並進パラメータ行列
tを表示します.2枚目の画像を変換して、できるだけ1枚目の画像に近づけると仮定します.変換後の画像行列は次のように表されます.
M(sθ)[X 2]−t
変換後のイメージマトリックスと基準マトリックス
X 1の加重欧式距離の二乗は次のように表されている.
E=(X 1−M(sθ)[X 2]−t)TW(X 1−M(s,θ)[X 2]−t)
そのうち
M(sθ)[xjkyjk]=((s∗cos)θ)xjk−(s∗sin)θ)yjk(s∗sin)θ)xjk+(s∗cos)θ)yjk)t=(tx,ty,tx,ty,…tx,ty)T
仮定:
ax=s∗cosθあゆ=s∗sinθ
最適な配置結果を得るためには,スケーリング振幅パラメータを計算しなければならない.
s,回転パラメータ
thetaおよび並進パラメータ行列
t使
Eが最小に達すると、重み付け最小二乗法を利用して、以下の式が得られる.
ͦEͦax=0ͦEͦay=0ͦEͦtx=0ͦEͦty=0
将を分かつ
Eは上の式に代入し、次のマトリックス方程式を得ることができる.
⎛?⎜X 2 Y 0−Y 2 X 2 0 ZW 0 X 2−Y 20 X 2−Y 20 WY 2 X 2−X 2−X 2−Y 20 WY 2 X 2?????g?????9116;⎜X 1 Y 1 C 2 C 2⎞_;
そのうち
Xi=Σk=0 n−1 WkxikYi=Σk=0 n−1 wkyiz=Σk=0 n−1 Wk(x 22 k+y 22 k)W=Σk=0 n−1 WkC 1=Σk=0 n−1 Wk(x 1 kx 2 k+y 1 Kk)C 2=k 1
以上の方程式を通すと求められます.
ax,ay,tx,ty
この4つの変数の値は、画像2を画像1に配置することもできます.
上の式では、重み行列の決定方法についてはまだ議論していません.
W.トレーニングセットの各点において、重みの高い点ほど結果に対する影響は大きくなります.どのように1つの点がどれぐらいの重みを持つべきかを決定しますか?ASMのオリジナル論文で著者は比較傾向を選択しました.
安定した点です.訓練集中で他の点との距離があまり変わらない点が安定しています.
仮説
Rklは一枚の写真の中を表します.
k点と
l点の距離、
VRLは、この距離の全てのトレーニング画像における変化量を表しています.
VRL be the variance in this distance over the set of shapes)は、元の論文では示されていない.
VRLの計算式ですが、その定義によれば、各トレーニング画像に表示されます.
Rklからなる配列の分散形式.
VRLは、トレーニング集中k点とl点距離の変化度合いを示し、k点と他の全ての点との距離変化の度合いを積算すれば、k点の安定度を判断することができる.重みWの決定には、以下のような式がある.
wk=(Σl=0 n−1 VRL)−1
ここでnはモデルポイントの個数である.
k点が安定していることがわかる.
wkが大きいほど、
k点はすなわち、大きいほど重みがある.
前の分析を総合して、トレーニングセットの第2、3、…、(N−1)枚の写真をそれぞれ第一の画像と揃えて、配置が完了したら次のステップの画像分析ができます.
画像のPCA分析
前にトレーニングセットのすべての画像を揃えましたが、その後は整列された画像データに基づいてPCA分析を行い、最終的にはトレーニングされた形状モデルが得られます.
N枚の整列された画像データがあると仮定して、i番目の画像のデータはXiと表し、平均形状は
X¯=1 NΣi=1 NXi
画像のサンプリングポイントが多いので、直接全部計算すると計算時間がかかります.PCAアルゴリズムを利用して画像データを次元ダウン処理することができます.PCAの基礎理論についてはこの記事を参照してください.
N次元ベクトルのセットをK次元(Kは0より大きく、Nより小さい)に低減し、その目標はK個の単位(モードは1)の直交ベースを選択し、元のデータをこのセットに変換した後、各フィールドの二間の共分散は0で、フィールドの分散はできるだけ大きい(直交の制約の下で、最も大きいK個の分散を取る).
これは元の定義ですが、実際には形の各点の元の座標位置に興味がありません.各画像の各形状点が平均形状から逸脱した大きさを訓練することに興味があります.したがって、ここで新しい空間に写像するのは元の点座標ではなく、各点が平均形状から逸脱した座標です.座標から逸脱した共分散行列は元の座標です.:
S=1 NΣi=1 NdXidXTi
中dX
iは各ピクチャの形状と平均形状とのずれである.
dXi=Xi−X¯
新しい空間の直交基は
P:
P=?⎜p 0 p 1...p 2 k−1??
PCAの関連知識に基づいて、
Pは
Sの特徴ベクトルからなるマトリクスは、
Spk=λkpk
新しい空間にマッピングすると、各形状が平均形状から逸脱したベクトルを新しい空間の特徴ベクトルで線形表現できます.
dXi=bi 0 p 0+bi 1 p 1+…+bi(2 n−1)p 2 n−1
bilはi番目の図です
plベクトルの振幅値です.ここには以下の数式があります.
Xi=X¯+dXi=X¯+Pbi
以上の式によって得られます.
bi=P−1(Xi−X¯)=PT(Xi−X¯)
ここのb
iは、i番目のピクチャの形状と平均形状とのずれの度合いを示しており、1つの形状については、異なるピクチャの表現形式では、次の式で表すことができる.
X=X¯+Pb
ここです
Xは形状が許容される表現形式を示します.例えば、私たちは顔の識別をします.顔はそれぞれ違っていますが、写真を撮る角度は違っていますが、いずれにしても人の顔の形は平均的な顔の上で変形して得られます.ベクトルを規定することができます.
b一つの区間の範囲内であれば、
bこの区間を離れないと、人の顔が検出されたと考えられます.これもASMが形に合う基礎原理です.
bの区間範囲はASMの原始論文から取ってください.
−3λk−−−√bk_3λk−−−√
ASMの画像配置と画像形状のPCA分析を分析しましたが、次のページではどのように形状の検索を行うかを紹介します.
参考文献
active shop models their trining and appration(オリジナル論文)An Introduction to Active Shape Models ASM(Active Shape Model)アルゴリズム紹介