前回は、一般物体検出の様々な手法を整理しました。今回は、その中のFast R-CNN[1]の概要について解説したいと思います。

R-CNNの課題

第52回で紹介したR-CNNでは、学習を各処理ごとに多段階に行う必要があり複雑、学習に非常に時間を要する、メモリ消費量が大きい、画像1枚に対する検出処理で47secもの時間がかかる、という欠点がありました。

図1に示すR-CNNの処理フローで、処理に時間を要しているのは3のCompute CNN featuresです。2k個(〜2000個)もの物体候補それぞれをリサイズして個別にCNNに通す必要があり、処理が遅い大きな原因となっていました。物体候補の領域は重なることもあるため、重複した領域は何度も処理することになってしまいます。

この課題を最初に解決したのがSPPnet[2]です。SPPnetの名前の由来でもあるSpatial Pyramid Poolingは、任意のサイズの領域を固定のサイズにプーリングできる手法です。入力画像をまずCNNに通しFeature mapを生成します。そのFeature mapに対してそれぞれの物体候補領域毎にSpatial Pyramid Poolingを適用することで効率津的に物体候補領域毎の特徴量を抽出することができます。しかし、SPPnetは、前述の多段階の複雑な学習が必要という課題は残ったままでした。

  • R-CNNの処理フロー

    図1 R-CNNの処理フロー

Fast R-CNNの概要

Fast R-CNNはmulti-task lossを導入することで、1回の学習で各ステージを同時に学習できるようになりました。Fast R-CNNの構造は図2の通りです。任意のサイズの入力画像と、その画像中の複数の物体候補領域(RoI:Region of Interest)が入力されると、まず入力画像をFully convolutional networkに通すことでFeature mapを求めます。そして、物体候補領域(RoI)をそのFeature map空間に投影し、投影されたRoIの中でPooling処理を行うことで物体候補ごとに固定サイズのFeature mapを生成します(図中のRoI pooling layer)。

そして、全結合層(FCs:Fully connected layers)で固定長の特徴量ベクトルを求めます。最後にその特徴量ベクトルを物体の種別を推定するための全結合層(FC)と、物体の外接矩形の位置、サイズを推定するための全結合層(FC)に入力し、物体の種別、位置、サイズを求めます。

推定誤差は、物体の種別の推定誤差と、物体の外接矩形の位置・サイズの推定誤差の2つです。この2つを同時に考慮したものがmulti-task lossで、multi-task lossを最小化することで図2に記載したネットワークを一気に学習することができるわけです。

53回の記事で、Fast R-CNNの「End-to-end trainingの可否」を△としました。 これは物体候補領域(RoI)を求める部分が図2の構造に組み込まれていないためです。

  • Fast R-CNNの構造

    図2 Fast R-CNNの構造

参考文献

[1] Ross, Girshick, "Fast r-cnn." in ICCV2015
[2] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun, "Spatial pyramid pooling in deep convolutional networks for visual recognition." IEEE transactions on pattern analysis and machine intelligence 37.9 (2015)

著者プロフィール

樋口未来(ひぐち・みらい)
日立製作所 日立研究所に入社後、自動車向けステレオカメラ、監視カメラの研究開発に従事。2011年から1年間、米国カーネギーメロン大学にて客員研究員としてカメラキャリブレーション技術の研究に携わる。

日立製作所を退職後、2016年6月にグローバルウォーカーズ株式会社を設立し、CTOとして画像/映像コンテンツ×テクノロジーをテーマにコンピュータビジョン、機械学習の研究開発に従事している。また、東京大学大学院博士課程に在学し、一人称視点映像(First-person vision, Egocentric vision)の解析に関する研究を行っている。具体的には、頭部に装着したカメラで撮影した一人称視点映像を用いて、人と人のインタラクション時の非言語コミュニケーション(うなずき等)を観測し、機械学習の枠組みでカメラ装着者がどのような人物かを推定する技術の研究に取り組んでいる。

専門:コンピュータビジョン、機械学習