當前位置: 首頁>>代碼示例>>Python>>正文


Python numpy.packbits方法代碼示例

本文整理匯總了Python中numpy.packbits方法的典型用法代碼示例。如果您正苦於以下問題:Python numpy.packbits方法的具體用法?Python numpy.packbits怎麽用?Python numpy.packbits使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在numpy的用法示例。


在下文中一共展示了numpy.packbits方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: lsb_deinterleave_bytes

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def lsb_deinterleave_bytes(carrier, num_bits, num_lsb, byte_depth=1):
    """
    Deinterleave num_bits bits from the num_lsb LSBs of carrier.

    :param carrier: carrier bytes
    :param num_bits: number of num_bits to retrieve
    :param num_lsb: number of least significant bits to use
    :param byte_depth: byte depth of carrier values
    :return: The deinterleaved bytes
    """

    plen = roundup(num_bits / num_lsb)
    carrier_dtype = byte_depth_to_dtype[byte_depth]
    payload_bits = np.unpackbits(
        np.frombuffer(carrier, dtype=carrier_dtype, count=plen).view(np.uint8)
    ).reshape(plen, 8 * byte_depth)[:, 8 * byte_depth - num_lsb: 8 * byte_depth]
    return np.packbits(payload_bits).tobytes()[: num_bits // 8] 
開發者ID:ragibson,項目名稱:Steganography,代碼行數:19,代碼來源:bit_manipulation.py

示例2: test_packbits_empty_with_axis

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def test_packbits_empty_with_axis():
    # Original shapes and lists of packed shapes for different axes.
    shapes = [
        ((0,), [(0,)]),
        ((10, 20, 0), [(2, 20, 0), (10, 3, 0), (10, 20, 0)]),
        ((10, 0, 20), [(2, 0, 20), (10, 0, 20), (10, 0, 3)]),
        ((0, 10, 20), [(0, 10, 20), (0, 2, 20), (0, 10, 3)]),
        ((20, 0, 0), [(3, 0, 0), (20, 0, 0), (20, 0, 0)]),
        ((0, 20, 0), [(0, 20, 0), (0, 3, 0), (0, 20, 0)]),
        ((0, 0, 20), [(0, 0, 20), (0, 0, 20), (0, 0, 3)]),
        ((0, 0, 0), [(0, 0, 0), (0, 0, 0), (0, 0, 0)]),
    ]
    for dt in '?bBhHiIlLqQ':
        for in_shape, out_shapes in shapes:
            for ax, out_shape in enumerate(out_shapes):
                a = np.empty(in_shape, dtype=dt)
                b = np.packbits(a, axis=ax)
                assert_equal(b.dtype, np.uint8)
                assert_equal(b.shape, out_shape) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:21,代碼來源:test_packbits.py

示例3: update

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def update(self):
        if self.inky_colour is None:
            raise RuntimeError("You must specify which colour of Inky pHAT you're using: inkyphat.set_colour('red', 'black' or 'yellow')")

        self._display_init()

        x1, x2 = self.update_x1, self.update_x2
        y1, y2 = self.update_y1, self.update_y2

        region = self.buffer[y1:y2, x1:x2]

        if self.v_flip:
            region = numpy.fliplr(region)

        if self.h_flip:
            region = numpy.flipud(region)

        buf_red = numpy.packbits(numpy.where(region == RED, 1, 0)).tolist()
        if self.inky_version == 1:
            buf_black = numpy.packbits(numpy.where(region == 0, 0, 1)).tolist()
        else:
            buf_black = numpy.packbits(numpy.where(region == BLACK, 0, 1)).tolist()

        self._display_update(buf_black, buf_red)
        self._display_fini() 
開發者ID:pimoroni,項目名稱:inky-phat,代碼行數:27,代碼來源:inky212x104.py

示例4: decode_long_array

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def decode_long_array(
    long_array: numpy.ndarray, size: int, dense=True
) -> numpy.ndarray:
    """
    Decode an long array (from BlockStates or Heightmaps)
    :param long_array: Encoded long array
    :param size: int: The expected size of the returned array
    :return: Decoded array as numpy array
    """
    long_array = long_array.astype(">q")
    bits_per_entry = (len(long_array) * 64) // size
    bits = numpy.unpackbits(long_array[::-1].astype(">i8").view("uint8"))
    if not dense:
        entry_per_long = 64 // bits_per_entry
        bits = bits.reshape(-1, 64)[:, -entry_per_long * bits_per_entry :]

    return numpy.packbits(
        numpy.pad(
            bits.reshape(-1, bits_per_entry)[-size:, :],
            [(0, 0), (16 - bits_per_entry, 0)],
            "constant",
        )
    ).view(dtype=">h")[::-1] 
開發者ID:Amulet-Team,項目名稱:Amulet-Core,代碼行數:25,代碼來源:world_utils.py

示例5: decode

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def decode(self, img):
        """
        Decode the image from internal image format.
        """
        assert len(img.shape) == 1
        assert img.shape[0] >= (self._h * self._w / 8)
        assert img.shape[0] % self._align == 0

        img_8b_1d = np.unpackbits(img) * 255  # to 8bit gray scale.
        img_8b_1d_trimmed = img_8b_1d[0: (self._h * self._w)]
        img_8b_2d = np.reshape(img_8b_1d_trimmed, (self._h, self._w))

        return img_8b_2d

#    def convert(self, img):
#        return np.packbits(img) 
開發者ID:hasegaw,項目名稱:IkaLog,代碼行數:18,代碼來源:reference.py

示例6: show

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def show(self, busy_wait=True):
        """Show buffer on display.

        :param bool busy_wait: If True, wait for display update to finish before returning, default: `True`.
        """
        region = self.buf

        if self.v_flip:
            region = numpy.fliplr(region)

        if self.h_flip:
            region = numpy.flipud(region)

        if self.rotation:
            region = numpy.rot90(region, self.rotation // 90)

        buf_a = numpy.packbits(numpy.where(region == BLACK, 0, 1)).tolist()
        buf_b = numpy.packbits(numpy.where(region == RED, 1, 0)).tolist()

        self._update(buf_a, buf_b, busy_wait=busy_wait) 
開發者ID:pimoroni,項目名稱:inky,代碼行數:22,代碼來源:inky.py

示例7: save_mask

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def save_mask (path, mask):
    shape = np.array(list(mask.shape), dtype=np.uint32)
    total = mask.size
    totalx = (total +7 )/ 8 * 8
    if totalx == total:
        padded = mask
    else:
        padded = np.zeros((totalx,), dtype=np.uint8)
        padded[:total] = np.reshape(mask, (total,))
        pass
    padded = np.reshape(padded, (totalx/8, 8))
    print padded.shape
    packed = np.packbits(padded)
    print packed.shape
    np.savez_compressed(path, shape, packed)
    pass 
開發者ID:aaalgo,項目名稱:plumo,代碼行數:18,代碼來源:adsb3.py

示例8: save_mask

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def save_mask (path, mask):
    shape = np.array(list(mask.shape), dtype=np.uint32)
    total = mask.size
    totalx = (total +7 )// 8 * 8
    if totalx == total:
        padded = mask
    else:
        padded = np.zeros((totalx,), dtype=np.uint8)
        padded[:total] = np.reshape(mask, (total,))
        pass
    padded = np.reshape(padded, (totalx//8, 8))
    #print padded.shape
    packed = np.packbits(padded)
    #print packed.shape
    np.savez_compressed(path, shape, packed)
    pass 
開發者ID:aaalgo,項目名稱:plumo,代碼行數:18,代碼來源:adsb3.py

示例9: GenerateSample

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def GenerateSample(filename, code_shape, layer_depth):
  # {0, +1} binary codes.
  # No conversion since the output file is expected to store
  # codes using {0, +1} codes (and not {-1, +1}).
  code = synthetic_model.GenerateSingleCode(code_shape)
  code = np.round(code)

  # Reformat the code so as to be compatible with what is generated
  # by the image encoder.
  # The image encoder generates a tensor of size:
  # iteration_count x batch_size x height x width x iteration_depth.
  # Here: batch_size = 1
  if code_shape[-1] % layer_depth != 0:
    raise ValueError('Number of layers is not an integer')
  height = code_shape[0]
  width = code_shape[1]
  code = code.reshape([1, height, width, -1, layer_depth])
  code = np.transpose(code, [3, 0, 1, 2, 4])

  int_codes = code.astype(np.int8)
  exported_codes = np.packbits(int_codes.reshape(-1))

  output = io.BytesIO()
  np.savez_compressed(output, shape=int_codes.shape, codes=exported_codes)
  with tf.gfile.FastGFile(filename, 'wb') as code_file:
    code_file.write(output.getvalue()) 
開發者ID:ringringyi,項目名稱:DOTA_models,代碼行數:28,代碼來源:gen_synthetic_single.py

示例10: encode_1bit

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def encode_1bit(values):
    return np.packbits(values.ravel()) 
開發者ID:mhvk,項目名稱:baseband,代碼行數:4,代碼來源:test_base.py

示例11: encode_1bit

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def encode_1bit(values):
    """Encodes values using 1 bit per sample, packing the result into bytes."""
    bitvalues = encode_1bit_base(values.reshape(-1, 8))
    return np.packbits(bitvalues[:, ::-1]) 
開發者ID:mhvk,項目名稱:baseband,代碼行數:6,代碼來源:payload.py

示例12: encode_1bit

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def encode_1bit(values):
    """Encodes values using 1 bit per sample, packing the result into bytes."""
    bitvalues = np.signbit(values.reshape(-1, 8)).view(np.uint8)
    return np.packbits(bitvalues[:, ::-1]) 
開發者ID:mhvk,項目名稱:baseband,代碼行數:6,代碼來源:payload.py

示例13: __init__

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def __init__(self, words, header=None, *, sample_shape=(1,), bps=2,
                 fanout=1, magnitude_bit=None, complex_data=False):
        if header is not None:
            magnitude_bit = header['magnitude_bit']
            bps = 2 if magnitude_bit.any() else 1
            ta = header.track_assignment
            if bps == 1 or np.all(magnitude_bit[ta] == [False, True]):
                magnitude_bit = None
            else:
                magnitude_bit = (np.packbits(magnitude_bit)
                                 .view(header.stream_dtype).item())

            ntrack = header.ntrack
            fanout = header.fanout
            sample_shape = (ntrack // (bps * fanout),)
            self._nbytes = header.payload_nbytes
        else:
            ntrack = sample_shape[0] * bps * fanout
            magnitude_bit = None

        self._dtype_word = MARK4_DTYPES[ntrack]
        self.fanout = fanout
        super().__init__(words, sample_shape=sample_shape,
                         bps=bps, complex_data=complex_data)
        self._coder = (self.sample_shape.nchan,
                       (self.bps if magnitude_bit is None else magnitude_bit),
                       self.fanout) 
開發者ID:mhvk,項目名稱:baseband,代碼行數:29,代碼來源:payload.py

示例14: _pandas_to_bucket

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def _pandas_to_bucket(df, symbol, initial_image):
        rtn = {SYMBOL: symbol, VERSION: CHUNK_VERSION_NUMBER, COLUMNS: {}, COUNT: len(df)}
        end = to_dt(df.index[-1].to_pydatetime())
        if initial_image:
            if 'index' in initial_image:
                start = min(to_dt(df.index[0].to_pydatetime()), initial_image['index'])
            else:
                start = to_dt(df.index[0].to_pydatetime())
            image_start = initial_image.get('index', start)
            rtn[IMAGE_DOC] = {IMAGE_TIME: image_start, IMAGE: initial_image}
            final_image = TickStore._pandas_compute_final_image(df, initial_image, end)
        else:
            start = to_dt(df.index[0].to_pydatetime())
            final_image = {}
        rtn[END] = end
        rtn[START] = start

        logger.warning("NB treating all values as 'exists' - no longer sparse")
        rowmask = Binary(lz4_compressHC(np.packbits(np.ones(len(df), dtype='uint8')).tostring()))

        index_name = df.index.names[0] or "index"
        if PD_VER < '0.23.0':
            recs = df.to_records(convert_datetime64=False)
        else:
            recs = df.to_records()

        for col in df:
            array = TickStore._ensure_supported_dtypes(recs[col])
            col_data = {
                DATA: Binary(lz4_compressHC(array.tostring())),
                ROWMASK: rowmask,
                DTYPE: TickStore._str_dtype(array.dtype),
            }
            rtn[COLUMNS][col] = col_data
        rtn[INDEX] = Binary(
            lz4_compressHC(np.concatenate(
                ([recs[index_name][0].astype('datetime64[ms]').view('uint64')],
                 np.diff(
                     recs[index_name].astype('datetime64[ms]').view('uint64')))).tostring()))
        return rtn, final_image 
開發者ID:man-group,項目名稱:arctic,代碼行數:42,代碼來源:tickstore.py

示例15: test_packbits

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import packbits [as 別名]
def test_packbits():
    # Copied from the docstring.
    a = [[[1, 0, 1], [0, 1, 0]],
         [[1, 1, 0], [0, 0, 1]]]
    for dt in '?bBhHiIlLqQ':
        arr = np.array(a, dtype=dt)
        b = np.packbits(arr, axis=-1)
        assert_equal(b.dtype, np.uint8)
        assert_array_equal(b, np.array([[[160], [64]], [[192], [32]]]))

    assert_raises(TypeError, np.packbits, np.array(a, dtype=float)) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:13,代碼來源:test_packbits.py


注:本文中的numpy.packbits方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。