理論

画像内の各ピクセルについて、画像勾配の方向と大きさが計算されます。x方向およびy方向の勾配フィルタカーネルは 次のとおりです。

式 47


勾配の大きさ と方向 は、次のように計算されます。

式 48


計算された勾配は、その方向に応じて特定の数の方向Binに割り当てられます。 Binへの投票は、勾配の大きさの関数です。 DalalとTriggsが発見したように、人物検出手法にHOG特徴量を使用する場合、方向を 個のBinに分割することが最良の結果をもたらします [Dal05VA サンプルデザイン「HOG_9Bins_HistogramMax.vad」と「HOG_9Bins_Histogram.vad」では、このようなビニングを実装しています。さらに、サンプル「HOG_4Bins_HistogramMax.vad」では、4 つのビンへの分割を実行します。 にわたる4つのBinへの分割を実行しています。 特定の方向の Binへの割り当てまたは重み付け (方向 を持つ)は、補間によって行われます。

式 49


ここで、 は、Bin間の角度ステップのサイズです。 方向ヒストグラムの単一のBinカラム (それぞれ8x8ピクセルの領域用) は、次のように計算されます。

式 50


8x8ピクセルの各セルのヒストグラムは、輝度やコントラストの局所的な変動をカバーするために、2x2セルのサイズを持つブロックにグループ化されます。 ブロックには のオーバーラップがあります。 物体認識目的でHOGデスクリプターを使用する場合、ブロック正規化(アルゴリズムについては[Dal05]を参照)により、パフォーマンスが 現在の設計例ではブロック正規化は省略されています。「HOG_4Bins_HistogramMax.vad」および「HOG_9Bins_HistogramMax.vad」の設計では、最大ヒストグラム方向がDMAに転送されますが、「HOG_9Bins_Histogram.vad」では、方向勾配のヒストグラム全体がPCに送信されます。以下で紹介する設計は、ユーザーの特別な目的に合わせて容易に調整できます。つまり、方向ビニングの量とステップサイズ、またはブロック正規化は、[Dal05]に基づくブロック正規化を追加で実装することができます。