HOG(方向梯度直方图)

出自2005 Dalal CVPR用于行人检测
思想:边缘、纹理等特征信息可被梯度或边缘的方向密度分布很好地描述


方向梯度

1.计算图像梯度方向与幅值
对于图像像素点(i,j):其对x方向的梯度Hx(i,j)及对y方向的梯度Hy(i,j)

Hx(i,j)=I(i+1,j)I(i,j)
Hy(i,j)=I(i,j)I(i,j+1)

可使用梯度算子sobel,Laplacian对图像patch卷积计算。
从而可以求得梯度幅值M(x,y)与梯度方向θ(x,y):

M(x,y)=H2x+H2y
θ(x,y)=tan1HyHx

2. 计算bin值
梯度方向θ为[0,360°],将其划分成n个bins。例如OpenCV中n=9,即将一个圆均分成9部分,每一部分区间对于bin值,如0≤θ<40对应bin=0,那么当某个梯度方向在[0,40)范围内时,对应着bin=0加1,而幅值是计算bin个数时的权重,接着上面例子,如果M=2,那么bin=0加1*2=2。这样就可以得到每个bin的计数。
3. 统计bin个数构成HOG描述符
该统计是在图像的窗口区域进行的,它使用了cellSize(胞元大小)、blockSize(块大小)、blockStride(块增量大小)、winSize(窗口大小)这些参数决定区域大小及滑动方式。在OpenCV构造HOGDescriptor时会用到。下面给出示意图

1).winSize
winSize
窗口大小实质是检测窗大小
2).blockSize
blockSize
3).cellSize
cellSize


而block划分成cell时有两种方法overlap和non-overlap,overlap方法是相邻cell之间有重叠,non-overlap方法是相邻cell之间没有重叠,overlap方法好处是避免了一些重要的物体分成两个patch,但计算量大。而non-overlap方法计算量小,与图像金字塔结合,速度更快。
所以OpenCV使用的是non-overlap。
对每个block内的所有cell统计bin的直方图,并归一化,得到块HOG描述符。
直方图
再在检测窗中所有block串联得到窗口的HOG特征向量。


行人检测HOG+SVM

总体思路:
1、提取正负样本hog特征
2、投入svm分类器训练,得到model
3、由model生成检测子
4、利用检测子检测负样本,得到hardexample
5、提取hardexample的hog特征并结合第一步中的特征一起投入训练,得到最终检测子。


总结

优点:
1.HOG对图像的几何和光照能够保持很好的不变性。
2.可容许行人中细微的动作,所以HOG很适合用于行人检测。
缺点:
特征维度大,OpenCV中HOG描述符参数winSize(64,128),blockSize(16,16),blockStride(8,8),cellSize(8,8),nbins(9),这样有3780(=9*(2*2)(7*15))维,其中检测窗口有((128-16)/8+1) ((64-16)/8+1)=7*15个block,每个block有(16/8)*(16/8) =2*2个单元。这样的话计算大很大,对于使用AdaBoost+HOG做行人检测,训练到后面每一级弱分类器个数达到了几百个,这样在训练和检测过程运算时间很大。针对这个情况,可以考虑减少bin的种类,剔除不太关联的bin,保留重要的bin,从而降低HOG描述符维度。
注:
ICF(integral-channel-features)积分通道特征是HOG的变形,其有10个bins,其中6个bin是HOG梯度方向,1个bin是梯度幅值,还有3个bins是LUV颜色空间的三个颜色通道。这样对于颜色特征效果比较明显的物体检测是个不错的选择。

参考:
1.目标检测的图像特征提取之(一)HOG特征
2.Histogram of Oriented Gridients(HOG) 方向梯度直方图
3. opencv源码解析(hog+svm)
4. ICF: Integral Channel Features

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值