2

opencv 2.4.4 の flann でローカル機密ハッシュ アルゴリズムを使用しようとしています。これが私のコードです

Ptr<IplImage> cluster_image = cvLoadImage("C:\\Users\\Administrator\\Pictures\\1.jpg");
vector<KeyPoint> cluster_keypoint;
Mat des;

description_detect(cluster_image,cluster_keypoint,des,SIFT_DESCRIPTION);
//My function to extract the sift feature from image.
//Descriptions are stored at variable des.

flann::Index my_index(des, flann::LshIndexParams(10, 10, 2));

このコードを実行して、lsh algo によって flann のインデックスを構築する場合。コードは、

「Opencv エラー、サポートされていない形式または形式の組み合わせ type=5」

miniflann.cpp でコードをチェックします。flann のローカル センシティブ ハッシュ アルゴリズムは、sift によって生成される CV_32F 以外の CV_8U Mat タイプとのみ互換性があるようです。

ただし、ORB、Brief、BRISK、FREAK から検出された他のバイナリ記述子は、CV_8U Mat タイプを生成できます。

私の質問は次のとおりです。ローカルの機密ハッシュアルゴリズムは、opencv のバイナリ記述子とのみ互換性がありますか?

4

1 に答える 1

4

はい: ハッシュ関数は、バイナリ記述子 (つまり、 の配列として表すことができる記述子) に対してのみ実装されunsigned charます。

詳細については、この回答を参照してください: Binary features and Locality Sensitive Hashing (LSH)

于 2013-03-07T08:24:28.397 に答える