物体検出のための深層畳み込みニューラルネットワークの進歩

物体検出のための深層畳み込みニューラルネットワークの進歩

近年、深層畳み込みニューラル ネットワーク (DCNN) により、画像の分類と認識が大幅に向上しました。 2014年から2016年の過去2年間を振り返ると、R-CNN、Fast R-CNN、Faster R-CNN、ION、HyperNet、SDP-CRC、YOLO、G-CNN、SSDなど、ますます高速かつ正確な物体検出方法が登場してきました。

1. 地域提案型方式

このタイプの方法の基本的な考え方は、まず候補領域を取得し、次に候補領域の境界を分類して回帰することです。

1.1 R-CNN[1]

R-CNN は、ターゲット検出に DCNN を使用する初期の方法です。中心的なアイデアは、まず DCNN を使用して画像内の各候補領域の特徴を抽出し、SVM を使用して分類することです。分類結果は大まかな検出結果です。次に、DCNN の特徴を再度使用し、別の SVM 回帰モデルと組み合わせて、より正確な境界ボックスを取得します。

候補領域を取得する方法は、一般的に使用される選択検索です。 1 つの画像には、サイズやカテゴリが異なる約 2,000 個の候補領域が得られるため、CNN で処理する画像サイズ (227x227) に合わせるために、それらを同じサイズに変換する必要があります。

この記事で使用されている CNN 構造は AlexNet から取得されており、ImageNet データセットの 1,000 の分類タスク カテゴリでトレーニングされています。その後、ネットワーク構造は、パラメータの微調整を通じて、この記事の 21 の分類タスク カテゴリに適応されます。

この方法は、VOC 2011 テスト データセットで 71.8% の検出精度を達成しました。この方法の欠点は、1. トレーニングとテストのプロセスが、候補領域の取得、DCNN 特徴抽出、SVM 分類、SVM 境界ボックス回帰という複数の段階に分かれているため、トレーニング プロセスに非常に時間がかかります。 2. DCNN によって取得された特徴はトレーニング プロセス中に保存する必要があり、大量のメモリ領域を占有します。 3. テスト中は、各候補領域から特徴を抽出する必要があり、これらの領域はある程度重複しています。各領域の特徴抽出は個別に計算されるため、非効率的であり、画像のテストに非常に時間がかかります。

1.2 高速R-CNN[2]

R-CNN をベースに、トレーニングとテストのプロセスを高速化するために、Ross Girshick は Fast R-CNN を提案しました。これは VGG19 ネットワーク構造を使用し、トレーニングとテストでそれぞれ R-CNN の 9 倍と 213 倍高速です。主なアイデアは次のとおりです。1. 各候補領域に対して個別に畳み込みを実行するのではなく、画像全体を畳み込んで特徴画像を取得します。2. 候補領域の分類と境界ボックスのフィッティングの 2 つの手順を個別に実行するのではなく、組み合わせます。概略図は以下のとおりです。

この記事では、ROI プーリング レイヤーを使用して、さまざまなサイズの候補領域の特徴を固定サイズの特徴画像に変換します。アプローチは、候補領域 ROI のサイズが、出力サイズがであると仮定し、ROI をサイズのグリッドに分割し、各グリッドに対して最大プーリングを使用して、ターゲット サイズの特徴画像を取得するというものです。

候補領域の分類と境界ボックスのフィッティングの組み合わせは、デュアルタスク ネットワーク構造によって実現されます。2 つの完全に接続された出力層がそれぞれカテゴリ予測と境界ボックス予測に使用され (上図を参照)、これらの 2 つのタスクは結合コスト関数を使用して同時にトレーニングされます。

式の 2 つの項は、分類損失と回帰損失です。この方法は R-CNN よりもはるかに高速です。特に新しい画像をテストする場合、候補領域の生成時間を考慮に入れなければ、リアルタイム検出を実現できます。候補領域を生成するための選択的検索アルゴリズムは、画像の処理に約 2 秒かかり、これがこの方法のボトルネックになります。

1.3 より高速なR-CNN[3]

上記の方法はどちらも、候補領域を生成するために選択的検索に依存しており、非常に時間がかかります。では、畳み込みニューラル ネットワークを直接使用して候補領域を取得することはできるでしょうか? この方法では、余分な時間を費やすことなく、候補領域を取得できます。

Shaoqing Ren 氏は、このアイデアを実現するために Faster R-CNN を提案しました。2 つの畳み込みニューラル ネットワークがあるとします。1 つは画像内の候補領域を取得する領域生成ネットワークで、もう 1 つは候補領域の分類および境界ボックス回帰ネットワークです。これら 2 つのネットワークの最初の数層では、畳み込みを計算する必要があります。これらの層でパラメータを共有し、最後の数層でそれぞれの特定のターゲット タスクのみを実装できる場合、画像に対して、これらの共有畳み込み層を使用して 1 回の順方向畳み込み計算を実行するだけで、候補領域と各候補領域のカテゴリおよび境界を同時に取得できます。

