Boyuan's Research Blog分享 http://blog.sciencenet.cn/u/tyfbyfby My homepage: www.patternrecognition.cn/~fengboyuan/

博文

利用OpenCV提取HOG特征需要了解的参数

已有 22574 次阅读 2014-1-24 23:04 |个人分类:图像工具|系统分类:科研笔记| 参数, OpenCV, 特征提取, HOG

利用OpenCV提取HOG特征主要有两组参数需要设定,一个是HOG检测滑动窗口内部的参数,另一个是计算HOG特征时滑动窗口的步长


一、HOG检测滑动窗口内部的参数包括:检测window的大小,window内block的大小,block滑动的步长,以及cell的大小。


其中滑动窗口所包含的区域即我们需要提前HOG特征的区域。


HOGDescriptor* hog = newHOGDescriptor(cvSize(64, 48), cvSize(8, 6), cvSize(4, 3), cvSize(4, 3), 9);


cvSize(64,48)表示特征提取滑动窗口的大小,cvSize(8, 6)表示块(block)大小,cvSize(4,3)表示block滑动的步长(block步长设置较小,则相邻的block会有cell的交叠,从而增加特征鲁棒性),cvSize(4, 3)表示胞元(cell)大小,9表示每个胞单元中梯度直方图的数量。


二、提取HOG特征时,参数描述如下:


计算特征向量hog->compute(trainImg,descriptors, Size(64, 48), Size(0, 0))


此处,trainImg代表输入的图片(此处尺寸为640×480),descriptors表示保存特征结果的Vector,Size(64,48)表示windows的步进,第四个为padding,用于填充图片以适应大小。

当padding以默认状态Size(0,0)出现,滑动窗口window来计算图片时,结果不一定为整数。


注意,我们发现这里hog->compute()函数无法指定计算以trainImg图像中某个坐标点为中心的滑动窗口的特征值,为了达到这个目标,我们需要将原图提取的滑动窗口图像放入trainImg中,trainImg的大小和滑动窗口的大小相同,然后设定滑动窗口移动的步长为1(其实此时滑动窗口已经不能移动了,所以设置为多少都行)。这样整个trainImg只能提取一个窗口的HOG特征,这个窗口的大小和trainImg的大小相同。




https://blog.sciencenet.cn/blog-702148-762019.html

上一篇:解决VS2012编译生成的程序无法在Win XP, Win 2003运行的问题
收藏 IP: 159.226.178.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (2 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-21 00:36

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部