У меня есть изображение BGRA, сбрасываемое в двоичный файл в следующем формате (серийно): [(b, g, r, a), (b, g, r, a), (b, g, r, a) ...] Я знаю ширину изображения, высоту & # каналов (4, конечно, в этом случае).Чтение двоичных данных как изображение BGRA с NumPy
Я хочу, чтобы прочитать изображение в 4D массив, где первое измерение представляет значения B, и т.д. У меня есть следующий код:
data = np.fromfile(fbin, np.dtype('B'))
print data
Это печатает что-то вроде:
[ 79 90 92 0 80 91 93 0 84 96 98 0 ...]
Где 79 - B, 90 - G, 92 - R и 0 - A и т. Д. Теперь я попытался изменить «данные», как это:
print data.reshape(channels, height, width)
Получили следующее:
[[[ 79 90 92 0 ...] .. [] ..]
[[109 ...] .. [] ..]
[[118 ...] .. [] ..]
[[ 0 ...] .. [] ..]]
Где, как то, что я хотел бы получить что-то вроде этого:
[[[ 79 ...] .. [] ..]
[[90 ...] .. [] ..]
[[92...] .. [] ..]
[[0...] .. [] ..]]