領域提案ネットワーク(RPN)法の原理図は上図の通りである。まず、入力画像に対して数層の畳み込みを行って特徴画像を取得し、特徴画像上に候補領域を生成する。この方法は、(3)スライディングウィンドウを使用して局所特徴画像を低次元特徴に変換し、領域(cls層、出力)が候補領域であるかどうかを予測し、対応する境界ボックス(reg層、出力)を生成する。ここでの領域はアンカーと呼ばれ、スライディング ウィンドウと同じ中心を持つ、さまざまなサイズとアスペクト比の長方形のボックスに対応します。畳み込み後の特徴画像のサイズが であると仮定すると、アンカーの合計は 個あります。この特徴抽出および候補領域生成の方法はシフト不変です。

RPN を使用して候補領域を取得した後、候補領域の分類と境界ボックス回帰には Fast R-CNN が引き続き使用されます。どちらのネットワークも共通の畳み込み層を使用します。 Fast R-CNN のトレーニング中には固定された候補領域生成方法が必要となるため、バックプロパゲーション アルゴリズムを使用して RPN と Fast R-CNN を同時にトレーニングすることはできません。この記事では、トレーニング プロセスを完了するために 4 つの手順を使用します。1. RPN を個別にトレーニングします。2. 手順 1 で取得した領域生成方法を使用して、Fast R-CNN を個別にトレーニングします。3. 手順 2 で取得したネットワークを初期ネットワークとして使用して、RPN をトレーニングします。 4. Fast R-CNN を再度トレーニングし、パラメータを微調整します。

Faster R-CNN は Fast R-CNN と同様の精度を持ちますが、トレーニング時間とテスト時間はどちらも 10 分の 1 に短縮されます。

1.4 ION: インサイドアウトサイドネット[4]

ION も Region Proposal に基づいています。候補領域を取得したことを基に、各候補関心領域 ROI の予測精度をさらに向上させるために、ION は ROI 内の情報と ROI 外の情報を組み合わせることを検討します。ION には 2 つの革新があります。1 つは、ROI 内のローカル フィーチャのみを使用するのではなく、空間再帰型ニューラル ネットワークを使用してコンテキスト フィーチャを組み合わせることです。もう 1 つは、異なる畳み込み層から取得したフィーチャを予測用のマルチスケール フィーチャとして接続することです。

IONは、上下左右の4方向でRNNを独立して使用し、その出力を連結して特徴出力を形成します。このような2つの処理を経て得られた特徴をコンテキスト特徴として、前の畳み込み層の出力特徴と連結することで、コンテキスト情報とマルチスケール情報の両方を含んだ特徴を得ます。

1.5 ハイパーネット[5]

HyperNet は、Faster R-CNN に基づいて、より優れた候補領域を取得するために Faster R-CNN で使用される RPN をさらに改善しました。異なる畳み込み層から取得した特徴画像を組み合わせて、より優れた領域提案と検出精度を実現するという考え方です。

この記事では、異なる畳み込み層の出力を組み合わせて、ハイパー フィーチャと呼ばれる特徴を取得します。異なる畳み込み層の出力サイズは異なるため、浅い層の特徴画像の解像度が高くなり、境界ボックスの精度を向上させるのに役立ちますが、境界ボックス内のオブジェクトを誤分類しやすくなります。深い層で取得された特徴画像の解像度は非常に低く、小さなオブジェクトの境界ボックスの配置は不正確になりがちですが、これらの特徴はより抽象的であるため、オブジェクトの分類をより正確にすることができます。したがって、この 2 つを組み合わせると、ターゲットの検出精度と位置決め精度が向上します。

1.6 SDP-CRC[6]

SDP-CRC は、異なるスケールのオブジェクトを処理し、候補領域の計算効率を向上させるための 2 つの戦略を提案します。最初の戦略は、候補地域スケールのプーリング、つまりスケール部門プーリング (SDP) に基づいています。 CNN フレームワークでは、入力画像が複数の畳み込みを経るため、最後のレイヤーの畳み込み出力上の小さなオブジェクトの特徴では、オブジェクトを適切に記述できません。ある層の特徴を使用すると、小さなオブジェクトをより適切に記述でき、後の層の特徴を使用すると、より大きなオブジェクトをより適切に記述できます。

