今回は、深層学習(Deep Learning)を用いた動作認識についてご紹介します。Deep Learningの一種であるCNN(Convolutional Neural Network)は、第16回の記事で概要を説明していますので、まだ読んでいない方はそちらも読んでみてください。
Two-stream ConvNets
Two-stream ConvNets(参考文献:Karen Simonyan and Andrew Zisserman, “Two-Stream Convolutional Networks for Action Recognition in Videos,” in NIPS 2014)は、空間方向のCNN(Spatial stream ConvNet)と時系列方向のCNN(Temporal stream ConvNet)により、アピアランスの特徴と動きの特徴の両方を抽出することで高精度なAction recognitionを実現しています。
処理の概要は図1のとおりです。Spatial stream ConvNetでは、静止画像を入力とし、画像中の物体や背景のアピアランスの特徴を抽出します。一方、Temporal stream ConvNetでは、オプティカルフローの水平方向成分と垂直成分の系列を入力とし、動きに関する特徴が抽出されます。これらを統合することにより、高い性能でAction recognitionを実現しています。
図2は、オプティカルフローの算出結果の例です。連続するフレーム間のオプティカルフローの水平方向成分と垂直方向成分を求め、その水平方向成分と垂直方向成分をそれぞれ入力のチャネルに割り当てます。つまり、Lフレームのオプティカルフロー系列を求めたとすると、入力は合計2Lチャネルとなります。このとき、図2のように水平方向成分、垂直方向成分は、画像と同じ2次元配列であるためSpatial stream ConvNetの枠組みをそのまま適用することができます。
Trajectory-Pooled Deep-Convolutional Descriptors
Trajectory-Pooled Deep-Convolutional Descriptors(TDD)という手法があります(参考文献:Limin Wang, Yu Qiao, and Xiaoou Tang, “Action Recognition with Trajectory-Pooled Deep-Convolutional Descriptors,” in CVPR2015)。TDDは、前述のTwo-stream ConvNetsと、第20回で紹介したDense trajectoriesの改良版であるimproved trajectories(iDT)を融合した手法です。
TDDの概要は、図3のとおりです。上段がiDTで、下段がTDDです。iDTでは、trajectory近傍の領域からHOG、HOF、MBHといった人手により設計した特徴量を求めていました。一方、TDDでは、Two-stream ConvNetsの枠組みを用いて特徴量マップを求め、trajectory近傍の領域の特徴量をPoolingします。TDDを用いることで、iDTよりも精度の高いAction recognitionを実現できます。さらに、TDDとiDTの両方を用いることで更なる性能向上に成功しています。
動作認識、動画像の分類に興味のある方は、参考文献を読んでみてください!
著者プロフィール
樋口未来(ひぐち・みらい)
日立製作所 日立研究所に入社後、自動車向けステレオカメラ、監視カメラの研究開発に従事。2011年から1年間、米国カーネギーメロン大学にて客員研究員としてカメラキャリブレーション技術の研究に携わる。
現在は、日立製作所を退職し、東京大学大学院博士課程に在学中。一人称視点映像(First-person vision, Egocentric vision)の解析に関する研究を行っている。具体的には、頭部に装着したカメラで撮影した一人称視点映像を用いて、人と人のインタラクション時の非言語コミュニケーション(うなずき等)を観測し、機械学習の枠組みでカメラ装着者がどのような人物かを推定する技術の研究に取り組んでいる。また、大学院での研究の傍ら、フリーランスとしてコンピュータビジョン技術の研究開発に従事している。
専門:コンピュータビジョン、機械学習