Mais conteúdo relacionado Mais de Akisato Kimura (20) 関西CVPR勉強会 2012.10.282. 何でこれを紹介しようと思ったんですか?
Best Paper Awardを取ったから (嘘
Deja vu を感じた…
(参考: http://www.slideshare.net/akisatokimura/cvprml-2011827 )
2 関西CVPR勉強会 (October 28, 2012)
3. 一言で言うと,何これ?
従来法
検出漏れ
提案法 誤検出
隠れている人も見つけて追跡!
3 関西CVPR勉強会 (October 28, 2012)
5. 大雑把な枠組
Single-person DPM
Double-person DPM
競合・結合
Joint-person DPM
5 関西CVPR勉強会 (October 28, 2012)
7. Single person detector (SPD)
Single-person DPM
Double-person DPM
競合・結合
Joint-person DPM
7 関西CVPR勉強会 (October 28, 2012)
8. Deformable part model (DPM)
@yonetaniryo さんが紹介してくれたはずなので,省略.
ソフトウェアはVer.5 になっています.ただしMATLABのみ…http://people.cs.uchicago.edu/~rbg/latent/
8 関西CVPR勉強会 (October 28, 2012)
9. Grammar models for person detection
他の物体による 隠れ を明示的にモデル化
人同士が重なっている場合は無理…
(cf. Girshick+ “Object detection with grammar models,” Proc. NIPS2011.)
9 関西CVPR勉強会 (October 28, 2012)
10. Double person detector (DPD)
Single-person DPM
Double-person DPM
競合・結合
Joint-person DPM
10 関西CVPR勉強会 (October 28, 2012)
11. 概念的には非常にシンプル
重なっている2人を,1つの物体と見なして学習.
Single person detector
(=DPM)
Double person detector
(≒DPM)
11 関西CVPR勉強会 (October 28, 2012)
12. 詳細は意外と面倒(1)
SPD,実際にはモデル1つでは足りないことが多い.
パーツの平均アスペクト比で学習データを初期分類して学習.
潜在変数 z = モデルインデックス c とパーツ (p1…pn)
DPD も同様に複数のモデルで表現.
隠れ度合いの大きさで学習データを初期分類して学習.
隠れ度合い:小 隠れ度合い:中 隠れ度合い:大
12 関西CVPR勉強会 (October 28, 2012)
13. 詳細は意外と面倒(2)
2人は2人として検出しないといけない
故に,検出結果(= bounding box)を2つ出さないといけない.
Double person detectorの結果から,線形回帰で求める.
モデルcに依存する
(2n+3)×8係数行列
𝑇
𝑩 𝑖 = 𝑔𝑖 𝒛 𝜶 𝑐 + 𝝐𝑖
各人の推定検出位置 DPD検出結果
(boxの左上・幅・高さ×2, (各フィルタの左上 &
合計8次元) root filterの幅,
合計2n+3次元)
13 関西CVPR勉強会 (October 28, 2012)
14. 詳細は意外と面倒(3)
DPDの学習データを集めるのは大変!
隠れ度合いの大きさを調整するとか無理…
なので,自力で作ることにした.
元画像 素材画像 人領域切り出し 合成画像
14 関西CVPR勉強会 (October 28, 2012)
15. DPD単独の定量評価
Recall ≒ 0.5 Precisionが高いところで弱い
→ 1人しか検出できてない! → やや保守的な検出器
Recall
Recall
1.0 - Precision 1.0 - Precision
15 関西CVPR勉強会 (October 28, 2012)
17. Joint person detector (JPD)
Single-person DPM
Double-person DPM
競合・結合
Joint-person DPM
17 関西CVPR勉強会 (October 28, 2012)
18. 先ほどのDPD評価は少しずるい
必ず2人が並んで映っている画像だけで評価している.
実際には,1人か2人か(n>2人か),事前に区別できない!
18 関西CVPR勉強会 (October 28, 2012)
19. JPDのこころ
場に応じて,SPDとDPDを切り替えて使いたい!
学習は別々に,検出は一体で.肝は検出時のNMS.
Non-maximum suppression (NMS)
(できるだけ検出候補を減らす(DPMにもある)操作)
第1ステップ: 第2ステップ:
SPDとDPDとの勝負 Bounding box推定+
個別PDでのNMS
SPDとDPDとを平等に比較
して,ある程度候補を絞る. Bounding boxを推定した
後は,通常のDPMと同様.
一般にSPDの方が強く,
絞り過ぎるとrecallが落ちる.
19 関西CVPR勉強会 (October 28, 2012)
20. 実験に用いたデータ
TUD Pedestrians TUD Crossing
250 frames in total, 201 frames in total,
301 annotated people, 1168 annotated people,
no occlusions. frequently occluded.
(まずは https://www.d2.mpi-inf.mpg.de/node/382 を見た方が良いです.)
20 関西CVPR勉強会 (October 28, 2012)
21. 定量評価の結果 (TUD Pedestrians)
隠れがないのに何故JPDがSPDに勝てるのか,
著者らも不明だと言っているが,まぁ良いか…
(重要なのは,JPD導入の副作用が出ないこと.)
隠れがないのに無理矢理DPDをするので,
precision<0.5を回避できない.
21 関西CVPR勉強会 (October 28, 2012)
22. 定量評価の結果 (TUD Crossing)
JPDは若干保守的ではあるが,
P=R 直線上での精度は最も良い.
SPDは隠れがない人の検出は滅法強いが,
隠れがあると途端にダメになる.
DPD単独では保守的すぎるし,
1人を無理に2人と検出する分だけ,
precisionの上がり方が鈍い.
22 関西CVPR勉強会 (October 28, 2012)
23. Trackingもやってみました
たぶん主目的はこっち [Andriluka+ CVPR08]
検出と追跡との相互補完をするのが狙い
前提条件が検出と少し違う
NMSしません.可能性はできるだけ多く残します.
できるだけ長く追跡できているものを優先して残します.
10フレーム以上追跡できないときは捨てます.
現時点で追っている人が当該人物である確率
𝑇 (検出器出力のexponential)
𝑝 𝐻 = 𝑝 𝑑𝑒𝑡 ℎ11
𝑗 𝑝 𝑡𝑟𝑎𝑛𝑠 (ℎ 𝑗𝑘−1 , ℎ 𝑗𝑘𝑘 )𝑝 𝑑𝑒𝑡 ℎ 𝑗𝑘𝑘
𝑘−1
𝑘=2
1時点前と現時点とで同じ人を追っている確率
(位置と大きさの差分をGaussianでモデル化)
23 関西CVPR勉強会 (October 28, 2012)
25. 提案手法の限界
交差する人たちをモデル化していない.
TUD Crossingで検出できていない画像での主要因.
基本的に水平横向きの場合しか考えていない.
俯瞰や斜め向きをも考慮すると,隠れ方のパターンが増え,
扱いが面倒になる.
計算量と精度とのtrade-offに関する問題がより深刻に.
NMSに要する処理がかなり重そうな雰囲気がする.
Tracking目的であればJPDは不要,SPD+DPD並列で十分?
巨人 (DPM) の方の上に乗る現状の打開
25 関西CVPR勉強会 (October 28, 2012)
26. おしまい
26 関西CVPR勉強会 (October 28, 2012)