Python PIL彩色图像转灰度图像

1. PIL彩色图像转灰度图像

  PIL彩色图像转灰度图像只需要调用函数 transforms.Grayscale(1)  即可。需要注意的是PIL打开的图像是RGB格式的,一般是三通道,转为灰度图像后,变为一通道。

  转换原理,采用的 ITU-R 601-2 luma 原理来转换的,L = R * 299/1000 + G * 587/1000 + B * 114/1000,下取整,小数被省略,跟OpenCV有区别,OpenCV保留小数位。

  小生就不多言了,客官请下观~~。

2. 例子

2.1 Code

 1 import numpy as np
 2 import torchvision.transforms as transforms
 3 from PIL import Image
 4 
 5 
 6 def image_RGB2Gray():
 7     # 图片路径,相对路径
 8     image_path = "./fusion_datasets/1.jpg"
 9     # 读取图片
10     image = Image.open(image_path)
11     # 输出维度
12     print("RGB图像的维度:", np.array(image).shape)
13     # 显示原图
14     image.show()
15     # RGB转换我灰度图像
16     image_transforms = transforms.Compose([
17         transforms.Grayscale(1)
18     ])
19     image = image_transforms(image)
20     # 输出灰度图像的维度
21     print("灰度图像维度: ", np.array(image).shape)
22     # 显示灰度图像
23     image.show()
24 
25 
26 if __name__ == '__main__':
27     image_RGB2Gray()

2.2 结果显示

    转换前后的维度变换,开始是3通道的(height, width, channel),转为灰度图像后维度为1通道,1被省略显示。

        

   哇哦,有木有觉得灰度图像的girl好冷艳,太爱了(#^.^#)(#^.^#)!  

       

 3. 总结

  努力去爱周围的每一个人,付出,不一定有收获,但是不付出就一定没有收获! 给街头卖艺的人零钱,不和深夜还在摆摊的小贩讨价还价。愿我的博客对你有所帮助(*^▽^*)(*^▽^*)!

  如果客官喜欢小生的园子,记得关注小生哟,小生会持续更新(#^.^#)(#^.^#)!

  

原文地址:https://www.cnblogs.com/haifwu/p/12855563.html