02ディープラーニング - ターゲット検出 - 従来手法の紹介

1. ターゲット学習の検出方法の変更と比較

       「物体検出」は、コンピューター ビジョンと機械学習の分野で現在注目されている研究分野です。Viola-Jones Detector や DPM などの冷兵器時代の知恵から、今日の RCNN や YOLO などの深層学習の土壌によって育まれた GPU の暴力的な美学に至るまで、ターゲット検出全体の開発の歴史は、コンピュータービジョンの分野。ターゲット検出の開発プロセス全体は、以下の図に要約されています。

        2012 年以前、ターゲット検出の分野は依然として従来の手動による特徴検出アルゴリズムによって支配されていたことがわかりますが、2012 年の畳み込みニューラル ネットワーク (CNN) の台頭により、ターゲット検出では深層学習の美学に基づく暴力が使用され始めました。深層学習では、ターゲット検出の効果は従来の手動機能よりもはるかに優れています。現在に至るまで、深層学習に基づく検出アルゴリズムがターゲット検出の主流となっています。

    深層学習アルゴリズムは、ターゲット検出において従来の手動機能よりもはるかに優れていますが、私は依然として従来のアルゴリズムがもたらしてくれる助けを忘れることができません。この記事では、ターゲット検出アルゴリズムの学習の始まりを記録し、その役割について詳しく説明します。ターゲット検出における従来のアルゴリズムの原理と効果。

前提知識:

  • 特徴抽出プロセスでは、コンピューター ビジョンやパターン認識における色ベース、テクスチャ ベース、形状ベース、セマンティック ベース、その他の画像特徴表現方法がよく使用されます。
  • コンピュータ ビジョンにおける一般的な特徴抽出方法には、低レベルの特徴、中レベルの特徴、および高レベルの特徴の 3 つのカテゴリがあり、最初の 2 つのカテゴリがよく使用されます。

         低レベルの特徴 (色、テクスチャ、形状などの中レベルの特徴の基本的な特徴、通常は手動で設計された特徴)
         中レベルの特徴 (低レベルの特徴の学習と高レベルの特徴のマイニングに基づく特徴)
         高- レベルの特徴 (最下層または中間層に基づく特徴) 学習およびマイニング後の特徴 (人物が帽子をかぶっているかどうかなど)

  • 分類器を使用して、抽出された特徴に対して分類を決定します。

        (2 つのカテゴリ) は現在のウィンドウが背景であるか検出対象であるかを判断し、
        (複数のカテゴリ) は背景であるかどうかを判断し、そうでない場合はどのカテゴリであるかを判断します。

2. 従来の手動機能に基づく検出アルゴリズムの定義

       ターゲット検出アルゴリズムの開発プロセスでは、かつては手動機能に基づく従来のアルゴリズムが主流でしたこれらの従来のアルゴリズムは、Haar 特徴、HOG 特徴、SIFT 特徴など手動で設計された特徴を設計および抽出することによってターゲット オブジェクトを識別します。この記事では、ターゲット検出アルゴリズムの手動機能に基づく従来のアルゴリズムを深く調査し、その原理、利点と欠点、およびコンピューター ビジョンへの応用について紹介します。


       手動特徴に基づく従来のターゲット検出アルゴリズムは、手動で特徴を設計および抽出することによってターゲット オブジェクトを識別する、初期のタイプのターゲット検出アルゴリズムです。これらの特徴は通常、エッジ、テクスチャ、色などの画像のローカル情報に基づいています。従来のアルゴリズムは通常、特徴抽出に基づいて分類器または検出器を使用して、画像内にターゲット オブジェクトがあるかどうかを判断し、ターゲットの位置とサイズを示します。

3.従来の主なマニュアル機能とアルゴリズム

