2012-01-26 20 views
1

OpenCVのグラジエントのヒストグラムは、画像内のオブジェクトを検出して分類するために、一般に画像パッチで使用されることを理解しています。OpenCVのHOG画像全体の分類

しかし、画像全体を分類するために使用できる特徴ベクトルを構築するためにHOGを使用したいと思います。以下の使用: - 特徴ベクトルの長さに大きな画像をより64×128ウインドウを有し、これらの寄与の各々

std::vector<float> temp_FV_out; 
cv::HOGDescriptor hog; 
hog.compute(img_in, temp_FV_out); 

は、非常に長い特徴が画像の変化の大きさに起因する異なる長さの各ベクトルが得られます。

各画像から短い特徴ベクトル(約5-20ビン)を与えるためにOpenCVを得るにはどうしたらいいですか?画像ベクトルの長さは画像のサイズにかかわらず一定ですか?私はむしろHOGの単語の辞書を作るために単語の袋を使用しないでください。

答えて

2

最初のステップでは、イメージサイズを正規化します。処理する最小サイズを選択し、残りのサイズをこのベースサイズにリサイズします。小さなサイズをデフォルト(100x100、例として)に設定することもできます。アスペクト比が同じでない場合は、トリミングする必要があります。

次に、さまざまなアルゴリズム(PCA、デシジョンツリー、Adaブーストなど)に基づいて、ベクターからいくつかの機能を選択して、データから最も重要な値を抽出することができます。

関連する問題