使用python将图像转换为数字矩阵

使用python将图像转换为数字矩阵,python,arrays,numpy,python-imaging-library,Python,Arrays,Numpy,Python Imaging Library,我有一个图像“felix.png”(280x280) 我把这张图像转换成数字矩阵: from PIL import Image from numpy import array img = Image.open('felix.png') arr = array(img) 这个数组的形状是(280280,3),我想知道为什么每个像素都用三维数组表示 例如,arr[0][0]是[255255255].,因为它是彩色图像。第三个维度是颜色。 因此 如果PIL以RGB格式打开图像 这意味着点(x

我有一个图像“felix.png”(280x280)

我把这张图像转换成数字矩阵:

from PIL import Image
from numpy import array




img = Image.open('felix.png')
arr = array(img)
这个数组的形状是(280280,3),我想知道为什么每个像素都用三维数组表示


例如,
arr[0][0]
[255255255]
.

,因为它是彩色图像。第三个维度是颜色。 因此

如果PIL以RGB格式打开图像


这意味着点(x,y)处的红色像素为[255,0,0],白色像素为[255,255,255]。

因为它是彩色图像。第三个维度是颜色。 因此

如果PIL以RGB格式打开图像

这意味着点(x,y)处的红色像素为[255,0,0],白色像素为[255,255,255]

r = arr[:,:,0]
g = arr[:,:,1]
b = arr[:,:,2]