浅谈HOG,从LOG说起

最近一段时间在看行人检测与跟踪,其中有一种思路是利用HOG算子进行全局匹配,网上关于HOG的文章很多,这里只能算是自己对其进行的总结。

要谈HOG(Histogram of Guassians)就不得不谈SIFT(Scalar Invariant Feature Transform)及DOG(Difference of Gaussians),而在这之前又要讨论LOG(Laplace of Gaussian),这也就是题目中的从LOG谈起的具体含义。他们之间的关系,在下文中会一一道出。

LOG算子是检测图像斑点中的常用方法,其基本思路就是:原始图像与LOG求解卷积,寻找拉普拉斯响应值的局部最大值(峰值),得到的局部最大值就可以判定为图像斑点。要稍微解释一下的是,图像与某个函数的卷积,实际上就是求取图像与某一函数的相似程度,而LOG本身的二维图像表示为一斑点,所以,当图像中斑点尺寸与LOG的形状趋于一致时,此时,图像的拉普拉斯响应抵达最大值,即为峰值,即发现一个斑点。具体的数学公式不再给出。

而在SIFT中运用到的DOG算子,与LOG还是有很大联系的。LOG算子的产生是对高斯函数进行拉普拉斯变换并进行规范化,计算量较大。这里DOG的D(Difference)是指对连续两个尺度的高斯函数作差。通过公式推导可知,DOG可以看作是LOG的近似表示,因此也就具有了LOG的一些优秀性质,比如,稳定性好,抗噪能力强。同时,与LOG相比大大降低了计算量,因而可以看做是高效的斑点检测方法。

SIFT算法可以说是将斑点检测和特征向量生成,特征匹配搜索结合、优化,而这里的斑点检测用的正是上面提到的DOG算子。首先需要明确的是SIFT算法中特征点的搜索是在立方体空间(在多层 尺度空间)中进行的,这样得到特征点,下面将详细描述一下特征描述子。

对于每个监测到的特征点,可以知道该特征点的尺度值delta,根据该delta对原始图像求解一个最接近的高斯图像,然后以该特征点位置为中心,3*1.5*delta为半径得到一个区域,求解该区域内图像梯度的幅角和幅值。同样这里不再给出公式。

利用直方图统计该特征点邻域(上面提到的圆形区域)内像素的梯度方向和幅值。横轴为:梯度方向角,纵轴为方向角对应幅值的累加,直方图峰值即为该特征点的主方向theta。最终得到的特征点信息为(x,y,delta,theta),即为特征描述子。

下面就是特征点特征向量的生成:每个特征点的邻域大小为为(m*delta*(Bp + 1 )* sqrt(2))^2,将其划分为Bp * Bp个区域,每个子区域中计算8方向梯度直方图,每个特征点将形成一个 Bp * Bp * 8 维 特征向量。用来进行局部特征匹配。

下面将介绍到HOG算法:首先对原始图像进行归一化处理,减少光照影响;一阶微分计算梯度幅值及梯度方向;将图像划分单元格(cells),分别计算各个单元格内的梯度方向直方图;对图像划分块(block),每个块中包含若干个单元格(可重叠),对每个块中的所有梯度方向直方图统一进行归一化处理;对所有梯度方向直方图生成特征向量。该特征向量即为待匹配的特征向量。之后的操作就是 利用滑动窗口对当前图像依次进行匹配,利用分类算法将待匹配图像得到的特征向量进行分类,从而对图像中的行人进行检测。

这里只是进行简单的原理上的探究,想要进一步的探究还是乖乖的看论文吧。(^_^)




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值