Haar の特徴と顔検出アルゴリズム - Viola-Jones (理解)

  • Harr特徴抽出
  • 顔分類器のトレーニング (Adaboost アルゴリズムなど)
  • スライディング ウィンドウ (問題: インタラクティブ ウィンドウの適切なステップ サイズ)

       Haar 特徴は、顔検出の分野で最初に使用された画像行列に基づく特徴です。Viola-Jones アルゴリズムは、Haar 特徴に基づく高速顔検出アルゴリズムであり、特徴の選択とカスケード分類にAdaboost 分類器を使用しますこのアルゴリズムは、顔検出タスクにおいて大幅なパフォーマンスと効率を実現します。

       2004 年、Paul Viola と Michael Jones は CVPR に関する画期的な記事「堅牢なリアルタイム顔検出」を発表し、後の世代では記事内の顔検出アルゴリズムを Viola-Jones (VJ) 検出器と呼びました。VJ検出器は17年前、極めて限られた計算リソースで初めてリアルタイムの顔検出を実現し、同時期の検出アルゴリズムに比べて数十倍、数百倍の速度で顔検出アプリケーションの実用化を大きく推進しました。 . . VJ 検出器のアイデアは、少なくとも 10 年間、ターゲット検出分野の発展に大きな影響を与えてきました。

       VJ 検出器は、最も伝統的で保守的なターゲット検出方法であるスライディング ウィンドウ検出を使用します。これは、画像内のすべてのスケールとすべてのピクセル位置を横断して、現在のウィンドウが顔ターゲットであるかどうかを 1 つずつ判断します。このアイデアは単純そうに見えますが、実際には計算コストが膨大になります。VJ 顔検出が限られたコンピューティング リソースの下でリアルタイム検出を実現できる理由は、マルチスケール Haar 特徴の高速計算、効果的な特徴選択アルゴリズム、および効率的な多段階処理戦略という 3 つの重要な要素があります

       マルチスケール Harr 特徴の高速計算の観点から、VJ 検出器は積分マップを使用して特徴抽出を高速化します。積分マップを使用すると、特徴量の計算量をウィンドウのサイズに依存させることができず、マルチスケールの問題を扱うときに画像ピラミッドを構築する時間のかかるプロセスも回避できます。

       特徴選択アルゴリズムに関しては、従来の意味での手動特徴とは異なり、VJ 検出器で使用される Harr 特徴は人間によって事前に設計されたものではありません。VJ 検出器は、過完全なランダム Haar 特徴を使用し、Adaboost アルゴリズムを使用して巨大な特徴プール (約 180k 次元) から特徴選択を実行し、顔検出に最も有用なごく少数の特徴を選択して、不必要な計算オーバーヘッドを削減します。

       多段階処理に関して、著者はカスケード意思決定構造を提案し、それを鮮やかに「カスケード」と呼びました。検出器全体はマルチレベルの Adaboost 意思決定者で構成され、意思決定者の各レベルはいくつかの弱い分類の意思決定スタンプで構成されます。ウォーターフォールの中心的な考え方は、バックグラウンド ウィンドウに割り当てるコンピューティング リソースを減らし、ターゲット ウィンドウに多くのコンピューティング リソースを割り当てることです。あるレベルの意思決定者が現在のウィンドウが背景であると判断した場合、引き続き次のウィンドウを開始できます。その後の意思決定のないステップ。判断の余地。

Haar の特徴:主に差動であり、4 つの基本的な特徴があります。

値=白-黒

  • 1 つ目のタイプは、隣接する 2 つのピクセルを表し、差分は 0 度、180 度、45 度、135 度の 4 方向で実行されます。
  • 2 番目のタイプの線形特徴は、広い領域が 2 つのピクセルを表します。
  • 3 番目のタイプの中心特徴は、隣接する領域が中心点から区別されることです。自民党の機能みたいな。
  • 複数のピクセル間の関係の 4 番目のタイプ。

    最後に、抽出されたヒストグラムが選択され、差分演算自体が勾配を解決します。したがって、ハールの特徴は文学的な特徴です。

Adaboost アルゴリズム:機械学習におけるアンサンブル学習手法に属します。

  • サンプルの重み w を初期化すると、サンプルの重みの合計は 1 になります。
  • 弱分類器をトレーニングする
  • サンプルの重みを更新します (誤って分類されたサンプルの重みを増やします)
  • ループの 2 番目のステップ
  • 各分類子の結果を組み合わせて投票します

スライディングウィンドウ方式:

       まず、ウィンドウサイズの異なる入力画像を左から右、上から下にスライドさせます。分類子は、現在のウィンドウがスライドするたびに実行されます (分類子は事前にトレーニングされています)。現在のウィンドウの分類確率が高い場合、オブジェクトは検出されたと見なされます。異なるウィンドウ サイズで各スライディング ウィンドウを検出した後、異なるウィンドウで検出されたオブジェクト マークが取得され、これらのウィンドウ サイズには繰り返し部分が多く、最後に非最大抑制 (NMS) が使用されます。 。
 

HOG の機能と SVM アルゴリズム (理解) (歩行者検出、opencv 実装)

  • HOG 特徴の抽出
  • SVM分類器を訓練する
  • スライディングウィンドウによる対象領域の抽出と分類判定
  • NMS
  • 検出結果を出力する

       HOG (Histogram of Oriented Gradients) 機能は、画像の局所的な勾配方向を記述する機能で、歩行者検出や物体認識に広く使用されています。HOG 機能を SVM (サポート ベクター マシン) 分類器と組み合わせることで、複雑なシーンでのターゲット検出タスクを実現できます。