したがって、SDP の考え方は、オブジェクトのサイズに応じて、畳み込み層上で適切な特徴を選択してオブジェクトを記述することです。たとえば、候補領域の高さが 0 ~ 64 ピクセルの場合、3 番目の畳み込み層の特徴 (VGG の Conv3 など) が、分類器と境界ボックス回帰器の入力特徴としてプーリングに使用されます。候補領域の高さが 128 ピクセルを超える場合、最後の畳み込み層の特徴 (VGG の Conv5 など) が分類と回帰に使用されます。

2 番目の戦略は、否定的なサンプルを破棄するカスケード分類器、つまりカスケード拒否分類器 (CRC) を使用することです。 Fast RCNN のボトルネックの 1 つは、候補領域が多数存在し、数万の候補領域に対して完全な分類と回帰計算を実行するのに非常に時間がかかることです。 CRC を使用すると、明らかにオブジェクトが含まれていない候補領域をすばやく除外し、オブジェクトが含まれている可能性が非常に高い候補領域にのみ完全な計算を集中させることができます。この記事では、各畳み込み層の特徴を順番に使用し、いくつかのカスケードされた弱い分類器を使用して負のサンプルを除外する AdaBoost メソッドを使用します。畳み込みの最後の層の特徴画像上で、残りの候補領域が分類され、回帰されます。

SDP-CRC の精度は Fast RNN よりもはるかに高く、検出時間はフレームあたり 471 ミリ秒に短縮されます。

2. 領域提案を使用せずに境界ボックスを直接予測する

2.1 YOLO[7]

YOLO の考え方は、候補領域を生成する中間ステップを廃止し、各境界ボックスを単一の畳み込みニューラル ネットワークに直接回帰し、対応するカテゴリの確率を予測することです。

このメソッドは、入力画像をサイズ のグリッドに分割します。各グリッド セルは、B 個の境界ボックスとこれらの境界ボックスの信頼度を予測します。予測値は 5 つあります。グリッド セルの中心に対する境界ボックスの中心の座標、画像全体に対する境界ボックスの幅と高さ、境界ボックスの信頼度 (グラウンド トゥルースとの IoU に基づく) です。各セルは、セルがカテゴリに属する​​確率も予測するため、ネットワーク全体の出力はサイズのテンソルになります。実験では、 なので、出力のサイズは です。

テストフェーズでは、セルのカテゴリ確率にセルの B 個の境界ボックスの信頼度を掛けて、各境界ボックスに各カテゴリのオブジェクトが含まれているという信頼度を取得します。

YOLO の利点は、その高速性です。この記事で使用されている 24 層の畳み込みネットワークは、テスト画像で 1 秒あたり 45 フレームに到達できますが、別の簡略化されたネットワーク構造を使用すると、1 秒あたり 155 フレームに到達できます。この方法の欠点は次のとおりです。1. 境界ボックスの予測には大きな空間的制限があります。たとえば、各セルは 2 つの境界ボックスのみを予測し、カテゴリは 1 つしかありません。 2. この方法では、鳥の群れなど、集団で現れる小さなターゲットを検出できません。 3. 検出されたターゲットのアスペクト比がトレーニングデータに一度も現れたことがない、または珍しい場合、モデルの一般化能力は弱くなります。

2.2 G-CNN[8]

G-CNN は、物体検出問題を、検出ボックスをいくつかの固定グリッドから物体の実際の境界ボックスに徐々に変更する問題とみなします。 これは、複数の反復を経て継続的に更新されるプロセスです。

原理図は上図の通りです。画像全体を異なるスケールのグリッドに分割することで、初期検出フレームが得られます。畳み込み後、物体の特徴画像が得られます。初期境界に対応する特徴画像は、Fast R-CNN の手法により固定サイズの特徴画像に変換されます。回帰によりより正確な境界が得られ、この新しい境界が新しい反復の初期境界として再び使用されます。数回の反復後の境界ボックスが出力として使用されます。

G-CNN は約 180 個の初期境界ボックスを使用します。5 回の反復後、検出フレーム レートは約 3fps になり、精度は Fast R-CNN よりも優れています。

2.3 SSD[9]

SSD は単一の畳み込みニューラル ネットワークを使用して画像を畳み込み、特徴画像の各位置でさまざまなサイズとアスペクト比の一連の境界ボックスを予測します。テストフェーズでは、ネットワークは各境界ボックスに各カテゴリのオブジェクトが含まれる可能性を予測し、境界ボックスをターゲット オブジェクトの形状に合わせて調整します。

