SPM kernel( histogram intersection)

来源:互联网 发布:男士西服知乎 编辑:程序博客网 时间:2024/06/06 17:23

刚跟老师探讨直方图交叉核算法,因为这个算法是在看cvpr'2006 BOF那篇paper时看到的,当时没仔细研究,今天被问到了。觉得虽然比较简单,还是写出来理解得比较透彻些。

实际上histogram intersection kernel最初来自2005_ICCV_The pyramid match kernel Discriminative classification with sets of image features这篇paper。

用图来解释比较容易理解:

histogram intersection

 结合图像特征来解释,y和z表示两幅图像。三行分别相当于三层金字塔。
图(a)中每个点(蓝、红)相当于图像的特征描述子(映射到word之后)。描述子的连线中:点划线表示本层匹配(要计算),实线表示本层匹配但是在上一层已经计算过的。
图(b)三行分别为描述子在相应的层金字塔尺度上的统计直方图。
图(c)为求各层两个直方图求交集(求min)之后的结果。如图,三层的匹配点个数分别为:2,4,5。
note:这里的匹配是指只要描述子落到同一个bin里,就记为匹配。本层的匹配点数应该去掉上一层(分辨率较高)匹配的点数,避免重复计数。
 
给两个公式:
假设A、B为两个直方图,计算直方图交集的公式为(r表示bin的个数):


假设y和z为两幅图像,两幅图像的金字塔匹配度为(每一层的匹配点数加权,分辨率越高,对应的权值越大):


 
K越大,表示两幅图像的匹配度越高。