Mahotas - 局部二元模式
局部二元模式 (LBP) 是一种生成二元模式的方法。它将中心像素的强度值与其邻居进行比较。
如果邻域中的每个像素大于或等于中心像素的强度,则为其分配 1 的值,否则为 0。
二元模式用于计算统计度量或直方图表示,以捕获图像中的纹理信息。
生成的描述符可用于各种应用,例如纹理分类、对象识别和图像检索。
局部二元模式使用一种称为线性二元模式的技术。线性二元模式考虑线性(直线)邻域来创建二元模式。下面我们来简单讨论一下线性二进制模式。
线性二进制模式
线性二进制模式用于描述图像的纹理。它的工作原理是比较中心像素周围邻域中像素的强度值,并将结果编码为二进制数。
简单来说,LBP 查看特定像素周围像素值形成的模式,并用一系列 0 和 1 表示该模式。
在这里,我们查看图像的线性二进制模式 −

示例
在下面提到的示例中,我们尝试执行上面讨论的功能。
import mahotas as mh import numpy as np import matplotlib.pyplot as mtplt image = mh.imread('nature.jpeg', as_grey=True) # 线性二元模式 lbp = mh.features.lbp(image, 5, 5) mtplt.hist(lbp) mtplt.title('Linear Binary Patterns') mtplt.xlabel('LBP Value') mtplt.ylabel('Frequency') mtplt.show()
输出
执行上述代码后,我们得到以下输出 −

我们将在下一章中详细讨论线性二进制模式。