【チュートリアル】動的な人物・物体認識技術 -dense trajectories-

53
動的な人物/物体認識技術 -Dense Trajectories- 片岡 裕雄 http://www.hirokatsukataoka.net/ Dense Trajectories Tutorial.

Upload: hirokatsu-kataoka

Post on 17-Jul-2015

9.181 views

Category:

Science


8 download

TRANSCRIPT

Page 1: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

動的な人物/物体認識技術 -Dense Trajectories-

片岡 裕雄 http://www.hirokatsukataoka.net/

Dense Trajectories Tutorial.

Page 2: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

概要 Dense Trajectoriesとは? –  基本的な情報 –  アルゴリズム

検証 –  データセットによる精度 –  詳細行動認識

Dense Trajectoriesの発展 –  改良版Dense Trajectories

Page 3: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Dense Trajectoriesとは?

Dense Trajectories Tutorial.

Page 4: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

人物行動認識のために考案 人物行動認識 –  映像(画像)中の人物が何をしているかを認識 –  下図の場合には”walking”と判断

Page 5: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Dense Trajectoriesによる行動認識 密な(=Dense)特徴点追跡(=Trajectories) –  身体全体の状況を把握 –  特徴ベクトルを取得してwalkingと判断 人物の動きを解析!

Page 6: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Dense Trajectoriesの基本的な情報 考案者 –  Heng Wang (発表当時INRIA所属) –  CVPR2011 (Journal: IJCV2013)

手法 –  簡単に言うと(i)特徴点追跡と(ii)特徴記述

応用場面 –  人物行動認識,ジェスチャ認識,動物体認識 –  基本的には動的な物体認識なら解析できる

H. Wang, et al., “Dense Trajectories and Motion Boundary Descriptors for Action Recognition”, in IJCV2013.

H. Wang, et al., “Action Recognition by Dense Trajectories”, in CVPR2011.

Page 7: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

3D姿勢ベースの認識よりもロバスト

M. Rohrbach, et al., “A Database for Fine Grained Activity Detection of Cooking Activities”, in CVPR2012.

Pose-based approach

Holistic appraoch

詳細行動認識 (Fine-grained recognition)にて –  詳細行動認識では微小な違いによるクラスの違いを見分ける課題 –  姿勢特徴 34.6%に対してアピアランス特徴(=Dense Traj.)は59.2%を記録

Page 8: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

アルゴリズム (i)特徴点追跡 –  ピラミッド画像と特徴点サンプリング –  Farneback Optical Flowによるフロー抽出 –  Median Filteringによるフローの対応付け

(ii)特徴記述 –  HOG, HOF, MBH, Trajectory特徴の記述 –  Bag-of-wordsによる特徴ベクトル化

Page 9: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

ピラミッド画像と特徴点サンプリング スケール対応(ピラミッド構造)と密な記述(サンプリング) –  ピラミッド構造(多段階スケーリング)によりスケールの違いに対応 •  スケールは1/√2 ずつ小さくする

–  特徴点は各スケールにおいてサンプリング •  格子幅は実験的に5x5[pxls]と設定 •  コーナー検出 T: 閾値, λ: 固有値

拡大・縮小に対応 詳細なサンプリング

Page 10: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Farneback Optical Flowによるフロー抽出 密なオプティカルフロー –  Farneback Optical FlowはOpenCVにも実装済 –  KLT法(上), SIFT(中)と比較

ノイズを多数含む

未追跡を含む

Page 11: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Median Filterによるフロー対応付け フレーム t と t+1 のフロー対応付け –  Bilinear補間では物体と背景の境界にブラーが発生するため,フローの対応付けに失敗する場面も多く存在する

–  Median FilterではBilinear補間よりも境界が鮮明になり,失敗回数が少ないことが明らかにされた

–  (x,y): 画像上の座標 M: medianのカーネル ω: オプティカルフロー

Page 12: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

