Python中的numpy.packbits()

Python中的numpy.packbits()

numpy.packbits()是另一个在numpy中进行二进制操作的函数。它用于将二进制值数组中的元素打包成uint8数组中的比特,通过在最后插入零比特,将结果填充成全字节。

语法: numpy.packbits(arr, axis=None)

参数 :
arr : [array_like] 一个整数或布尔运算的数组,其元素应打包成比特。
axis: [ int, optional] 进行比特打包的维度,如果没有,则以扁平化的数组进行打包。

返回: [packed ndarray] uint8类型的数组,其元素代表与输入元素的逻辑(0或非零)值相对应的位。

代码#1:

# Python program explaining
# numpy.packbits() function
  
# importing numpy
import numpy as geek
  
# creating input array using 
# array function
in_arr = geek.array([[[1, 0, 1],
                     [0, 1, 0]],
                     [[1, 1, 0],
                        [0, 0, 1]]])
print ("Input array : ", in_arr) 
  
# packing elements of an array
# using packbits() function
out_arr = geek.packbits(in_arr)
  
print ("Output packed array : ", out_arr)

输出 :

Input array :  
[[[1 0 1]
  [0 1 0]]

 [[1 1 0]
  [0 0 1]]]
Output packed array :  [171  16]

代码#2:

# Python program explaining
# numpy.packbits() function
  
# importing numpy
import numpy as geek
  
# creating input array using 
# array function
in_arr = geek.array([[[0, 0, 1],
                     [1, 1, 0]],
                     [[1, 0, 0],
                        [1, 1, 1]]])
print ("Input array : ", in_arr) 
  
# packing elements of an array
# using packbits() function
out_arr = geek.packbits(in_arr, axis = 1)
  
print ("Output packed array along axis 1 : ", out_arr) 

输出 :

Input array :  [[[0 0 1]
  [1 1 0]]

 [[1 0 0]
  [1 1 1]]]
Output packed array along axis 1 :  [[[ 64  64 128]]

 [[192  64  64]]]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程