用于“检测对象”的HOG开放式计算机视觉

发布于 2024-12-08 02:13:53 字数 388 浏览 0 评论 0 原文

我想知道是否有任何代码或任何好的文档可用于实现 HOG 功能?我尝试阅读文档此处,但很难理解它需要SVM..

我需要的只是为对象实现HOG检测器....就像它所做的SIFT或SURF

Btw一样,我对这项工作。

谢谢..

I would like to know, if there is any code or any good documentation available for implementing HOG features? I tried to read the documentation here but it's quite difficult to understand and it needs SVM..

What I need is just to implement a HOG detector for objects.... Like what it does SIFT or SURF

Btw, I'm not interesting in this work.

Thank you..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

葬心 2024-12-15 02:13:53

你可以看看
http://szproxy.blogspot.com/2010/12/testtest.html

他还在 source forge 上发布了 HOG 的“教程”:
http://sourceforge.net/projects/hogtrainingtuto/?_test=beta

我知道这是因为我和你有同样的问题。该教程虽然不是我所说的教程,它是一堆源代码,没有文档,但我认为它可以工作并且至少可以让您有所了解。

you can take a look at
http://szproxy.blogspot.com/2010/12/testtest.html

he also published "tutorial" for HOG on source forge here:
http://sourceforge.net/projects/hogtrainingtuto/?_test=beta

I know this since I'm having the same problem as you. The tutorial though isn't what i would call a tutorial, its a bunch of source codes, no documentation, but I assume that it works and can at least get you somewhere.

北城半夏 2024-12-15 02:13:53

最后,稍微简化一下,检测图像中的特定对象所需要做的就是:

  • 定位“兴趣点”以提取补丁:

为了获得兴趣点,您可以随机使用一些算法,例如 Harris 角点检测器或者像滑动窗户之类的东西。

  • 从这些点获取补丁:

您必须决定补丁大小。

  • 从这些补丁计算特征描述符。 (如 HOG)。

除了 HOG,您还可以使用其他特征描述符,例如 SIFT、SURF...
HOG的实现并不太难。您必须应用 Sobel X 和 Y 内核来计算提取的 patch 的梯度,之后您必须将 patch 划分为 NxM 个单元(例如 8x8),并计算梯度、角度和幅度的直方图。在下面的链接中您可以看到更详细的解释:
HOG 人体检测器教程

  • 检查之前的特征向量 经过训练的分类器

获得此向量后,使用之前训练过的分类器(如 SMV)检查它是否是所需的对象。例如,您可以使用 NeuralNetworks 来代替 SVM。

SVM 实现比较困难,但是可以使用一些库,例如 opencv。

At the end and simplifying a bit, all that you need to detect specific objects in image is:

  • Localize "points of interest" to extract the patches:

In order to get points of interest, you can use some algorithms like Harris corner detector, randomly or something simply like sliding windows.

  • From these points get patches:

You will have to take the decission of the patch size.

  • From these patches compute the feature descriptor. (like HOG).

Instead of HOG you can use another feature descriptor like SIFT, SURF...
HOG's implementation is not too hard. You have to calculate the gradients of the extracted patch doing applying Sobel X and Y kernels, after that you have to divide the patch in NxM cells, 8x8 for instance, and compute an histogram of gradients, angle and magnitude. In the following link you can see it more detailed explanation:
HOG Person Detector Tutorial

  • Check your feature vector in the previously trained classifier

Once you got this vector, check if it is the desired object or not with a previously trained classifier like SMV. Instead SVM you could use NeuralNetworks for instance.

SVM implementation is more dificult, but there are some libraries like opencv that you can use.

对你的占有欲 2024-12-15 02:13:53

MATLAB 计算机视觉系统工具箱中有一个函数 extractHOGFeatures

There is a function extractHOGFeatures in the Computer Vision System Toolbox for MATLAB.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文