特徴記述 動線を中心とした局所領域から特徴記述 –  追跡された動線 (Tフレーム連結)の周辺領域を抽出 –  周辺領域から局所特徴量HOG, HOF, MBHと,フロー形状を取得 –  下図のように2(x方向)x2(y方向)x3(t方向)の領域から取得した特徴を連結 –  Bag-of-words(BoW)により特徴ベクトルを算出する

フローの中心から局所領域を取得

複数の局所特徴量を抽出

Page 13: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

HOG特徴量 Histograms of Oriented Gradients (HOG) –  物体のおおまかな形状を表現可能 –  局所領域をブロック分割して特徴取得 –  エッジ勾配(下式g(x,y))により量子化ヒストグラム作成 –  勾配毎のエッジ強度(下式m(x,y))を累積

歩行者画像から取得した形状

背景から取得した形状

Page 14: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

HOF特徴量 Histograms of Optical Flow (HOF) –  局所領域をブロック毎に分割 –  前後フレーム(tとt+1)のフローをブロックごとに記述 –  フロー方向と強度(長さ)

前後2フレームからフローを算出

動作ベースの特徴ベクトルを取得

Page 15: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

MBH特徴量 Motion Boundary Histograms (MBH) –  フレームt, t+1から取得したフローをエッジとみなして特徴記述 –  基本的に記述方法はHOGと同じ (Dense Trajectoriesでも同じ次元数を取得)

–  MBHはフロー空間をx,y方向に微分した画像から特徴取得 =>x方向微分のMBHx, y方向微分のMBHyが取得される

(a)(b) t, t+1の元画像 (c) フロー空間 (d) フローの強度 (e)(f) x,y方向の勾配 (g)(h) x,y方向のMBH特徴

Page 16: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Trajectory特徴量 動線の形状を特徴量として扱う –  フレーム間のフローを算出 –  全体のフローの大きさで正規化

Pt = (Pt+1 − Pt) = (xt+1 − xt, yt+1 − yt)

Page 17: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

特徴表現 Bag-of-words(BoW)によりベクトル化 –  予め特徴ベクトル(HOG, HOF, MBH, Traj.)を量子化 –  K-meansにより特徴ベクトルを構成 –  オリジナル論文よりK=4,000と設定

Activity: walking

Dense Trajectories & Feature description

Page 18: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

検証

Dense Trajectories Tutorial.

Page 19: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Dense Trajectoriesの検証 データセットによる比較 –  KTH, Hollywood2, YouTube datasetなど9種類のデータセット –  パラメータ設定 –  処理時間の配分

より詳細な解析 –  “walking”と“running”の特徴ベクトルの違い

Page 20: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

データセットによる比較 Dense Trajectoriesの特徴量間の比較 –  KLT, SIFTによるフロー取得と比較

Page 21: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

データセットによる比較 従来手法との比較

Page 22: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

パラメータ設定 Hollywood2, YouTube datasetを用いてパラメータ調整 –  動線の時間長 –  サンプリングのステップ幅 –  動線周辺から特徴量を取得するパッチサイズ –  特徴取得するxytの分割数 –  ピラミッド画像のスケール数 –  サンプリング点の更新時間

Page 23: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

パラメータ設定 動線の時間長とサンプリングのステップ幅 –  動線の時間長 [frames] –  サンプリングのステップ幅 [pixels]

動線長は15フレームに設定 サンプリング幅は5pxls

Page 24: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

パラメータ設定 パッチサイズとxyt分割数 –  動線周辺から特徴量を取得するパッチサイズ [pixels] –  特徴取得するxytの分割数 [nσ x nσ x nt]

32x32pxls領域から特徴取得

2x2x3がxytの分割数

Page 25: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

パラメータ設定 画像スケール数とサンプリング更新時間 –  ピラミッド画像のスケール数 [scales] –  サンプリング点の更新時間 [frames]

