我想用opencv 2.4.3上的goodFeatureToTrack()
函数在lena的灰色图像上......但是,我总是得到一个零大小的矢量存储功能cv::Point2f
...我有尝试使用零掩码也,但在这种情况下,应用程序挂起..我试着玩质量水平值从0.01到0.001。但是仍然是矢量的大小是zero..any想法...以下是我的代码..goodFeaturesToTrack给出了零大小的矢量
#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;
}
OUTPUT:
SIZE OF FEATURE VECTOR = 0
编辑: AFTE Bob的建议,我省略了线为掩码和修改函数..但现在应用程序挂起后goodFeaturesToTrack函数被调用...任何想法?
如果将掩码设置为全1,是否也会发生同样的情况? – Sassa
Yaaa ....同样的事情发生在所有的1 ...我现在疯了...现在是我的opencv 2.4.3错了吗?我正在使用下载版本附带的预建库... –