領域ベースの畳み込みニューラルネットワーク (Region Based Convolutional Neural Networks, R-CNN)は、コンピュータビジョン、特に物体(オブジェクト)検出のための機械学習モデルの 1 つ。
歴史 R-CNN の当初の目的は、入力画像を受け取り、出力としてバウンディングボックスの集合を生成することだった。各バウンディングボックスには、物体とそのカテゴリ(車や歩行者など)が含まれる。最近では、R-CNN は拡張され、他のコンピュータビジョンタスクを実行できるようになった。これまでに開発された R-CNN のバージョンをいくつか紹介する。
R-CNN(2013 年 11 月) R-CNN は、入力画像が与えられると、選択的検索(selective search)と呼ばれる手法を適用して関心領域(regions of interest; ROI)を抽出する。一つ一つの ROI は画像内の物体の境界を表す長方形である。シナリオによっては、2,000 もの ROI が存在する。その後、各 ROI をニューラルネットワークに通し、特徴量を出力する。各 ROI が出力した特徴量に対して、一連のサポート ベクター マシン分類器を使用し、その ROI に含まれる物体のカテゴリを決定する。
Fast R-CNN(2015 年 4 月) オリジナルの R-CNN では、関心領域(ROI)のそれぞれについてニューラル ネットワークの特徴量を独立して計算したが、Fast R-CNN は、画像全体に対して 1 回だけニューラル ネットワークを実行する。ネットワークの最後には ROI プーリングと呼ばれる新しい手法があり、ネットワークの出力テンソルから各 ROI を切り出し、形状を変更して分類する。オリジナルの R-CNN 同様、選択的検索を使用して ROI を抽出する。
Faster R-CNN(2015 年 6 月) R-CNN では選択的検索を用いて ROI を抽出したが、Faster R-CNN では、選択的検索ではなく、ROI 生成をニューラル ネットワーク自体に統合している。
Mask R-CNN(2017 年 3 月) 物体検出に加え、インスタンスのセグメンテーションも行う。ROI プーリングを ROI Align と呼ばれる新しい手法に置き換え、ピクセルの断片を表現できるようにした 。
Mesh R-CNN(2019 年 6 月) 2D 画像から 3D メッシュを生成する機能が追加されている。
応用 R-CNN は、ドローンに搭載されたカメラからのオブジェクトの追跡、画像内のテキストの位置の特定、Google レンズでのオブジェクト検出などで使用されている。Mask R-CNN による物体検出は、ニューラルネットワークの学習速度を競う MLPerf トレーニングベンチマークにおける 7 つのタスクのうち 1 つに位置付けられている。
参考文献