2016-04-19 5 views
0

の膨大な数を返す:()を検出するために呼び出した後検出私はOpenCVの2.4.11とキーポイント検出を実行しようと、次のコード(関連部分のスニペット)を使用してキーポイント

IplImage     *fiducial; 
cv::SiftFeatureDetector  siftDetector; 
cv::SurfFeatureDetector  surfDetector(400); 
std::vector<cv::KeyPoint> siftKeypoints,surfKeypoints; 

... 

siftDetector.detect(fiducial,siftKeypoints); 
surfDetector.detect(fiducial,surfKeypoints); 

両方ベクトルsiftKeypointsおよびsurfKeypointsには非常に多くのキーポイントが戻ってきます(658812288344697520)。驚くほどdetect()にはエラーを知らせる戻り値もなく、例外もスローされません。

だからここで間違っていますか?

ありがとうございます!

+0

あなたは 'siftKeypoints.size()'にそのような値があることを意味しますか?これは非常にありそうもありません。質問を編集し、その値を印刷する行を追加できますか? – kebs

+1

OKm、解決済み、DEBUG-buildとRELEASE-librariesのミスマッチです! – Elmi

+0

@エルミは答えとして投稿してください – Miki

答えて

2

解決済み、それはDEBUG-buildとRELEASE-libraryの間のミスマッチでした。

+0

良い見つける。私はこの1時間を過ごした – Eric

関連する問題