私はgoodFeatureToTrack()
レナのグレー画像でopencv2.4.3で関数を使用しようとしています...しかし、私は常に特徴を格納するベクトルのゼロサイズを取得します...私はゼロマスクcv::Point2f
も使用しようとしましたが、その場合アプリケーションがハングアップします。0.01から0.001までの品質レベル値で遊んでみました。しかし、それでもベクトルのサイズはゼロです..何か考えはありますか?...以下は私のコードです..
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <opencv2/video/tracking.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <vector>
using namespace cv;
using namespace std;
int main()
{
Mat frameROI;
frameROI = imread("C:\\lena.jpg");
std::vector<cv::Point2f> corners;
cvtColor(frameROI,frameROI,CV_RGB2GRAY);
//Mat mask(frameROI.size(), CV_8UC1);
//mask.setTo(Scalar::all(0));
//goodFeaturesToTrack(frameROI,corners,10,0.001,10,mask,3,false,0.04);
goodFeaturesToTrack(frameROI,corners,10,0.001,10);//AFTER EDIT
cout<<"SIZE OF FEATURE VECTOR = "<<corners.size()<<endl;
imshow("VIDEO ROI",frameROI);
waitKey();
return 0;
}
出力:
SIZE OF FEATURE VECTOR = 0
編集:後のボブの提案私はマスクの行を省略して関数を変更しました..しかし今、goodFeaturesToTrack関数が呼び出された後にアプリケーションがハングアップします...何か考えはありますか?