局部二进制模式¶
局部二值图案取决于每个像素周围的局部区域。如下图所示:
(图片参考: Wikipedia )
参考像素为红色,位于中心。在一定距离上定义了多个点 r
从它那里。这些是绿点。当您从左向右移动时,绿点的数量会增加。
名称中的“模式”是绿色点处的值与中心红点的值之间的关系。我们称它为二元模式,因为我们所考虑的是绿点的值是否大于红点的值。
正如您所看到的,绿点不一定正好落在另一个像素上,因此我们需要使用插值法来找到绿点的值。
API文档¶
这个 mahotas.features.lb
模块包含 lbp
实现LBPS的函数。
- mahotas.features.lbp.lbp(image, radius, points, ignore_zeros=False)
计算线性二进制模式
返回值为 histogram 功能的数量,位置
i
对应于具有代码的像素数i
。这些代码被压缩,因此不会使用不可能的代码。因此,这就是i
此功能,而不仅仅是二进制代码的功能i
。- 参数:
- imageNdarray
输入图像(二维NumPy ndarray)
- radius数字(整型或浮点型)
半径(像素)
- points整数
要考虑的点数Nr
- ignore_zeros布尔型,可选
是否忽略零(默认值:FALSE)
- 退货:
- features一维Numpy ndarray
要素直方图。关于对这些内容的解释,请参见上面的警告。
参考文献
- 基于局部二值模式的灰度旋转不变纹理分类
Ojala,T.Pietikainen,M.Maenpaa,T.计算机科学讲稿(Springer)2000,ISSU 1842,第404-420页
- mahotas.features.lbp.lbp_transform(image, radius, points, ignore_zeros=False, preserve_shape=True)
计算线性二进制模式变换
返回值是转换后的像素值 histogram 功能的数量,位置
i
对应于具有代码的像素数i
。这些代码被压缩,因此不会使用不可能的代码。因此,这就是i
此功能,而不仅仅是二进制代码的功能i
。- 参数:
- imageNdarray
输入图像(二维NumPy ndarray)
- radius数字(整型或浮点型)
半径(像素)
- points整数
要考虑的点数Nr
- ignore_zeros布尔型,可选
是否忽略零。请注意,如果将此选项设置为
True
,您将需要设置preserve_shape
变成假的。(默认:FALSE)- preserve_shape布尔型,可选
是否返回与相同形状的数组
image
。(默认:True)
- 退货:
- features一维Numpy ndarray
要素直方图。关于对这些内容的解释,请参见上面的警告。
参考文献
- 基于局部二值模式的灰度旋转不变纹理分类
Ojala,T.Pietikainen,M.Maenpaa,T.计算机科学讲稿(Springer)2000,ISSU 1842,第404-420页