Spatial Pyramid的BOW和Pyramid HOG的多核

经过我的实验,发现在基于模板法的object detection或者classification中,将Pyramid Histogram of Oriented Gradients (PHOG)和Spatial Pyramid Matching还有其他特征,如果你喜欢用的话,进行多核学习,效果其实很好。我在Bangpeng Yao的乐器数据集上做的实验,和他的论文“Grouplet: A Structured Image Representation for Recognizing Human and Object Interactions”进行了对比,结果要好,虽然好的不是很多,但是总能好个5%左右,关键的一个问题是,Yao的基于Apriori特征挖掘算法复杂度实在是太高太高太高了,很恐怖的,不信你跑跑看看吧。

下面这里介绍一下Pyramid Histogram of Oriented Gradients (PHOG),HOG大家都知道了,其实就是一个模板,每个CELL用方向信息来统计,我其实很久也用过边界方向直方图,只是感觉模板法太狭隘,就没有把边界方向直方图在CELL上求解然后连接成为一个一维向量,其实可以每个CELL看做一个patch,就可以用其他方法来做也行。之所以加入Pyramid,其实将模板方法更加严格的定义下来,这样,复合模板的就会检测的更准确,但是稍微有点旋转什么的就不行了,马上被错误检测,其实加入bias应该能解决问题。源码地址是有名的VGG里的PHOG。下面看个图:

Spatial Pyramid的BOW和Pyramid HOG的多核_第1张图片

Spatial Pyramid Matching就不用多讲了,也是将bag of words变换,先求解每一个金字塔小块的,然后连接起来成为一个长的。严格限制了模板的信息,也就是所谓的空间信息,其实这种空间信息是存在图像都是正着存储的假设,例如人都是正着的,不是躺着。代码lazebnik也提供了,但是他的代码不太适合大数据量,因为都是网内存中放的,我稍微改了改,放在这里了:PG_BOW_DEMO: Matlab code for computing the bag of visual words at different levels of spatial pyramid of images.

有兴趣的可以下载使用。

Spatial Pyramid的BOW和Pyramid HOG的多核_第2张图片


这两种特征描述子提取之后,分别求直方图交核函数,这个核函数确实好用点:

k(x,y) = \sum_{i=1}^n \min(x_i,y_i)

这难道就是越来越发现L1 norm比L2 norm好的一个不是很典型的例子?也不知道对不对。L2就是欧式距离吧,L1就是绝对值距离(曼哈顿距离)。

两个核融合的时候选个参数alpa。行了,是不是结果好多了呢?




你可能感兴趣的:(Spatial Pyramid的BOW和Pyramid HOG的多核)