【发布时间】:2013-07-25 18:58:12
【问题描述】:
我在 OpenCV 中实现了我在 MATLAB 中设计的算法。我正在为 OpenCV 中的 SURF 特征提取器编写单元测试,我想将 MATLAB 提取的 SURF 特征的输出与 OpenCV 进行比较。
这个问题是,对 MATLAB 和 OpenCV 提取器使用相同的参数时,我得到了不同数量的特征。这怎么可能?是否有不同的方式来实现 SURF?
对于 MATLAB (http://www.mathworks.com/help/vision/ref/detectsurffeatures.html),我正在使用:
MetricThresh:200
NumOctaves: 3
NumScaleLevels:4
冲浪尺寸:64
对于我正在使用的 OpenCV:
HessianThreshold:200
nOctaves: 3
nOctaveLayers:4
扩展:假
直立:真
这里发生了什么?有没有更好的方法来测试 openCV 和 MATLAB 是否从同一张图像中提取了相同的 SURF 特征?
感谢您的帮助!
【问题讨论】:
-
仅供参考,您可能会对这个项目有用:github.com/kyamagu/mexopencv(将 OpenCV 公开为 MATLAB 中的 MEX 函数)
标签: matlab opencv computer-vision surf matlab-cvst