我想知道,是否有任何代码或任何好的文档可用于实现 HOG 功能?我试图在这里阅读文档,但它很难理解,它需要 SVM ..
我需要的只是为物体实现一个 HOG 检测器......就像它所做的 SIFT 或 SURF
顺便说一句,我对这项工作不感兴趣。
谢谢..
你可以看看 http://szproxy.blogspot.com/2010/12/testtest.html
他还在源代码伪造上发布了 HOG 的“教程”:http: //sourceforge.net/projects/hogtrainingtuto/ ?_test=beta
我知道这一点,因为我和你有同样的问题。该教程虽然不是我所说的教程,它是一堆源代码,没有文档,但我认为它可以工作并且至少可以让你到达某个地方。
最后,稍微简化一下,检测图像中的特定对象所需要做的就是:
为了获得兴趣点,您可以使用一些算法,如 Harris 角点检测器、随机或简单的滑动窗口等算法。
您将不得不决定补丁大小。
除了 HOG,您还可以使用其他特征描述符,如 SIFT、SURF……
HOG 的实现并不难。您必须通过应用 Sobel X 和 Y 内核计算提取的补丁的梯度,然后您必须将补丁划分为 NxM 个单元格,例如 8x8,并计算梯度、角度和幅度的直方图。在下面的链接中你可以看到更详细的解释:
HOG Person Detector Tutorial
获得此向量后,请使用先前训练的分类器(例如 SMV)检查它是否是所需的对象。例如,您可以使用 SVM 代替 SVM。
SVM 实现比较困难,但有一些库,如 opencv,您可以使用。
MATLAB 的计算机视觉系统工具箱中有一个函数extractHOGFeatures。