有人能告诉我如何将彩色图像转换为(r1, g1, b1; r2, g2, b2; ...)
的单行NumPy数组吗?
到目前为止,我已经将我的图像加载到我的图像中,尺寸为512x512px到(512,512,3)numpy数组。现在我想将其转换为(1 x 786432)数组。
答案 0 :(得分:1)
ndarray.flatten()
应该这样做:
In [15]: image = np.arange(4*4*3).reshape((4, 4, 3))
In [16]: image
Out[16]:
array([[[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11]],
[[12, 13, 14],
[15, 16, 17],
[18, 19, 20],
[21, 22, 23]],
[[24, 25, 26],
[27, 28, 29],
[30, 31, 32],
[33, 34, 35]],
[[36, 37, 38],
[39, 40, 41],
[42, 43, 44],
[45, 46, 47]]])
In [17]: image.flatten()
Out[17]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47])
答案 1 :(得分:1)