局部二值模式(Local Binary Pattern,LBP)是一种用来描述图像局部纹理特征的算法,反映的是图像像素点周围纹理变化情况,具有旋转不变性、灰度不变性(光照变化无影响)、计算复杂度低等优点,1994年首次由Timo Ojala, Matti Pietikainen等人提出,用于纹理特征提取。2002年论文《Multiresolution gray-scale and rotation invariant texture classification with local binary patterns》进行了归纳总结,2018年该论文引用量154次,累计9832次。
LBP特征描述
原始LBP特征

使用3×3矩形模板,从上到下,从左到右逐行扫描,模板中心像素值为
得到二值图像,将二值图像值从右侧中间像素点逆时针排列,得到8位二进制数,转为10进制数,就是该中心点
一幅图像的LBP特征如果用灰度图形化显示出来就是这样的:

你可以用lbp的官方matlab代码|百度网盘(密码:3yzp) 去测试和实际使用:
txt
* lbp.m - LBP returns the local binary pattern image or LBP histogram of an image.
* getmapping.m - GETMAPPING returns a structure containing a mapping table for LBP codes.
* cont.m - C computes the VAR descriptor.详细描述和样例在头部注释里都有,这里给出我上面测试的例子:
matlab
function lbptest
I=imread('rice.png');
SP=[-1 -1; -1 0; -1 1; 0 -1; -0 1; 1 -1; 1 0; 1 1];
I2=lbp(I,SP,0,'i');
subplot(1,2,1)
imshow(I)
title("rice.png")
subplot(1,2,2)
imshow(I2)
title("lbp特征")
endLBP的整体思想非常简单,计算复杂度很低,反映的特征较好,但是有两个明显问题:
- 3×3邻域模板过小,无法捕获大尺度纹理结构
- 矩形模板是具有旋转不变性的
因此很多人开始改进。
圆形LBP特征:Circle LBP
在论文的2.1 Achieving Gray-Scale Invariance中,Ojala等人提出了圆形邻域系统,如下图所示,定义中心点为

这样就可以通过改变P的值在圆上添加任意多个点,也可以通过改变R的值任意改变模板大小,记这样的LBP算子为:
然而圆形LBP依然不具有旋转不变性。
旋转不变LBP特征:LBPROT
我们总是选择最右中间点作为起始点
其中

显然最小的是15,所以这个模板的值就是15。
看起来圆形LBP很完美,但实际使用发现LBPROT并不具有很好地辨别力,因为随着采样点数的增加,二进制模式会急剧增多,会使得数据量过大,直方图过于稀疏,不能很好地反映图像特征。
等价LBP特征:Uniform LBP
针对圆形LBP缺点,作者在2.3 Improved Rotation Invariance with "Uniform" Patterns and Finer Quantization of the Angular Space中进一步提出等价LBP特征,利用等价模式来对LBP模板种类进行降维。我们首先定义“跳变”为二进制串中"01"、"10"这样的变化,定义等价量度(Uniformity measure U("pattern"))为二进制串中的跳变次数。Ojala等人发现,大部分图像中都只包含两次跳变,于是可以保持跳变次数小于等于2的模式不变, 大于2的模式笼统归为归为一类。定义LBP:
其中,
例如,
我们以P=8,R=1来仔细分析,本来应该有
| 等价量度 | 模式个数 |
|---|---|
| U=0 | 2 |
| U=1 | 0 |
| U=2 | 56 |
| U=3 | 0 |
| U=4 | 140 |
| U=5 | 0 |
| U=6 | 56 |
| U=7 | 0 |
| U=8 | 2 |
共9种跳变,那么小于2次的共58种LBP模式,将其编码为1-58;其余的混合模式类统一编码为0,如果用灰度值图像展示等价LBP会发现这种LBP特征值图像偏暗,因为大部分不重要的特征像素都被编码为0=黑色了。
等价LBP将原来
等价LBP不具有旋转不变特性。
旋转不变等价LBP特征
将旋转不变的圆形LBP和等价LBP结合起来,就构成了最强功能的旋转不变等价LBP特征。将旋转不变LBP进一步分成P+1类均匀旋转不变模式和1类非均匀模式。实验表明,旋转不变均匀LBP具有最低特征维数,保持鉴别力的同时具有良好的旋转不变性和灰度不变性,是LBP中最好的特征了。
LBP特征提取方法
- 提取整幅图的LBP特征
- 将特征按相同规则转为向量,例如按行拼接,就能够进行后续处理了。



粤公网安备44030602007943号