スケール数は8に設定 更新は毎フレーム行う

Page 26: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

処理時間の配分 どこに時間がかかっているかを可視化 –  Farneback Optical Flow計算:52% –  Median Filterによる対応付け:6% –  HOG, HOF, MBH, Trajectory特徴取得:26% –  特徴記録(BoW計算):15% –  その他:1%

フロー計算の工夫で高速化可能?

Page 27: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

詳細行動認識 Dense Trajectoriesは詳細行動認識に有効か? –  詳細行動認識:特徴間の微細な違いを分離する –  “walking”と“running”の違いはどの程度出るか? –  MBH特徴ベクトル(4,000次元)の比較

Page 28: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

0  

0.01  

0.02  

0.03  

0.04  

0.05  

0.06  

0.07  

0.08  

0.09  

0.1  

1   73  

145  

217  

289  

361  

433  

505  

577  

649  

721  

793  

865  

937  

1009  

1081  

1153  

1225  

1297  

1369  

1441  

1513  

1585  

1657  

1729  

1801  

1873  

1945  

2017  

2089  

2161  

2233  

2305  

2377  

2449  

2521  

2593  

2665  

2737  

2809  

2881  

2953  

3025  

3097  

3169  

3241  

3313  

3385  

3457  

3529  

3601  

3673  

3745  

3817  

3889  

3961  

MBH特徴の可視化: walking

Page 29: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

0  

0.01  

0.02  

0.03  

0.04  

0.05  

0.06  

0.07  

0.08  

0.09  

0.1  

1   73  

145  

217  

289  

361  

433  

505  

577  

649  

721  

793  

865  

937  

1009  

1081  

1153  

1225  

1297  

1369  

1441  

1513  

1585  

1657  

1729  

1801  

1873  

1945  

2017  

2089  

2161  

2233  

2305  

2377  

2449  

2521  

2593  

2665  

2737  

2809  

2881  

2953  

3025  

3097  

3169  

3241  

3313  

3385  

3457  

3529  

3601  

3673  

3745  

3817  

3889  

3961  

MBH特徴の可視化: running

Page 30: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

詳細行動識別 DT + BoW + SVMにより識別 –  walkingとrunningにおいてもベクトルの違いが出る –  SVMによるクラス分類でも十分な性能を保証

Page 31: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

実装上のポイント –  BoWによるベクトル化 •  データセットから1.0x106の特徴量を取得してk-means •  次元数となるk=4,000に設定 •  HOG, HOF, MBH, Trajectory毎に4,000次元

–  識別器 •  Multi-class SVMを使用する •  カーネルベースのSVMを適用

Page 32: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

注意すべき点 Dense Trajectoriesで考慮されていない点 –  行動の角度変化に脆弱(カメラ位置が変わると学習も変える必要有) –  3Dで特徴を捉えられるわけではない –  時間幅の変化に弱い(同じクラスでも行動の速さにより特徴が変化)

–  左右対称の行動に対して同じ特徴が得られない

Page 33: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Dense Trajectoriesの発展

Dense Trajectories Tutorial.

Page 34: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

俯瞰図

ノイズ除去 高次特徴表現

コンビネーション

[H. Wang, ICCV2013] Improved Dense Trajectories [Y.-G. Jiang, ECCV2012] Trajectory特徴量のクラスタリング [M. Jain, CVPR2013] アフィン変換行列

[H. Kataoka, ACCV2014] 共起特徴量 [M. Raptis, CVPR2012] Middle-level特徴 [S. Narayan, CVPR2014] フローのクラスタリングと因果関係

[M. Jain, ECCVW2014] Improved Dense Trajectories + Deep Learning Features [D. Oneata, ECCVW2014] Improved Dense Trajectories + SIFT + Color + CNN + Audio Channel

[X. Peng, BMVC2013] Motion Boundary空間にてフロー抽出

[A. Gilbert, ACCV2014] 頻度により特徴マイニング

