Python numpy.packbits() Examples
The following are 30
code examples of numpy.packbits().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
numpy
, or try the search function
.

Example #1
Source File: bit_manipulation.py From Steganography with MIT License | 6 votes |
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]
Example #2
Source File: inky212x104.py From inky-phat with MIT License | 6 votes |
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()
Example #3
Source File: test_packbits.py From lambda-packs with MIT License | 6 votes |
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)
Example #4
Source File: reference.py From IkaLog with Apache License 2.0 | 6 votes |
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)
Example #5
Source File: inky.py From inky with MIT License | 6 votes |
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)
Example #6
Source File: test_packbits.py From predictive-maintenance-using-machine-learning with Apache License 2.0 | 6 votes |
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)
Example #7
Source File: test_packbits.py From vnpy_crypto with MIT License | 6 votes |
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)
Example #8
Source File: test_packbits.py From GraphicDesignPatternByPython with MIT License | 6 votes |
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)
Example #9
Source File: test_packbits.py From pySINDy with MIT License | 6 votes |
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)
Example #10
Source File: test_packbits.py From recruit with Apache License 2.0 | 6 votes |
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)
Example #11
Source File: adsb3.py From plumo with BSD 3-Clause "New" or "Revised" License | 6 votes |
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
Example #12
Source File: adsb3.py From plumo with BSD 3-Clause "New" or "Revised" License | 6 votes |
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
Example #13
Source File: test_packbits.py From Mastering-Elasticsearch-7.0 with MIT License | 6 votes |
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)
Example #14
Source File: test_packbits.py From mxnet-lambda with Apache License 2.0 | 6 votes |
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)
Example #15
Source File: world_utils.py From Amulet-Core with MIT License | 6 votes |
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]
Example #16
Source File: test_packbits.py From mxnet-lambda with Apache License 2.0 | 5 votes |
def test_packbits_empty(): shapes = [ (0,), (10, 20, 0), (10, 0, 20), (0, 10, 20), (20, 0, 0), (0, 20, 0), (0, 0, 20), (0, 0, 0), ] for dt in '?bBhHiIlLqQ': for shape in shapes: a = np.empty(shape, dtype=dt) b = np.packbits(a) assert_equal(b.dtype, np.uint8) assert_equal(b.shape, (0,))
Example #17
Source File: load_data_sets.py From alphago_demo with Apache License 2.0 | 5 votes |
def write(self, filename): header_bytes = struct.pack(CHUNK_HEADER_FORMAT, self.data_size, self.board_size, self.input_planes, self.is_test) position_bytes = np.packbits(self.pos_features).tostring() next_move_bytes = np.packbits(self.next_moves).tostring() with gzip.open(filename, "wb", compresslevel=6) as f: f.write(header_bytes) f.write(position_bytes) f.write(next_move_bytes)
Example #18
Source File: ADSB_Encoder.py From ADSB-Out with GNU General Public License v3.0 | 5 votes |
def frame_1090es_ppm_modulate(even, odd): ppm = [ ] for i in range(48): # pause ppm.append( 0 ) ppm.append( 0xA1 ) # preamble ppm.append( 0x40 ) for i in range(len(even)): word16 = numpy.packbits(manchester_encode(~even[i])) ppm.append(word16[0]) ppm.append(word16[1]) for i in range(100): # pause ppm.append( 0 ) ppm.append( 0xA1 ) # preamble ppm.append( 0x40 ) for i in range(len(odd)): word16 = numpy.packbits(manchester_encode(~odd[i])) ppm.append(word16[0]) ppm.append(word16[1]) for i in range(48): # pause ppm.append( 0 ) #print '[{}]'.format(', '.join(hex(x) for x in ppm)) return bytearray(ppm)
Example #19
Source File: mcts1.py From ml-five with MIT License | 5 votes |
def pack_state(self, state): black = np.packbits(state == Board.STONE_BLACK) white = np.packbits(state == Board.STONE_WHITE) empty = np.packbits(state == Board.STONE_EMPTY) image = np.concatenate((black, white, empty)) return bytes(image)
Example #20
Source File: test_packbits.py From pySINDy with MIT License | 5 votes |
def test_unpackbits_large(): # test all possible numbers via comparison to already tested packbits d = np.arange(277, dtype=np.uint8) assert_array_equal(np.packbits(np.unpackbits(d)), d) assert_array_equal(np.packbits(np.unpackbits(d[::2])), d[::2]) d = np.tile(d, (3, 1)) assert_array_equal(np.packbits(np.unpackbits(d, axis=1), axis=1), d) d = d.T.copy() assert_array_equal(np.packbits(np.unpackbits(d, axis=0), axis=0), d)
Example #21
Source File: st7565.py From Pi-ST7565 with MIT License | 5 votes |
def flip(self): """Send back buffer to ST7565 display""" for idx in range(0, self.LCD_PAGE_COUNT): # Home cursor on the page self.move_cursor(1, idx) # Page start row row_start = idx << 3 # Page stop row row_stop = (idx + 1) << 3 # slice page from buffer and pack bits to bytes then send to display self.send_data(np.packbits(self.back_buffer[row_start:row_stop], axis=0).flatten().tolist())
Example #22
Source File: test_packbits.py From predictive-maintenance-using-machine-learning with Apache License 2.0 | 5 votes |
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))
Example #23
Source File: base_leveldb_interface.py From Amulet-Core with MIT License | 5 votes |
def _load_palette_blocks( data, ) -> Tuple[numpy.ndarray, List[amulet_nbt.NBTFile], bytes]: # Ignore LSB of data (its a flag) and get compacting level bits_per_block, data = data[0] >> 1, data[1:] blocks_per_word = 32 // bits_per_block # Word = 4 bytes, basis of compacting. word_count = -( -4096 // blocks_per_word ) # Ceiling divide is inverted floor divide blocks = numpy.packbits( numpy.pad( numpy.unpackbits( numpy.frombuffer( bytes(reversed(data[: 4 * word_count])), dtype="uint8" ) ) .reshape(-1, 32)[:, -blocks_per_word * bits_per_block :] .reshape(-1, bits_per_block)[-4096:, :], [(0, 0), (16 - bits_per_block, 0)], "constant", ) ).view(dtype=">i2")[::-1] blocks = blocks.reshape((16, 16, 16)).swapaxes(1, 2) data = data[4 * word_count :] palette_len, data = struct.unpack("<I", data[:4])[0], data[4:] palette, offset = amulet_nbt.load( buffer=data, compressed=False, count=palette_len, offset=True, little_endian=True, ) return blocks, palette, data[offset:]
Example #24
Source File: reference.py From IkaLog with Apache License 2.0 | 5 votes |
def encode(self, img): """ Encode the image to internal image format. Bits per pixel: 1bit (uint8) Alignment per lines: 0 Alignment of returned image: self._align bytes """ assert img.shape[0] == self._h assert img.shape[1] == self._w img_8b_1d = np.reshape(img, (-1)) img_1b_1d = np.packbits(img_8b_1d) padding_len = self._align - (len(img_1b_1d) % self._align) if padding_len: img_1b_1d_p = np.append(img_1b_1d, self.zeros128[0: padding_len]) else: img_1b_1d_p = img_1b_1d assert len(img_1b_1d_p.shape) == 1 assert img_1b_1d_p.shape[0] >= (self._h * self._w / 8) assert img_1b_1d_p.shape[0] % self._align == 0 # print('encode: %s %s' % (img_1b_1d.shape, img_1b_1d_p.shape)) return img_1b_1d_p
Example #25
Source File: test_packbits.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_unpackbits_large(): # test all possible numbers via comparison to already tested packbits d = np.arange(277, dtype=np.uint8) assert_array_equal(np.packbits(np.unpackbits(d)), d) assert_array_equal(np.packbits(np.unpackbits(d[::2])), d[::2]) d = np.tile(d, (3, 1)) assert_array_equal(np.packbits(np.unpackbits(d, axis=1), axis=1), d) d = d.T.copy() assert_array_equal(np.packbits(np.unpackbits(d, axis=0), axis=0), d)
Example #26
Source File: world_utils.py From Amulet-Core with MIT License | 5 votes |
def encode_long_array(array: numpy.ndarray, dense=True) -> numpy.ndarray: """ Encode an long array (from BlockStates or Heightmaps) :param array: A numpy array of the data to be encoded. :return: Encoded array as numpy array """ array = array.astype(">h") bits_per_entry = max(int(numpy.amax(array)).bit_length(), 2) if not dense: if bits_per_entry == 11: bits_per_entry = 12 # 11 and 12 take up the same amount of space. I don't know if 11 exists any more. bits = numpy.unpackbits(numpy.ascontiguousarray(array[::-1]).view("uint8")).reshape( -1, 16 )[:, -bits_per_entry:] if not dense: entry_per_long = 64 // bits_per_entry if bits.shape[0] % entry_per_long: bits = numpy.pad( bits, [(entry_per_long - (bits.shape[0] % entry_per_long), 0), (0, 0)], "constant", ) bits = numpy.pad( bits.reshape(-1, bits_per_entry * entry_per_long), [(0, 0), (64 - bits_per_entry * entry_per_long, 0)], "constant", ) return numpy.packbits(bits).view(dtype=">q")[::-1]
Example #27
Source File: gen_synthetic_single.py From yolo_v2 with Apache License 2.0 | 5 votes |
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())
Example #28
Source File: test_packbits.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_packbits_very_large(): # test some with a larger arrays gh-8637 # code is covered earlier but larger array makes crash on bug more likely for s in range(950, 1050): for dt in '?bBhHiIlLqQ': x = np.ones((200, s), dtype=bool) np.packbits(x, axis=1)
Example #29
Source File: test_packbits.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_packbits_empty(): shapes = [ (0,), (10, 20, 0), (10, 0, 20), (0, 10, 20), (20, 0, 0), (0, 20, 0), (0, 0, 20), (0, 0, 0), ] for dt in '?bBhHiIlLqQ': for shape in shapes: a = np.empty(shape, dtype=dt) b = np.packbits(a) assert_equal(b.dtype, np.uint8) assert_equal(b.shape, (0,))
Example #30
Source File: test_packbits.py From GraphicDesignPatternByPython with MIT License | 5 votes |
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))