LBP特征
1.LBP特征
用于描述局部的纹理特征,具有旋转不变性以及灰度不变性。
2.LBP特征的描述
LBP算子,定义为,在一个3*3的窗内,一中心点的像素值为阈值,相邻的八个点的值,大于阈值则为1,小于阈值则为0。相邻的八个点与其比较可以产生一个八位的二进制数(转换成10进制则为0~255),以左上角为起点,顺时针进行旋转,可以得到八个二进制串,取八个二进制串的最小值,即为LBP计算得到的中心像素点的值。因此LBP具有旋转不变性。
3.Matlab实现
function lbp_value = caculate_lbp(image , x, y)
center = image(x,y);
temp(1) = double(image(x-1,y-1)>center);
temp(2) = double(image(x-1,y )>center);
temp(3) = double(image(x-1,y+1)>center);
temp(4) = double(image(x ,y+1)>center);
temp(5) = double(image(x+1,y+1)>center);
temp(6) = double(image(x ,y+1)>center);
temp(7) = double(image(x-1,y+1)>center);
temp(8) = double(image(x ,y-1)>center);
for i = 1:8
value(i) = 0;
for j = 1:8
value(i) = value(i) + (2^abs(9-i-j)*temp(j));
end
end
lbp_value =min(value);
end