我有一个简单的问题,我想知道,有哪些库可用,并且可以在c ++或opencv中实现SIFT,HOG(直方图定向梯度)和SURF的良好结果?
因此:1-如果可以,请给我链接代码,我将非常感激。 2-如果你知道其中一个或任何类型的信息引导我到我想要的东西,我也会非常感激。
谢谢
答案 0 :(得分:3)
检查这些: 冲浪 - 很棒的文章 http://people.csail.mit.edu/kapu/papers/mar_mir08.pdf 筛 - 很棒的来源,我在iPhone上尝试过 http://blogs.oregonstate.edu/hess/ - 快速 - 快速角点检测库 http://svr-www.eng.cam.ac.uk/~er258/work/fast.html
答案 1 :(得分:3)
openCV中的冲浪代码示例 https://code.ros.org/trac/opencv/browser/trunk/opencv/samples/cpp/matching_to_many_images.cpp
答案 2 :(得分:3)
不确定这是否仍然相关,但您还可以在opencv中获得两个计算HOG描述符的实现,即HOG代码的GPU和CPU版本。
对于CPU版本,您可以查看blog post
但是在CPU版本中,您需要为滑动窗口编写自己的逻辑。
并且GPU版本非常简单,您可以阅读文档here
答案 3 :(得分:2)
可能会帮助您了解SIFT和SURF实现已集成到OpenCV中。 http://opencv.willowgarage.com/documentation/cpp/features2d__feature_detection_and_descriptor_extraction.html
答案 4 :(得分:2)
小心OpenCV实现,因为最新版本的OpenCV已将SIFT和SURF实现分类为 nonfree http://docs.opencv.org/modules/nonfree/doc/nonfree.html。
现在您可以使用它们,但可能它们需要获得许可,不能用于商业解决方案。
答案 5 :(得分:0)
这个使用基于HoG,Sobel和Lab频道的描述符进行检测Class-Specific Hough Forests for Object Detection(opencv/c source code)。
而不是在每个可能的位置执行检测,这种方法计算每个描述符的投票,然后当它们组合在一起时,它们产生投票云,其中最大值将对应于目标的最可能位置。当与cvGoodFeaturesToTrack结合使用时,即使使用小型培训数据库,也可以产生非常好的结果。