Мой ввод:
>>> bayer array([[103], [ 98], [114], [103]], dtype=uint16)
Я использую bayer.tostring () и получаю:
>>> bayer.tostring() b'g\x00b\x00r\x00g\x00'
Я хочу преобразовать байера в 'gbrg'. Как я могу это сделать?
Простой способ - преобразовать в uint8 и затем использовать tobytes():
uint8
tobytes()
>>> bayer.astype(dtype=np.uint8).tobytes() b'gbrg'
Другая альтернатива:
>>> bytes(bayer.ravel().tolist()) b'gbrg'
Или даже:
>>> bayer.tobytes()[::2] b'gbrg'