当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy packbits用法及代码示例


本文简要介绍 python 语言中 numpy.packbits 的用法。

用法:

numpy.packbits(a, /, axis=None, bitorder='big')

将二进制值数组的元素打包成 uint8 数组中的位。

通过在末尾插入零位将结果填充到完整字节。

参数

a array_like

一个整数或布尔数组,其元素应打包为位。

axis 整数,可选

完成bit-packing 的维度。 None 表示打包扁平数组。

bitorder {‘big’, ‘little’},可选

输入位的顺序。 ‘big’ 将模仿 bin(val),[0, 0, 0, 0, 0, 0, 1, 1] => 3 = 0b00000011,‘little’ 将颠倒顺序,因此 [1, 1, 0, 0, 0, 0, 0, 0] => 3。默认为‘big’。

返回

packed ndarray

类型为 uint8 的数组,其元素表示对应于输入元素的逻辑(0 或非零)值的位。打包的形状与输入的维数相同(除非轴为无,在这种情况下,输出为一维)。

例子

>>> a = np.array([[[1,0,1],
...                [0,1,0]],
...               [[1,1,0],
...                [0,0,1]]])
>>> b = np.packbits(a, axis=-1)
>>> b
array([[[160],
        [ 64]],
       [[192],
        [ 32]]], dtype=uint8)

请注意,二进制 160 = 1010 0000、64 = 0100 0000、192 = 1100 0000 和 32 = 0010 0000。

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.packbits。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。