1.通俗说LBP算子
1.1 较理想的LBP算子
LBP是Local Binary Pattern的缩写,即局部二值模式。算子就是指掩模。例如,这里的LBP算子为3X3大小的,其是把中心位置的像素值作为阈值标准,当邻域的值大于中心值时,那个位置就被标记为1,小于则被标记0。当标记完后就可以做编码了。编码以左上角,也就是像素坐标轴的零点作为起始点,顺时针将标记值由右边低位向左边高位依次排列,如下图所示,得到一个8位长的编码。
再如这个图像为9X9大小,算子扫过就会出现9X9 / 3X3 = 9个编码值,然后用直方图统计编码值的出现的频率。如此就记录下了这张图像的特征信息。
当具有类似特征信息的图像需要识别时,就将两者的特征信息对匹配,根据经验设定一个匹配值,如两者匹配率达到90%,那就是可以两者是同一类或者同一个东西。或者做识别,将图像的特征信息扔进训练好的分类器,让它判断图像是什么。
2.较理想下LBP算子的不足
2.1 未考虑图像的旋转不变性
在1.1中所讲的小例子,如果具有相同特征信息的图像A1和A2,采集的A1的编码信息,做匹配之前,图像A2相较于A1作了旋转45°。对于我们人来说,很容易判断A1和A2就是同一类,然而对机器根据LBP算子来判断则不能判断。因为