????LBP(Local Binary Pattern,局部二值模式)是一種用來描述圖像局部紋理特征的算子;它具有旋轉不變性和灰度不變性等顯著的優點。用于紋理特征提取。而且,提取的特征是圖像的局部的紋理特征。
原始的LBP算子定義為在3*3的窗口內,以窗口中心像素為閾值,將相鄰的8個像素的灰度值與其進行比較,若周圍像素值大于中心像素值,則該像素 點的位置被標記為1,否則為0。這樣,3*3鄰域內的8個點經比較可產生8位二進制數(通常轉換為十進制數即LBP碼,共256種),即得到該窗口中心像 素點的LBP值,并用這個值來反映該區域的紋理信息。
顯而易見的是,上述提取的LBP算子在每個像素點都可以得到一個LBP“編碼”,那么,對一幅圖像(記錄的是每個像素點的灰度值)提取其原始的LBP算子之后,得到的原始LBP特征依然是“一幅圖片”(記錄的是每個像素點的LBP值)。
LBP的應用中,如紋理分類、人臉分析等,一般都不將LBP圖譜作為特征向量用于分類識別,而是采用LBP特征譜的統計直方圖作為特征向量用于分類識別。
????對LBP特征向量進行提取的步驟
(1)首先將檢測窗口劃分為16×16的小區域(cell);
(2)對于每個cell中的一個像素,將相鄰的8個像素的灰度值與其進行比較,若周圍像素值大于中心像素值,則該像素點的位置被標記為1,否則為0。這樣,3*3鄰域內的8個點經比較可產生8位二進制數,即得到該窗口中心像素點的LBP值;
(3)然后計算每個cell的直方圖,即每個數字(假定是十進制數LBP值)出現的頻率;然后對該直方圖進行歸一化處理。
(4)最后將得到的每個cell的統計直方圖進行連接成為一個特征向量,也就是整幅圖的LBP紋理特征向量;
然后便可利用SVM或者其他機器學習算法進行分類了。