hough forest----Class-Specific Hough Forests for Object Detection
来源:互联网 发布:centos软件包管理器 编辑:程序博客网 时间:2024/05/21 00:45
看了很多网上写的霍夫森林的讲解,感觉他们讲的都不是很全面,所以想写这个东西,方便以后自己查阅。这里所写的是关于对行人检测的那篇论文。
很多人一看hough forest 是不是和hough transform有关。那天我讲ppt的时候给大家讲了一下hough transform,想从hough transform过度到hough forest要好一点。老实说很多人听了霍夫变换去听霍夫森林更是云里雾里的。如果想看hough transform 建议去看维基百科。如果知道hough transform对直线检测的话。你把在直线上的点想象成这里的一个个的patch,把直线在最后在数组上的投票想象成我们后面所说的投票。但是在对直线检测的时候我们检测的是一条确定的直线,在这里我们检测的是一个物体中心。你把直线想象成物体中心就ok了。
通过训练特定类的hough forest,各个局部图像块(patch)产生对物体中心位置的概率性投票(注意:这里说的是概率性投票,其实想表达的不是概率,因为相加之后不等于1),最后累加这些投票,选取最大值作为物体的中心。
特点:
1.叶子节点存的是具有判别性的码本。即一个patch来自背景还是物体,物体中心距离当前patch的位置。
2.hough forest可以优化投票性能,即叶子节点投票的不确定度再一直降低。(因为决策树在每个分支节点都想做到把不纯度降到最低)
3.用监督方法建立树。
ok,不知道别人怎么样,我第一次看到这个图像的时候一脸懵逼。其实这幅图我理解的意思是:先取局部图像块(图a中红绿蓝色的框框(patch),然后提取特征,得到训练集。(你可以这么联想,想象成通过提取hog特征,就得到了像西瓜书上面西瓜的纹路,响声那些特征,毕竟我们有特征才有办法计算不是)。 然后就要训练一颗决策树了。训练完所有的树后我们会得到很多叶子节点。叶子节点里面存放了两个值。
1. cl—即在一个叶子节点中,正样本的数量占所有样本数量的比例。
2. dl—在叶子节点中,属于目标的样本,到物体中心的位移向量
图b显示是通过cl,dl对目标中心的概率性投票。(你可以想象成横轴表达的patch的位置,数轴表达的是这个patch是目标中心的概率值,这个不对但是你可以这么理解)
———- 训练阶段结束 ————
图c显示的是我们用固定大小的框在测试图像上滑动的时候。框中所有patch块通过hough投票得到的总概率大小。越黑的地方概率值更大。
图d得到目标中心。
训练数据
s0={(v,c,y)}
v是图片块的特征,
c是分类标签(1表目标,0表背景),
y是该块的中心到目标中心的向量 2维:有大小和方向
c=1时候才会有y
C=0时,y—-undefined
这就是分类器, a代表的是选择的channel,也就是刚刚用hog提取的特征,一般得到的是9个channel(你可以想象成这里我们需要选择西瓜的纹理那些进行熵的计算)。
(p,q) (r,s)是随机选择的两个像素点。阈值也是随机选取。
是这是叶子节点存放的情况。
树停止生长的条件:
1.达到最大深度
2.训练集中只包含一类数据
3当前节点中包含的数据集数量小于最小限制。
目标函数
1.分类
2.回归
至于分类和回归的选择,是随机选取的。
有一种特殊情况就是,当在此分裂节点中,负样本数量小于5%时候,我们只做回归。
——-至此训练结束——–
现有一图像块(v(p),c(p),y(p))
p是这个块的中心点,现在不确定c(p)的取值
E(q)表示物体中心位于x时的随机事件
。
我们用一个固定大小的框(蓝色的框)在测试图像上去滑动)。我们只计算属于蓝色框框中的图像块的投票。
怎么计算——-
这就是cl和dl的作用(直接粘自己的ppt了)。第一项是用parzen window来估计(不会百度一下有很好的讲解)。第二项就是cl。
到这里得到了一颗树,关于一个图像块的投票结果了。
这个是hough森林关于这一个patch的结果。
这个是整个森林对属于蓝色框中所有的块做出的最终结果。
到这里我们就得到了目标中心。其实就是我们用的固定大小框的中心,只是因为这个框得到的最终结果最大,所以就将他作为中心而已。
然后说下是否剪枝的问题,其实可以剪枝。在随机森林中我们一般是不剪枝的,在这里剪枝可以加速检测速度。实验中发现将叶子节点中cl<0.5的叶子节点减掉,不影响森林的准确性。你可以想,在bounding box中,本来就有很多属于背景的图片块,所以剪枝大多都是包含很多背景块的叶子节点,这并不会影响最终结果。
小时候语文学的不好,看不懂的话轻喷。。。。
- hough forest----Class-Specific Hough Forests for Object Detection
- Class-Specific Hough Forests for Object Detection
- 【论文学习笔记】Class-Specific Hough Forests For Object Detection
- Hough Forests for Object Detection
- Class-Specific Hough Forests for Object Detection随机森林(霍夫森林)来做物体(分类)检测
- Hough forest编译问题
- Hough
- Hough
- Hough
- 目标检测之hough forest
- Hough Translation & Line Detection & Circle Detection
- 写一点关于hough forest的
- 【目标检测:Hough Forest】霍夫森林(Hough Forest)目标检测算法及其原理(二)
- 【目标检测:Hough Forest】hough forest目标检测原理(一)
- 分类和回归树,随机森林,霍夫森林(CART,random forests,hough forests)
- 分类和回归树,随机森林,霍夫森林(CART,random forests,hough forests)
- 分类和回归树,随机森林,霍夫森林(CART,random forests,hough forests)
- 分类和回归树,随机森林,霍夫森林(CART,random forests,hough forests)
- 6.1(3)
- caffe 官方例程之R-CNN(物体检测)
- 实践操作:六步教你如何用开源框架Tensorflow对象检测API构建一个玩具检测器
- CC2530中的帧过滤(兼容IEEE 802.15.4-2006三级帧过滤)
- hdu6222(递推规律+java大数)
- hough forest----Class-Specific Hough Forests for Object Detection
- 日记本首页(index.php)
- day6下
- php上传公众号临时素材-微信开发素材管理6
- C++菱形继承+虚继承
- 一张图解mysql的join关系
- HTML5-网页排版划分
- 【HDU 6228、2017ACM/ICPC亚洲区沈阳站】Tree
- 输入n输出1/3+3/5+5/7+······+n/(n+2)的分数形式(n<40)