纹理是物体表面的固有特征之一,可认为是灰度(颜色)在空间以一定的形式变化而产生的图案(模式).
LBP(Local Binary Pattern, 局部二值模式)是一种用来描述图像局部纹理特征的算子;它的作用是进行特征提取,提取图像的局部纹理特征.
原始的LBP算子定义为在3*3的窗口内,以窗口中心像素为阈值,将相邻的8个像素的灰度值与其进行比较,
若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0.
3*3领域内的8个点可产生8bit的无符号数,即得到该窗口的LBP值,并用这个值来反映该区域的纹理信息.
如下图所示,r = 3,p = 8.
计算公式如下:
gc为中心像素点,gp为邻域像素点.
LBP纹理特征向量,一般以图像的分块LBP直方图表示,具体计算步骤如下:
1).将图像划分为N*N的图像子块,计算每个子块中每个像素的LBP值.
2).对每个子块进行直方图统计,得N*N图像子块的直方图.
3).利用N*N个子块的直方图,描述该图像的纹理特征.
参考文献 Background Subtraction Based on a Combination of Texture,Color and Intensity ICSP 2008
文献在LBP的基础上,提出了DLBP特征 Double Local Binary Pattern.
LBP的缺点:
1).It cannot differeniate between ascending and homogeneous.
无法区分邻域像素点与中心像素点相等,或者邻域像素点大于中心像素点两种情况,因此,这两种情况所得都是s(u) = 1.
2).It is sensitive to noise due its threshold schem.
DLBP主要是为了解决LBP的缺点而提出的,表式形式如下:
当LBP+ = 0 且 LBP- = 0,表示邻域像素点与中心像素点相同;
当LBP+ = 1 且 LBP- = 0时,表示邻域像素点大于中心像素点;
当LBP+ = 0 且 LBP- = 1时,表示邻域像素点小于中心像素点;
从而可以区分邻域像素点与中心像素点的三种情况.
引入参数n,来改善像素点值轻微变化对LBP的影响.文中取n = 4.
LBP和DLBP的比较示例图如下:
(b),(c),(d)利用DLBP更能表述图像的特征.(a)中DLBP和LBP的表描结果是一样的.
参考文献 Dynamic Background Modeling and Subtraction Using Spatio-Temporal Local Binary Patterns ICIP 2008
STLBP spatio-temporal local binary patterns
文献中提出STLBP的目的是为了将空间上的纹理信息和时间上的运动信息结合,便于建立更准确的背景模型.
其思想是将当前帧中像素点的LBP和前一帧中对应像素点的LBP,按一定权值结合起来.
权值大小的来衡量,前一帧图像对后一帧图像的影响.
A small value is sufficient for scenes which have small changes,
whereas a larger value is required in the scenes which have strong changes.
参考文献 Dynamic Texture Recognition Using Volume Local Binary Patterns Workshop on Dynamical Vision 2007
VLBP volume local binary patterns
VLBP与STLBP相比,不同之处在于它同时考虑前p帧图像和后p帧图像的LBP特征.
因而,提取VLBP特征是需要事先获取当前图像序列的前后图像序列.
文献中,还进一步说明了,如何将VLBP特征转换为Rotation Invariant VLBP.
若具体应用需要Rotation Invariant VLBP,其转换过程请参考原文.