Python图像处理 PIL中convert ( ) 函数原理

  • Post author:
  • Post category:python



Python图像处理 PIL中convert(‘L’)函数原理

1. img = img.convert()

PIL有九种不同模式: 1,L,P,RGB,RGBA,CMYK,YCbCr,I,F。

1.1 img.convert(‘1’)

为二值图像,非黑即白。每个像素用8个bit表示,0表示黑,255表示白。

1.1.1 Code

1 from PIL import Image
2 
3 
4 def convert_1():
5     image = Image.open("D:/pytorch_code/pytorch_study/fusion_datasets/1.jpg")
6     image_1 = image.convert('1')
7     image.show()
8     image_1.show()

1.1.2 结果显示


1.2 img.convert(‘L’)

为灰度图像,每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。

转换公式:L = R * 299/1000 + G * 587/1000+ B * 114/1000。

1.2.1 Code

1 from PIL import Image
2 
3 
4 def convert_L():
5     image = Image.open("D:/pytorch_code/pytorch_study/fusion_datasets/1.jpg")
6     image_L = image.convert('L')
7     image.show()
8     image_L.show()

1.2.2 结果显示


1.3 img.convert(‘P’)

1.3.1 Code

1 from PIL import Image
2 
3 
4 def convert_P():
5     image = Image.open("D:/pytorch_code/pytorch_study/fusion_datasets/1.jpg")
6     image_P = image.convert('P')
7     image.show()
8     image_P.show()

1.3.2 结果显示


1.4 其他

其他几个不做说明,宝宝们根据需要使用哈O(∩_∩)O!


原文:

(http://cnblogs.com/haifwu/p/12825741.html)