SSD に必要なのは、入力画像と、トレーニング中に画像に表示されるオブジェクトの境界ボックスだけです。異なる畳み込み層の出力は、異なるスケールの特徴画像です(上図の合計など)。複数の層の特徴画像上の各位置で、各ターゲットオブジェクトが複数(たとえば 4 つ)のデフォルト境界ボックスに現れる信頼度と、ターゲットオブジェクトの実際の境界ボックスとデフォルト境界ボックスの相対的な偏差が計算されます。したがって、サイズ の特徴画像に対して、合計 の出力が生成されます。これは、Faster R-CNN のアンカーの概念に多少似ていますが、この概念は異なる解像度の特徴画像に適用されます。 SSD と YOLO の比較を以下に示します。

VOC 2007 テスト画像では、入力画像のサイズが 300×300 の場合、SSD は 58 フレーム/秒で 72.1% mAP の精度を達成し、7k を超える境界ボックスを予測できますが、YOLO は 98 しか予測できません。次の図は、上記のアルゴリズムのパフォーマンスを比較したものです。

参考文献

[1] Girshick、Ross、他「正確な物体検出とセマンティックセグメンテーションのための豊富な特徴階層」CVPR 2014。

[2] ガーシック、ロス。「高速r-cnn」ICCV 2015。

[3] レン・シャオチン他「高速R-CNN:領域提案ネットワークによるリアルタイム物体検出に向けて」神経情報処理システムの進歩。2015年。

[4] Bell, Sean、et al.「Inside-outside net: スキッププーリングとリカレントニューラルネットワークによるコンテキスト内のオブジェクトの検出」arXivプレプリントarXiv:1512.04143 (2015)。

[5] Kong, Tao、et al.「HyperNet: 正確な領域提案生成と共同物体検出に向けて」arXivプレプリントarXiv:1604.00600 (2016)。

[6] Yang、Fan、Wongun Choi、Yuanqing Lin。「すべてのレイヤーを活用する:スケール依存プーリングとカスケード拒否分類器を備えた高速で正確なCNNオブジェクト検出器」CVPR 2016。

[7] ジョセフ・レドモン他「一度だけ見る:統合されたリアルタイム物体検出」arXivプレプリントarXiv:1506.02640(2015)。

[8] Najibi、Mahyar、Mohammad Rastegari、Larry S. Davis。「G-CNN:反復グリッドベースのオブジェクト検出器」arXivプレプリントarXiv:1512.07729(2015)。

[9] Liu, Wei、et al.「SSD:シングルショットマルチボックス検出器」arXivプレプリントarXiv:1512.02325 (2015)。

<<:  モバイルインターネット開発における人工知能技術の応用

>>:  4つのニューラルネットワークシーケンスデコードモデルとサンプルコードの説明

ブログ    
ブログ    

推薦する

ロボットがすべての仕事を奪ったら、人間はどうなるでしょうか?

[51CTO.com クイック翻訳] 過去1年間、人工知能と自動化技術が人間の雇用と労働市場に与え...

古典的なソートアルゴリズムヒープソートの簡単な分析

ヒープは通常、(完全な) ツリーとして表示できるオブジェクトの配列です。そして、以下のルールは常に満...

...

人工知能時代の雇用問題と解決策

人工知能(AI)は現在、頻繁に使われる言葉であり、一般的には、もう一つの総合的な技術革命、つまり「第...

Golang AI開発: アプリケーションにAIを統合する

[[442273]]みなさんこんにちは。プログラマーのファントムです。将来の世代のために素晴らしいア...

超強力なTP-Link!北京大学と清華大学が共同で一般AI実験クラスを設立、朱松春氏が指導

史上最強の集団が力を合わせてAI開発に挑む?最近、北京大学の公式Weiboアカウントは、北京大学と清...

AIがクラウドコンピューティング管理の改善に役立ついくつかの方法

企業がクラウド管理について考えるとき、主にパフォーマンスの監視、セキュリティの維持、コンプライアンス...

製造および自動化アプリケーション向けの人工知能技術の選び方

人工知能 (AI) の定義は、産業オートメーションにおける生産と、研究室外の日常生活では大きく異なり...

...

ビジネス界がディープラーニングの導入に消極的である4つの理由

[51CTO.com クイック翻訳] 過去数年間にわたり、多くの企業がデータ主導のアプローチを採用す...

Kubernetes 上で生成 AI アプリケーションをデプロイするためのステップバイステップ ガイド

翻訳者 |李睿レビュー | Chonglou今日の急速に変化するテクノロジーと市場環境では、人工知能...

顔認識は数十億ドル規模のブルーオーシャンだが、まだ解決すべき問題が2つある

今日は顔をスキャンしましたか? [[373513]]人工知能の急速な発展により、知能の時代が静かに到...

RPA の収益は 2021 年に 18 億 9,000 万米ドルに達する見込みです。AI は RPA をどのように再定義するのでしょうか?

市場調査会社ガートナーは、ロボティック・プロセス・オートメーション(RPA)を世界のエンタープライズ...