У меня есть трехмерный массив байтов в c #, который я прочитал из растрового изображения:
byte[w, h, 3]
Какой самый простой и более удобный способ преобразования этого массива в 2D (линейную) форму?
byte[w*h, 3]
Другими словами, я хочу сохранить количество каналов (объектов), но в линейной форме (а не в форме квадрата)
Позвольте мне попытаться проиллюстрировать ввод и желаемый вывод:
input:
|(r1,g1,b1) (r2,g2,b2) (r3,g3,b3)|
|(r4,g4,b4) (r5,g5,b5) (r6,g6,b6)|
|(r7,g7,b7) (r8,g8,b8) (r9,g9,b9)|
обратите внимание, что arr [0, 0, 0] = r1, arr [0, 0, 1] = g1, arr [0, 0, 2] =b1 и т. д.
и вывод:
|(r1,g1,b1) (r2,g2,b2) (r3,g3,b3) (r4,g4,b4) (r5,g5,b5) (r6,g6,b6) ...|