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