使用
将PIL图像转换为numpy数组时image = Image.open(file_path)
image_array = numpy.array(image)
有时我会得到一个尺寸等于图像尺寸的二维数组。其他时候我得到一个3D数组,每个条目都是一个像素数组(即[RRR,GGG,BBB])。有时我得到一个3D数组,每个条目都是一个有4个值的数组(即[RRR,GGG,BBB,XXX])。是什么决定了numpy阵列的形状?如果它是2D数组,那么条目代表什么?
答案 0 :(得分:0)
回答了我自己的问题:
numpy数组的形状由PIL图像的模式决定。可以找到完整的模式列表here。当图像的模式为1,L或P时,将创建一个2D数组。否则将创建一个3D数组,其值与模式所代表的值类似。