寻找FREAK特征提取器的教程/示例很困难

3
我正在尝试使用OpenCV和C++实现一个特征/对象跟踪应用程序。目前,我正在使用goodFeaturesToTrack函数从第一帧创建我的特征向量。然后,我将其传递给calcOpticalFlowPyrLk方法来跟踪这些点通过后续帧。
这种方法非常快速,但不稳定且不具备比例或旋转不变性。特征有倾向于一起漂移并且在场景中丢失并锁定到另一个角落。我已经阅读了很多关于FREAK的资料,它似乎是一个很有吸引力的选择。希望它能解决我的稳定性问题并具有比例和旋转不变性。
在尝试寻找有关实现FREAK特征提取器的帮助时,我遇到了这个,让我很有希望,但正如您可能已经注意到的那样,该文件已下线!我只是想知道是否有人保存了这个示例,或者有任何建议可以提供一些替代源代码供我学习和研究?

根据您提供的链接,FREAK 只是一个描述符。这意味着您可以使用任何 OpenCV 的图像匹配示例,并将描述符替换为 FREAK。 - LovaBill
1个回答

2

OpenCV有一个演示FREAK的示例,可以在此链接中查看。 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.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接