Page 35: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Improved Dense Trajectories [H. Wang, ICCV2013] オプティカルフロー取得の改良 –  H. WangらがICCV2013にて発表 –  従来のDense Trajectoriesでは背景に余分なフローが発生 –  背景からのフロー除去により精度向上

H. Wang, et al., “Action Recognition with Improved Trajectories”, in ICCV2013.

Page 36: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Improved Dense Trajectories [H. Wang, ICCV2013] Dense Trajectoriesから3点の追加 –  SURF + RANSACを用いたカメラ動作推定 –  人物検出枠によるROI(Region of interest)指定 –  Fisher Vector (FV)の導入

カメラ動作以外が前景動作 行動認識では人物領域に限定

Page 37: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

THUMOS@ICCV’13 Improved DTはワークショップTHUMOSで優勝 –  THUMOS: The First International Workshop on Action Recognition with a

Large Number of Classes, in conjunction with ICCV '13 –  UCF50をさらに拡張したUCF101(101クラス認識)にて認識率を評価 –  INRIAの研究グループはImproved Dense Trajectoriesを用いて85.9%の認識率を達成

Page 38: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

ノイズ除去方式 [Y.-G. Jiang, ECCV2012] –  Trajectory特徴量(下式)に着目 –  動線の局所的パターンによりクラスタリング –  動線のペアをワード化して特徴記述

3パターンにクラスタリング

Y.-G. Jiang, et al., “Trajectory-Based Modeling of Human Actions with Motion Reference Points”, in ECCV2012.

Page 39: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

ノイズ除去方式 [M. Jain, CVPR2013] –  アフィン変換行列を用いてカメラ動作除去 –  動線の逸脱・曲率・途切れを省く処理

背景のフローを除去

M. Jain, et al., “Better exploiting motion for better action recognition”, in CVPR2013.

Page 40: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

ノイズ除去方式 [X. Peng, BMVC2013] –  Motion boundary空間にフローを取得 –  動領域からエッジを取得 –  RGB空間では背景ノイズが発生

X. Peng, et al., “Exploring Motion Boundary based Sampling and Spatial-Temporal Context Descriptors for Action Recognition”, in BMVC2013.

Page 41: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

共起特徴量の導入 [H. Kataoka, ACCV2014] –  共起特徴量をDense Trajectoriesに適用 –  「エッジペアカウント」や「エッジ強度ペア累積」により特徴表現

H. Kataoka, et al., “Extended Co-occurrence HOG with Dense Trajectories for Fine-grained Activity Recognition”, in ACCV2014.

Page 42: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

共起特徴量:CoHOGとECoHOG 「エッジペアのカウント」と「エッジ強度ペアの累積」

CoHOG

Extended CoHOG

–  PCA による次元圧縮: 数千次元から数十次元オーダへ

Page 43: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

パラメータ設定 PCAの次元数と共起特徴量取得のウインドウサイズ

(a)  PCA [dimensions] – 5, 10, 20, 50, 100, 200 (b)  PCA [dimensions] – 50, 60, 70, 80, 90, 100 (c)  Size of edge extraction window [pixels] – 3x3, 5x5, 7x7, 9x9, 11x11

–  PCA: 70次元 => 寄与率と特徴空間サイズのバランス –  ウインドウサイズ: 5x5 pixels => 隣接画素の類似性を考慮(次ページ)

Page 44: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

上位50の頻出エッジペア –  隣接画素を表示

Page 45: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Middle-level特徴量 [Raptis, CVPR2012] –  フローを領域ごとにクラスタリング –  Dense Trajectoriesを領域ごとにクラスタリングしたAction Parts –  クラスタ間の時系列特徴のつながりをMRFにて学習

M. Raptis, et al., “Discovering Discriminative Action Parts from Mid-Level Video Representations”, in CVPR2012.

Page 46: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

