什么是局部二值模式介绍
局部二值模式(Local binary patterns LBP)是计算机视觉领域里用于分类的视觉算子。它是1990年提出的纹理光谱模式(Texure Spectrum model)的特殊案例。LBP最早于1994年提出,从此被视作纹理分类中的有力特征;同时,如果将LBP与方向梯度直方图算子(HOG)结合,可以在部分数据集中极大提高检测性能。不同版本的LBP的全部调查可以参考Bouwmans et al.
局部二值模式(LBP)首先是用来做图像局部特征比较的,传统的LBP方法,首先通过阈值来标记中心点像素与其邻域像素之间的差别。LBP是人脸识别中经常使用的一种方法。
最早的LBP算子是定义在3*3的邻域上的。它使用中心像素值来计算8的邻域像素。然后在乘以领域的权值得到结果。下面我们给出一个例子:
Example
6、 |
4、 |
3、 |
7、 |
5、 |
2、 |
8、 |
9、 |
5、 |
Threshold
1、 |
0 |
0 |
1、 |
* |
0 |
1、 |
1、 |
1、 |
(10001111)2 LBP=1+16+32+64+128 = 241
C = (6+7+8+9+5)/5 – (4+3+2)/3 =6
Weights
1、 |
2、 |
4、 |
128 |
* |
8、 |
64 |
32 |
16 |
我们使用二维分布LBP和局部对比测量C作为该领域的特征。
但是为了使得到的特征更有代表性。矩形领域的大小是可以改变的,可以使用4*4或5*5的领域。相比矩形领域,圆形对称领域的效果更好。
局部二值模式概念
LBP特征向量最简单的形式,是按照如下方式建立的:
(1)将检测窗口划分成小块(比如16*16的小块);
(2)对小块中的每个像素,比较与其相邻的8个邻居(左上,左中,左下,右上,等等)。顺时针或逆时针沿着圆形跟随像素;
(3) 如果中心像素的值比邻居的值大,写0,否则写1。这样就构造了一个8位的数字(通常,为了方便起见,会转换为小数);
(4)在小块中计算每一个“数字”出现的频率直方图;
(5)可以选择性地对直方图进行规范化;
(6)连接所有小块的(规范化的)直方图。这样就构成了整个窗口的特征向量。
特征向量可以使用支持向量机或一些其他的机器学习算法来进行图片分类。
局部二值模式应用
可以用于人脸识别或纹理分析。