2011/07/16 nagoyacv_takmin
DESCRIPTION
2011/07/16名古屋CV勉強会発表資料"A Coarse-to-fine approach for fast deformable object detection" from CVPR2011TRANSCRIPT
2011/07/16 名古屋CV・PRML勉強会発表資料
takmin
本日紹介する論文
A Coarse-to-fine approach for fast deformable
object detection
Marco Pedersoli, Andrea Vadaldi, Jordi Gonzalez
CVPR2011
この論文の主張:
Deformable Part Modelと
いう物体検出手法を高速化したぜ
Deformable Part Model
とはなんぞや?
Histogram of Oriented Gradients (HOG)
8×8ピクセルを一つのセルとする。
セルごとに勾配方向のヒストグラムを作成
各ヒストグラムをつなげたものを特徴量とする
N. Dalal and B. Triggs, “Histograms of Oriented Gradients for Human Detection”, CVPR, 2005
HOGによる物体検出
),(
)(
HpF
pscore
:位置とスケール
位置とスケールpから抽出したHOG特徴量ベクトル
),,( lyxp 位置 スケール
HOGによる物体検出
線型SVMによる学習と検出
Deformable Part Model 物体のモデルをパーツの集合として表現 パーツの相対位置は対象によって変化
ここでは、以下の手法を解説 P. Felzenswalb et al, “Object Detection with Discriminatively Trained
Part Based Models”, PAMI, 32(9), 2010
Deformable Part Model
0p
npp ,,1
nppz ,,0
ルート位置
パーツ位置
評価関数
bdydxdpHFppscoren
i
iidi
n
i
iin 10
0 ),(),(,,
Bounding Boxの妥当性
各BoxのHOG特徴
パーツ位置歪み
歪みパラメータ
)),(2(),(),( 00 iiiii vyxyxdydx
),,,(),( 22 dydxdydxdydxd
標準的なパーツの位置
各パーツ形状の妥当性
パーツ位置の歪み
ルート位置
フィルタ
パーツ位置パーツ位置歪み
定数項
物体の検出
bdydxdpHFppscoren
i
iidi
n
i
iin 10
0 ),(),(,,
npp
ppscore
pscore
n
,,max
)(
0,,
0
1
Sliding Windowの各位置で以下の
スコアを求め、高いところを検出する。
p0
各ルート位置でもっとも最適化されたパーツ位置でのスコア
物体の検出
bdydxdpHFppscoren
i
iidi
n
i
iin 10
0 ),(),(,,
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidi
n
i
iipp
dydxdpFpscoren 10
,,0 ),()(max
1
各パーツは独立なので、それぞれについてスコアを最大化する。
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
Deformable Part Modelの学習
学習データはBounding Box + ラベル名
各パーツのフィルタFと歪みパラメータdを求める。
Latent SVMによる学習
),(max)()(
zxxfxZz
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
識別関数
Latent SVMによる学習
),(max)()(
zxxfxZz
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
識別関数
Latent SVMによる学習
),(max)()(
zxxfxZz
n
i
iidiiip
dydxdpFpFpscorei1
000 ),()(max)()(
nppz ,,0 入力画像 パーツ位置
識別関数
という形なら、SVMで解けるが、、、)()( xxf
残念ながら非凸関数
これを学習したい!
Latent SVMによる学習
),(max)()(
zxxfxZz
nppz ,,0 学習画像 パーツ位置(潜在変数)
識別関数
パーツ位置zを潜在変数として扱う
Latent SVM (MI-SVM)
以下の繰り返しにより解く:
1. を固定して を最大化する を求める
2. を固定して を最適化(通常のSVM)
)(xf z
z
やっと本題
Deformable Part Modelの計算コスト
c
LD
LPO
22
P パーツの数
L 画像のピクセル数
δ セルのサイズ
D フィルターの次元
c パーツの近傍探索範囲
処理するセルの数
特徴量マッチングのコスト
パーツ探索のコスト
Deformable Part Modelの計算コスト
c
LD
LPO
22
処理するセルの数
特徴量マッチングのコスト
パーツ探索のコスト
フィルターのサイズ: 6×6セル
例:
116,13166 D
36662
c
L
セルの次元: 31
パーツ探索範囲: 6×6セル
Deformable Part Modelの計算コスト
36116,1
2
LPO
処理するセルの数
特徴量マッチングのコスト
パーツ探索のコスト
フィルターのサイズ: 6×6セル
例:
116,13166 D
36662
c
L
セルの次元: 31
パーツ探索範囲: 6×6セル
いかにマッチングにかかるコストを減らすか?
Coarse-to-Fineな推定
粗い解像度で取得したフィルター情報を元に、密な解像度でのフィルターの計算範囲を絞る。
極大点周辺のm×mセルのみ
オブジェクトモデル
モデルは異なる解像度のHOGフィルタのパーツで構成
各パーツフィルターは解像度が上がるごとに均等に分割
階層間の制約(青ライン)+パーツ間の制約(赤ライン)
検出のための評価関数
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
各パーツ形状の妥当性
(a)
Sliding Window
の妥当性親子パーツの相対位置の妥当性
(bの青いライン)
隣接パーツの相対位置の妥当性(bの赤の破線)
検出のための評価関数
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
各パーツ形状の妥当性
Sliding Window
の妥当性親子パーツの相対位置の妥当性
隣接パーツの相対位置の妥当性
)();(),;( wxywxyii HiiH MHS
の位置パーツi :iy
入力画像 :x
パラメータ :wHOG特徴 パーツのフィルタ
検出のための評価関数
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
各パーツ形状の妥当性
Sliding Window
の妥当性親子パーツの相対位置の妥当性
隣接パーツの相対位置の妥当性
)();(),;( wxywxyii HiiH MHS
)(),2();,( wyywyyiij FjijiF MDS
22 )(,)(),( jijiji yyxxD yy
の位置パーツi :iy
入力画像 :x
パラメータ :wHOG特徴 パーツのフィルタ
親子パーツの相対位置
歪みパラメータ
検出のための評価関数
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
各パーツ形状の妥当性
Sliding Window
の妥当性親子パーツの相対位置の妥当性
隣接パーツの相対位置の妥当性
)();(),;( wxywxyii HiiH MHS
)(),2();,( wyywyyiij FjijiF MDS
22 )(,)(),( jijiji yyxxD yy
);(),();,( iPjijiP iijMDS ywyywyy
の位置パーツi :iy
入力画像 :x
パラメータ :wHOG特徴 パーツのフィルタ
親子パーツの相対位置
歪みパラメータ
隣接パーツの相対位置
歪みパラメータ
検出のための評価関数
Felzenswalbらのモデルとの対応
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
bdydxdpHFppscoren
i
iidi
n
i
iin 10
0 ),(),(,,
NEW!
各パーツ形状の妥当性
Sliding Window
の妥当性親子パーツの相対位置の妥当性
隣接パーツの相対位置の妥当性
検出のための評価関数
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
隣接パーツの相対位置の妥当性
おそらくこういう状況を防ぐための制約
検出のための評価関数
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
隣接パーツの相対位置の妥当性
隣接パーツの評価あり学習結果
隣接パーツの評価なし学習結果
Coarse-to-Fineにしたために、オクルージョンやノイズに弱くなったため、加えた制約
物体の検出
粗い解像度から順にスコアを計算していく
前の解像度で求めたスコアの極大点周辺(2m+1)×(2m+1)セルのみ
パーツのフィルタ応答を計算
パーツ位置の歪みを計算
(フィルタ応答-歪み)の最大値を計算
物体の検出
粗い解像度から順にスコアを計算していく
前の解像度で求めたスコアの極大点周辺(2m+1)×(2m+1)セルのみ
パーツのフィルタ応答を計算
パーツ位置の歪みを計算
(フィルタ応答-歪み)の最大値を計算
物体の検出
粗い解像度から順にスコアを計算していく
前の解像度で求めたスコアの極大点周辺(2m+1)×(2m+1)セルのみ
パーツのフィルタ応答を計算
パーツ位置の歪みを計算
(フィルタ応答-歪み)の最大値を計算
×4
物体の検出
粗い解像度から順にスコアを計算していく
前の解像度で求めたスコアの極大点周辺(2m+1)×(2m+1)セルのみ
パーツのフィルタ応答を計算
パーツ位置の歪みを計算
(フィルタ応答-歪み)の最大値を計算
×16
物体の検出
隣接パーツ間の制約が無い時は、モデルはツリー構造 DPを用いてスコアが一意に求まる
隣接パーツ間の制約がある時は、一つのパーツの位置を固定してしまう。
Pji
jiP
Fji
jiF
p
i
iH ijijiSSSS
),(),(1
);,();,(),;(,; wyywyywxywxy
iを固定して、jとiの位置からkの歪みを求める
学習
latent structural SVMでパラメータを学習
パーツ位置を潜在変数として扱う
Vedaldiらのやり方*に従ったと書いてあるだけで、具体的にこのモデルにどのようにlatent structural SVMを適用したのかの記述はない。
(おそらく)以下の識別関数Sにおいて、カーネル関数をΦ同士の内積、損失関数をBounding Boxの重なり具合として、wを求めている。
* A. Vedaldi and A. Zisserman. .Structured output regression for detection with partial
occulusion. In Proc NIPS, 2009
),(max;1\
1 ipi
S yxwxyyy
実験:INRIA Pedestrianデータセット
[9] P. Felzenszwalb, R. Girshick, and D. McAllester. Cascade object detection with
deformable par models. In CVPR, 2010
CF: Coarse-to-Fine
sib: 隣接パーツの制約
実験:INRIA Pedestrianデータセット
実験:Coarse-to-Fineの有無で性能比較
INRIA Pedestrianデータの検出スコアの比較
CF無し
CFあり
CF無し
CFあり
実験:PASCAL VOC 2007データセット
まとめ
Coarse-to-Fineなアプローチを入れることでDeformable
Part Modelによる検出を高速化した。
性能(精度+速度)に関しては、ほぼ最新の手法(カスケード型)と同等
この2つの手法は組み合わせることで更なる高速化が可能