我知道我们可以使用PIL
或PILLOW
将RGB图像转换为灰度。我们可以通过导入Image
来完成此操作。可用于执行此操作的一种方法如下。
from PIL import Image
img=Image.open('Sample.jpg').convert('LA')
img.save('greyscale.png')
我们可以在不使用python包的情况下将RGB图像转换为灰度吗?我想这样学习。任何帮助,我该怎么做?
答案 0 :(得分:1)
如果您使用Pillow从RGB图像查看数据,您将获得3个值的turple,如果您在RGBA模式下读取,则为4。在灰度(L)中,您只有1个值。使用Python,你有很多库可以将RGB转换为L,并且它们有不同的方法/方法。要将RGB转换为L,您需要使用RGB的总和并使用像
这样的manys公式 (max(R, G, B) + min(R, G, B)) / 2 #lightness method
(R + G + B) / 3 # average method
0.21 R + 0.72 G + 0.07 B # luminosity method
但要创建一个没有lib的图像我不知道,因为我创建了一个使用Pillow绘制图像的方法