numpy.packbits
-
numpy.packbits(a, axis=None, bitorder='big') -
Упаковывает элементы массива с двоичными значениями в биты в массив uint8.
Результат дополняется до полных байтов путем вставки нулевых битов в конце.
Параметры: -
a : array_like -
Массив целых чисел или булевых значений, элементы которого должны быть упакованы в биты.
-
axis : int, optional -
Измерение, по которому выполняется упаковка битов.
Noneподразумевает упаковку сглаженного массива. -
bitorder : {‘big’, ‘little’}, optional -
Порядок входных битов. ‘big’ будет имитировать bin(val),
[0, 0, 0, 0, 0, 0, 1, 1] => 3 = 0b00000011 => ``, 'little' will reverse the order so ``[1, 1, 0, 0, 0, 0, 0, 0] => 3. По умолчанию используется ‘big’.Новое в версии 1.17.0.
Возвращает: -
packed : ndarray -
Массив типа uint8, элементы которого представляют биты, соответствующие логическому (0 или ненулевому) значению элементов входного массива. Форма
packedимеет такое же количество измерений, как входной массив (еслиaxisравно None, то выходной массив является одномерным).
См. также
-
unpackbits - Распаковывает элементы массива uint8 в двоичнозначный выходной массив.
Примеры
>>> 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.
-
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.17.0/reference/generated/numpy.packbits.html