查看了一些关于HOG特征检测的文章,觉得Histogram of Oriented Gradients这一篇文章讲的比较清楚。整理如下。
1.预处理
用于计算HOG特征的图像一般都是选择大小为64x128像素大小。在opencv中可以直接调用resize()来完成,得到src。当然也有先裁剪在resize()的操作方式。这里也可以采用gamma correction对src进行处理,但是从Dalal和Triggs的论文可知,其作用并不是很大,所以也可以不用。
关于gamma校正可以参考伽马(Gamma)校正的原理及opencv实现。
2.计算梯度图像
需要计算出src在X和Y方向的梯度图像Gx和Gy(梯度图像均为单通道图像),然后根据Gx和Gy计算出幅值和角度,这里的角度一般采用无符号表示,即0~1