2016-07-14 8 views
-1

SimpleBlobDetectorは実行できません

私は問題に遭遇しており、あなたの助けが必要です。私はスレッシュホールドを持っていて、その上にある塊を検出しようとしています。私の設定は:

cv::SimpleBlobDetector::Params params; 
    params.minDistBetweenBlobs = 10.0; // minimum 10 pixels between blobs 
    params.filterByArea = true;   // filter my blobs by area of blob 
    params.minArea = 1000;    // min 1000 pixels squared 
    params.maxArea = 10000;    // max 10000 pixels squared 
    params.filterByColor = true; 
    params.blobColor = 255; 
    Ptr<SimpleBlobDetector> detector = SimpleBlobDetector::create(params); 
    std::vector<cv::KeyPoint> myBlobs; 
    detector->detect(fgMaskMOG2, myBlobs); 
    drawKeypoints(fgMaskMOG2, myBlobs, fgMaskMOG2); 
    imshow("FG Mask MOG 2", fgMaskMOG2); 

しかし、私のイメージ上でキーポイントが強調表示されていない状態でプログラムを実行した後、プログラムは停止しました。これはマットfgMaskMOG2、コードのこれらの行の前に作成されたバイナリフレームである:私は問題がdetector->(fgMaskMOG2、myBlobs)を検出ラインにあったOpenCVの3を使用してい pic

。他の人が同じことをしているので、私は他の話題を読んだことがあり、問題はコード内にあるとは思わない。フレームをCV_GRAY2RGBとCV_8UC1に変換しようとしましたが、問題は解決しません。私もparamsプロパティを微調整しようとしましたが、何も変わりません。どんなアイデアみたいな?

+0

問題の調査中に何を見つけましたか? –

+0

なぜ私はdownvotes人を得ていますか? :) 私はまだ研究してデバッグしていますが、運はまだありません。 – shjnlee

+0

問題を調査したことさえ示していないので、おそらく票が下がっています。このコミュニティは、あなたがゲームをプレイしない場合、寛容ではありません。私はあなたが持っているのと同じ問題を抱えていましたので、あまりにも悪くはありません。 –

答えて

0

私が見つけた問題は、正しいライブラリを使用しなかったことです。デバッグモードではopencv_world.dllを使用します。リリースモードに切り替えて、問題を解決しました。

関連する問題