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

【原文:http://bbs.sciencenet.cn/blog-702148-762019.html

利用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的大小相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值