比如坐标为(1, 1)的像素点的lbp码可以用像素点(0, 0)计算;(0, 1); (0, 2); (1, 2); (2, 2); (2, 1); (2, 0); (1, 0) 但极值的像素没有这 8 个邻域像素,即像素 (0, 0) 只有 3 个邻域。
这个问题是因为我已经使用sicikit镜像获取了LBP镜像,代码如下:
lbp = feature.local_binary_pattern (gray, 8, 1, 'ror')
然后我打印了灰度图的值,得到了这些值:
[[185 185 190 ... 176 172 178]]
[183 180 181 ... 194 185 175]
[203 199 199 ... 201 193 179]
...
[205 188 182 ... 183 183 182]
[207 197 194 ... 193 190 186]
[206 201 201 ... 201 199 197]]
我还打印了LBP图像的值,得到了这些值:
[[ 1. 17. 1. ... 15. 31. 1.]
[ 27. 255. 127. ... 7. 7. 31.]
[ 0. 31. 31. ... 1. 31. 15.]
...
[ 17. 31. 63. ... 63. 111. 31.]
[ 0. 31. 31. ... 15. 15. 7.]
[ 1. 25. 17. ... 0. 1. 1.]]
我知道,例如,右上角像素的 lbp 代码是正确的,因为它提供的值为 7,但我不明白如何获得极端的 LBP 代码。谢谢。