「人間検出のための方向勾配のヒストグラム」から方向勾配のヒストグラム機能を実装しています。結果を視覚化したいと思います。これらの機能に関するすべての論文は標準的な視覚化を使用していますが、これらがどのように生成されるかについての説明は見つかりません。説明や役立つリンクをいただければ幸いです。
5 に答える
論文で目にするビジュアライゼーションは、次のように解釈できます。
ディスクリプタは、画像ウィンドウをグリッドで覆う M*N 個のセルで構成されます。各セルは、離散化されたエッジの向きの数がパラメーター (通常は 9) であるエッジの向きのヒストグラムで表されます。セル ヒストグラムは、ヒストグラム内のエッジの向きの強さを示す「星」で視覚化されます。特定の向きが強いほど、他の向きよりも長くなります。
さまざまな正規化スキームがあることに注意してください。セルが隣接するセルのみに対して正規化されるローカル スキーム (Dalal-Triggs による元の論文のように)、または方向の長さがすべてのセルによって正規化されるグローバル スキームです。 . また、一部の作成者はセルごとに複数のローカル正規化を使用していますが (たとえば、以下で言及しているもの)、視覚化には 1 つ (またはそれらの平均) しか表示されません。
Felzenszwalb らによる独創的な研究の Matlab コード。は、画像上に細胞をペイントすることで細胞を視覚化し、長さではなくエッジの強度によって強度を視覚化します。ここで提供されるパッケージ(DPM)で見つけることができます。HOGpicture.m という名前の関数を探します
以下の例は、それぞれが 8 つの方向を持つ 7*11 のセルで構成される HoG を持つバイクのモデル (Felzenszwalb et al. から) を示しています。
Jurgenwikiというブログget_hogdescriptor_visu()
には、OpenCV で HOG 記述子を視覚化するためのサンプル コード ( と呼ばれる) があります。以前、私は Jurgenwiki コードを C++ ファイルにコピー アンド ペーストし、HOG 機能を に渡しましたget_hogdescriptor_visu()
。次に例を示します。
Jurgenwiki コードの注意点の 1 つは、デフォルトのHOGDescriptor()
パラメーター (16x16 ブロック、8x8 セル、9 方向ビンなど) を使用することを想定していることです。ただし、 でカスタム パラメーターを使用している場合はHOGDescriptor
、Jurgenwiki コードを微調整して HOG パラメーターに一致させることができます。
この StackOverflow の投稿も非常に役立ちます。
非常に役立つ HOG 機能の視覚化に関する iccv 2013 で公開された最近の論文 (HOGles) があります。コードはhttp://web.mit.edu/vondrick/ihog/#codeから入手できます。
scikit-image は HOG の視覚化も提供します: http://scikit-image.org/docs/dev/auto_examples/plot_hog.html