1

我在python中使用PIL包,我想在将像素转换为灰度后将像素导入矩阵这是我的代码

from PIL import Image
import numpy as np

imo = Image.open("/home/gauss/Pictures/images.jpg")

imo2 = imo.convert('L')
dim = imo2.size
pic_mat = np.zeros(shape=(dim[0] , dim[1]))

for i in range(dim[0]):
    for j in range(dim[1]):
        pic_mat[i][j] = imo2.getpixel((i,j))

我的问题是关于尺寸功能。它通常返回一个元组(a,b),其中a是图片的宽度和图片b的长度,但这并不意味着它a是矩阵中的列并且b是矩阵中的行。我想知道我是否正确设置了矩阵。

谢谢

4

1 回答 1

2

试着做

pic_mat = np.array(imo.convert('L'))

您还可以shape=(dim[0] , dim[1])通过像这样切片大小元组来避免做一些事情shape=dim[:2]:2在这种情况下甚至是多余的,但我喜欢小心......)

于 2013-10-10T21:11:09.487 回答