因果関係による特徴表現 [S. Narayan, CVPR2014] –  フローのクラスタリングと因果関係 –  人物姿勢の拘束により変化するフローの関係性を記述 –  あるフロー同士の関連性を見抜く

因果関係記述にグレンジャー因果を適用

部位内・部位間の関係性が強力な特徴

S. Narayan, et al., “A Cause and Effect Analysis of Motion Trajectories for Modeling Actions”, in CVPR2014.

Page 47: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

頻度による特徴マイニング [A. Gilbert, ACCV2014] –  膨大な空間から識別に有効な特徴のみを探索 –  マイニングにはAprioriアルゴリズムを適用 –  次元の削減・高速化・高精度化を同時に実現

行動領域から類似特徴を取得する

A. Gilbert, et al., “Data mining for Action Recognition”, in ACCV2014.

Page 48: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Deep Learningとの統合 ワークショップTHUMOS@ECCV2014 –  THUMOS: The First International Workshop on Action Recognition with a

Large Number of Classes, in conjunction with ECCV '14 –  優勝者はAmsterdam大学のチーム –  ECCV2014年終了時点での最高性能を誇る手法 –  2位のチーム(INRIA)もDeep Learningを適用

A. R. Zamir, et al., “THUMOS 2014 Action Classification Track Summary” , in ECCV Workshop THUMOS, 2014.

Page 49: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Improved DT + CNN [M. Jain, ECCVW2014] –  H. WangらのImproved Dense Trajectoriesを適用 –  Convolutional Neural Networks (CNN)により生成された特徴量も統合

Improved DT + Fisher Vectorによる行動特徴

Deep netのアピアランス特徴(6, 7, 8層を使用)

M. Jain, et al., “University of Amsterdam at THUMOS Challenge 2014”, in ECCV Workshop THUMOS, 2014.

Page 50: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

Improved DT + SIFT + Color + CNN + Audio [D. Oneata, ECCVW2014] –  THUMOS 2位のチームINRIAの手法 –  多チャンネルの特徴量を適用 –  Improved DTに加えてSIFT, Color, Deep Learning, 音声

D. Oneata, et al., “The LEAR submission at Thumos 2014”, in ECCV Workshop THUMOS, 2014.

Page 51: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

その他,THUMOS@ECCV14での動向 Middle-level Feature[G. Varol, ECCVW2014]の利用 –  Improved DT + Middle-level feature –  Face, body, eye pair, left eye, right eye, profile and people detectors –  検出領域を特徴として適用

Saliency Feature[S. Karaman, ECCVW2014] –  物体検知の前処理であるBING[M.-M. Cheng, CVPR2014]を適用 –  領域を特定した状態でフローの削除 –  BING (http://mmcheng.net/bing/)

M.-M. Cheng, et al., “BING: Binarized Normed Gradients for Objectness Estimation at 300fps”, in CVPR2014.

S. Karaman, et al., “Fast saliency based pooling of Fisher encoded dense trajectories”, in ECCV Workshop THUMOS, 2014.

G. Varol, et al., “Extreme Learning Machine for Large-Scale Action Recognition”, in ECCV Workshop THUMOS, 2014

Page 52: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

サンプルコード Dense Trajectories Video Description –  CVPR2011, IJCV2013版 –  K-meansやSVMを追加 –  http://lear.inrialpes.fr/people/wang/dense_trajectories

Improved Trajectories Video Description –  ICCV2013, THUMOS2013版 –  Fisher Vector, (人物検出, )SVMを追加 –  http://lear.inrialpes.fr/people/wang/improved_trajectories

Page 53: 【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-

まとめ Dense Trajectoriesの理論と応用 –  特徴点追跡と動線上での特徴量記述 –  BoWやFisher Vectorによる特徴ベクトル化

改良版のDense Trajectories –  ノイズ除去 –  特徴表現の拡張 –  Deep LearningやMiddle-level特徴との統合