在Python中扁平化RGB图像

1 投票
1 回答
17605 浏览
提问于 2025-04-17 20:14

我正在读取一张RGB图像,代码如下:

  scipy.misc.imread()

我想把这个数组变成一维的,也就是从每个颜色通道(红色、绿色、蓝色)中选一个元素,比如对于像素0和像素1,依次取它们的RGB值。

谢谢!

1 个回答

6

看起来在 scipy.misc 里没有 read 这个东西。你是不是想说 imread?如果是的话,它会给你一个 numpy 数组,这个数组有一个叫 flatten 方法

例子:

>>> from scipy.misc import imread
>>> img = imread("test.jpg")
0: array([[[135, 130, 136],
        [139, 134, 140],
        [132, 127, 133],
        ...

>>> img.flatten()
1: array([135, 130, 136, ..., 162, 160, 165], dtype=uint8)

撰写回答