我使用以下方式加载了图像:
import numpy as np
from PIL import Image
imag = Image.open("image.png")
I = np.asarray(imag)
形状为 I
是 (951, 1200, 3)
但我想将每个像素大致平均为其亮度值( (r*g*b)/3
)以形成形状 (951, 1200, 1)
。
执行此操作的正确 numpy 运算符是什么?
最佳答案
我认为最简单的方法是使用 Pillow 的内置转换为亮度,如下所示:
import numpy as np
from PIL import Image
# Load image and convert to luminance, and thence to Numpy array
imag = Image.open("image.png").convert('L')
I = np.asarray(imag)
关于python - 将 PIL numpy 3d 数组转换为 2d 亮度值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53363994/