【翻译】HOG, Histogram of Oriented Gradients / 方向梯度直方图 介绍

原文链接: https://www.learnopencv.com/histogram-of-oriented-gradients/

翻译:coneypo

 

在这篇文章中,我们将会学习 HOG (Histogram of Oriented Gradients,方向梯度直方图)特征描述子 的详细内容。

我们将学习 HOG 算法是如何实现的,以及在 Opencv / MATLAB 或者其他工具里面如何计算特征子。

这篇文章是我正在写的,关于 Image Recognition / 图像识别Object Detection / 目标检测 系列文章中的一部分。

 

完整的系列文章如下所示:

  1. 使用传统计算机视觉技术来进行 Image recognition / 图像识别 :Part 1 ( https://www.learnopencv.com/image-recognition-and-object-detection-part1/ )

  2. HOG 方向梯度直方图:Part 2

  3. 图像识别的例子:Part 3 ( https://www.learnopencv.com/handwritten-digits-classification-an-opencv-c-python-tutorial )

  4. 训练一个更好的眼睛检测器:Part 4a ( https://www.learnopencv.com/training-better-haar-lbp-cascade-eye-detector-opencv )

  5. 使用传统计算机视觉技术来进行 Object detection / 目标检测:Part 4b

  6. 如何训练和测试你自己的 OpenCv 目标检测器:Part 5

  7. 使用 Deep learning / 深度学习来进行图像识别:Part 6

    介绍 Neural Networks / 神经网络 ( https://www.learnopencv.com/neural-networks-a-30000-feet-view-for-beginners/ )

    理解 Feedforward Neural Networks / 负反馈神经网络 ( https://www.learnopencv.com/understanding-feedforward-neural-networks/ )

    使用 Convolutional Neural Networks / 卷积神经网络 来进行图像识别 ( https://www.learnopencv.com/image-classification-using-convolutional-neural-networks-in-keras/ )

  8. 使用 Deep learning / 深度学习来进行目标检测:Part 7

 

很多事情看起来困难又神秘,但是你一旦花时间去了解,揭开神秘面纱,你就会发现神奇之处。

如果你是一个初学者,觉得计算机视觉又难又神秘,请记住一句话:

问:如何吃掉一个大象?

答:一口一口吃

 

什么是 Feature Desciptor / 特征描述子

Feature Desciptor / 特征描述子 从图像中提取有用信息,剔除无关信息;

典型的,特征描述子将一副 宽度 * 高度 * 3 ( 通道数 ) 的图像,转换为长度为 n 的特征向量或者特征矩阵。比如 HOG 特征描述子,一幅 64 * 128 * 3 的图像,输出长度为 3780 的特征向量。

请记住, HOG 的特征描述子也可以计算其他尺寸,但是这篇文章中,我使用上述尺寸,为了帮助你能够轻松的理解概念。

 

这些概念听起来都挺不错,但是哪些是“有用的信息”,有些又是“无用的信息"

定义“有用的信息”,我们需要知道有用的信息用来干什么的。

很明显,通过特征向量用来浏览图像是没用的,但是在图像识别或者目标检测中,特征向量会很有用。

在一些图像分类算法中比如 SVM,Support Vector Machine,支持向量机中,用特征向量进行分类会达到很好的结果。

但是在分类任务中,哪些特征是有用的呢?

 

我们借助下面的例子来讨论,比如现在我们想通过一个目标检测器,可以检测衬衫和大衣的纽扣。

一个纽扣是一个圆形(图片中也有可能看起来像是椭圆),一般来说有几个孔,用于缝到衣服上面。

你可以在纽扣的图像上使用一个 Edge detector / 边缘检测器,可以轻松通过检测边缘来辨别它是不是一个纽扣。

这个例子中,边缘信息是“有用的”而颜色信息是 ”无用的“。

除此之外,特征也需要有足够特殊的地方。比如一个好的特征,应该能够让你辨别出纽扣和其他圆形的物体,比如硬币和汽车轮胎。

 

如何计算 Histogram of Oriented Gradients / 方向梯度直方图?

  在这一节,我们会继续深入学习如何计算 HOG 特征描述子。

步骤1:预加工

之前提到用于行人检测的 HOG 特征描述子,是基于 64×128 大小的图像。当然,图像可能是任何尺寸的。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zydjjj.html