HOG中的三线性插值
来源:互联网 发布:知行合一的知的意思 编辑:程序博客网 时间:2024/05/16 07:33
http://blog.csdn.net/zhazhiqiang/article/details/21043637点击打开链接
图1
所谓的三线性插值指的是在(x,y,theta)这三个参数空间中进行插值,即x方向、y方向和梯度的角度空间,如图1所示,图中的象素点(x,y)在利用梯度幅值作为权重进行投票时,要根据该象素点距离其他格子中心的距离进行加权,同时该象素点的梯度方向也要在其相邻的区间内进行插值,用数学公式描述如下式所示。
图2 三线性插值示意图
三线性插值在具体实现中,可以利用LUT(look-up-table)来快速计算,若是采用积分直方图,则可以采用Wang等[Wang, 2009]提出的卷积三线性插值方法(Convoluted Trilinear Interpolation,CTI)快速计算,更多关于三线性插值的描述见[Pang, 2011]. 以下用一个简单的例子来说明。
设图2中所示象素点的梯度方向是85度,梯度幅值是100,该象素点距离格子中心的左、右、上、下的距离分别为2、6、2、6。首先考虑梯度方向上的插值,若每20度为一个区间,85介于70和90之间,到第三个和第四个区间中心的距离分别为15和5,因此若投票值为v,则投票到第三个区间的值是(5/20)*v=0.25v,投票到第四个区间的值是(1-1/4)*v=0.75v。接下来考虑在x和y方向上的插值,根据象素点距离各个格子中心的距离,可知在x方向上的权重分配系数为6/8、2/8,在y方向上的权重分配系数也为6/8、2/8。所以梯度幅值分配到第一个格子的值为100*6/8*6/8=56.25,分配到第二个格子的值为100*2/8*6/8=18.75,分配到第三个格子的值为100*6/8*2/8=18.75,分配到第四个格子的值为100*2/8*2/8=6.25。最后,根据梯度方向上的投票权重,可知:第一个格子的直方图第三个区间得到的投票值为56.25*0.25=14.0625,第一个格子的直方图第四个区间得到的投票值为56.26*0.75=42.1875;第二个格子的直方图第三个区间得到的投票值为18.75*0.25=4.6875,第二个格子的直方图第四个区间得到的投票值为18.75*0.75=14.0625;以此类推,可求出第三个和第四个格子的直方图特征。
参考文献
[Wang, 2009] X. Wang, X. Han, and S. Yan. A HOG-LBP human detector with partial occlusion handling [A]. In Proc. of ICCV[C], 2009.
[Pang, 2011] Y. Pang, Y. Yuan, X. Li, et al. Efficient HOG human detection [J]. Signal Processing, 2011, 91: 773-781.
Source Code
1. VLFeat中的HOG实现:http://www.vlfeat.org/overview/hog.html#tut.hog.basic
- HOG中的三线性插值
- HOG中的三线性插值
- HOG中的三线性插值
- HOG中的三线性插值
- 【原理】HOG中的三线性插值
- 三线性插值在HOG中的应用
- 三线性插值在HOG中的应用
- HOG三线性插值
- 对hog中的三次线性插值的一点解释(转)
- 三线性插值
- 三线性插值
- opencv 学习笔记-入门(21)之三线性插值-hog(二)
- 线性插值之双线性插值与三线性插值
- SIFT 三线性插值 理解篇
- 线性插值
- 线性插值
- 线性插值
- 线性插值(双线性)(三线性)
- 17款最佳的代码审查工具
- ImagesLazyload图片延迟加载效果
- linux 根据端口kill掉进程
- 运行时异常与一般异常的区别
- 关于lower_bound 和upper_bound
- HOG中的三线性插值
- 写给栋栋的前端入门到熟悉教程
- 算法设计题2.16~2.18-线性表-第2章-《数据结构习题集》-严蔚敏吴伟民版
- Travis CI
- 第一篇 linux中红黑树的具体实现及迁移,应用
- Django项目开发纪要
- Android中跳转到系统设置界面大全
- 记JAVA的二三事(1)——"==","引用"
- Android项目欢迎界面实现方式及代码