我正在尝试使用OpenCV和C++实现一个功能/对象跟踪应用程序。目前,我正在使用goodFeaturesToTrack函数从我的第一帧创建特征向量。从那里,我将它传递给calcOpticalFlowPyrLk方法,以在后续帧中跟踪点。
这种方法速度很快,但不稳定,不是尺度或旋转不变的。特征有一起漂移的趋势,也有迷失和锁定场景中另一个角落的趋势。我读了很多关于FREAK的文章,它看起来是一个很有吸引力的选择。希望它能解决我的稳定性问题以及缩放和旋转不变的问题。
当我试图寻找一些关于实现怪胎特征提取器的帮助时,我遇到了this,这让我燃起了希望,但正如你可能已经注意到的,这个文件是离线的!我只是好奇是否有人已经保存了这个例子,或者有任何建议,我可以在哪里找到一些我可以学习和学习的替代源代码?
发布于 2013-07-06 02:53:49
OpenCV在this link上有一个演示怪胎的样本。FREAK和其他任何一个特征提取器一样,也是一个特征提取器,并公开相同的接口。FREAK不检测特性,因此您必须使用不同的方法(如cv::goodFeaturesToTrack())来检测兴趣点。
该示例的摘要如下:
cv::Mat image; //This is the image
std::vector<cv::KeyPoint> keypoints; // This comes from your feature detector of choice
cv::Mat descriptors;
cv::FREAK freak;
freak.compute(image, keypoints, descriptors);
// Now "descriptors" contains descriptor data for the input keypoints.https://stackoverflow.com/questions/17484603
复制相似问题