统一化模式LBP

我们知道8bit的LBP的特征维数为2^8=256,向量维数非常高,所以希望通过降维减少计算量。这里的统一化模式(Uniform pattern)就是一种降维方式。
首先了解一下什么是转变,这里讲的转变就是从0到1,或从1到0的跳变。例如:10000000——只包含一次转变,10000001——包含两次转变,10100000——包含三次转变。
统一化模式有的是有也叫等价模式,也有叫一致模式的。它是指256种8bit的编码中转变数不超过2的编码,共有58种。
本文主要列举出58中情况:

  • 0个转变(2个):
11111111
00000000

  • 1个转变(7×2=14个):
01111111 【统一化模式LBP】
00111111
00011111
00001111
00000111
00000011
00000001

  • 2个转变(6×2+5×2+4×2+3×2+2×2+1×2=42个)
6×2:
01000000
00100000
00010000
00001000
00000100
00000010
5×2:
01100000
00110000
00011000
00001100
00000110
4×2:
01110000
00111000
00011100
00001110
3×2:
01111000
00111100
00011110
2×2:
01111100
00111110
1×2:
01111110


值得注意的是,上面×'2'中的2表示有两种情况,即原码个反码两种,这样变得到了58种统一化的编码,比原来256种减少了很多。
如果用P表示编码的比特位数,这种统一化后的编码个数可以用公式P(P-1)+2得到。
该公式从上面的例子可以看出,2+8×(8-1)=2+8×(8-1)/2*2=2+(7+6+5+4+3+2+1)*2,可以看成等差数列求和中的高斯求和公式。

    推荐阅读