當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。