SIFTの特徴とSIFTアルゴリズム(理解)

  • グレースケール + ガンマ変換 (値の根を解く)
  • 勾配マップを計算します (x および y 方向の各点の勾配値を計算し、勾配値を勾配角度に使用します。つまり、tan = x/y を取得し、方向角度を見つけます)。
  • 画像を小さなセルに分割し、各セルの勾配ヒストグラムを計算します。
  • 複数のセルがブロックを形成し、正規化 (スプライシング) を特徴とします。
  • 複数のブロックを直列に接続し正規化する
  • これは量子化角度とセル サイズ (セルが小さいほど、勾配次元が大きくなります) に関連しており、通常、次元は非常に大きくなります。

       SIFT (スケール不変特徴変換) 特徴は、局所極値点とスケール空間に基づく特徴であり、主に画像マッチングとターゲット認識に使用されます。SIFT アルゴリズムは、キーポイントと特徴記述子を抽出することにより、画像内のターゲットの位置決めと識別を実現します。

DPM (物体検出) (学習)

DPM 特徴抽出

  • 符号付きグラデーション
  • 符号なし勾配

      符号付き: 角度空間全体が 18 次元のベクトル、0 ~ 360 度として表されます。
      符号なし: 0 ~ 180 度です。各セルは 27 次元のヒストグラムを取得します。HOG の
      多次元状況では、PCA を使用して、 HOG の次元。
      DPMでは近似処理としてPCAを近似する手法を採用しており、各セルで抽出した27次元のヒストグラムを合計して表現しており、横に4個、縦に27個の値を累積して合計し、つなぎ合わせた後、最終的な 31 次元の特徴ベクトルが得られます。蓄積モードの速度が向上しました。


DPM (物体検出)

  • DPM 機能マップの計算
  • 対応するグラフ (屋根フィルターと部分フィルター) を計算します (つまり、現在の面積は、エネルギー分布として理解されるターゲット面積の値である可能性があります)
  • 潜在 SVM 分類器のトレーニング
  • 検出と識別

4. 従来のターゲット検出アルゴリズムの基本プロセス

プロセス 1:

       検出対象の画像が与えられると、この画像は検出アルゴリズムの入力として使用され、スライディングウィンドウ法を使用して画像から候補フレームが抽出され、各候補フレーム内の画像に対して特徴抽出が実行されます (特徴抽出は主に前の事前知識で紹介した抽出方法に基づいており、分類器を使用して特徴分類を決定し、現在の検出ターゲットの一連の候補フレームを取得します。これらの候補フレームは重複する場合があります。非最大値抑制アルゴリズム NMS が使用されます。 候補フレームをマージまたはフィルタリングした後、最終候補フレームが最終的な検出ターゲット、つまり出力結果となります。

プロセス 2:
       画像を入力として、特徴抽出 + ターゲット フレーム回帰手法を使用してターゲット領域を抽出し、最後に NMS を使用して候補フレームをマージし、最終的にターゲットの出力結果を取得します。

知らせ:

  • プロセス 1:従来のターゲット検出手法深層学習に基づくターゲット検出手法に適用
  • プロセス2:ディープラーニングに基づくターゲット検出手法に適しています

5. 従来の手動機能に基づく検出アルゴリズムの問​​題

  • 1. 従来の手法による機能設定は、設計が難しい一方で、設計された機能が特定の条件に適応しない、つまりロバスト性が低く、効率が低いなど、さまざまな問題を抱えていることがよくあります。 。
  • スライディングウィンドウを介してターゲットフレームを抽出し、ターゲットフレームを分類するこの戦略は、スライディングウィンドウを抽出するときに非常に面倒で時間がかかります。

6.手動機能に基づく従来のアルゴリズムの長所と短所

アドバンテージ:

  • a. 比較的単純: 手作りの特徴に基づく従来のアルゴリズムは通常、シンプルで実装が簡単であり、大量のトレーニング サンプルを必要としません。
  • b. 計算の複雑さの低減: 特徴抽出プロセスは通常単純であるため、従来のアルゴリズムは計算効率が高くなります。
  • c. 強い解釈性: 手動機能は手動で設計されており、その優れた解釈性はアルゴリズムのパフォーマンスと結果の分析に役立ちます。

欠点:

  • a. 機能設計に依存する: 手作りの機能に基づく従来のアルゴリズムのパフォーマンスは、機能設計の品質と選択に大きく依存します。タスクが異なれば必要な機能も異なるため、機能の設計と調整には多大な労力と時間がかかります。
  • b. 複雑なシーンには適さない: 従来のアルゴリズムは通常、複雑なシーン、特にターゲットのスケールや形状が大きく変化する場合、またはオクルージョンがある場合の処理​​能力が弱くなります。
  • c. 大規模なデータを処理できない: データの規模が増大するにつれて、手動機能に基づく従来のアルゴリズムの計算の複雑さと認識パフォーマンスが制限されます。

おすすめ

転載: blog.csdn.net/qq_41946216/article/details/132778457