图片预处理方法
1.from PIL import Image
一.RGB 转换为其他模式图片
打开图片:Image.open('picture_path')
example:
pic = Image.open('1.rgb')
查看图片模式:
example:
pic.mode
查看图像有多少个像素点:pic.size
取像素值:
pic.getpixel((x,y))
得到R,G,B三个通道的像素值如(1,2,10)
图像模式转换:pic.convert('模式')
模式‘1’:二值图像,非黑即白。但是它每个像素用8个bit表示,0表示黑,255表示白,只有1个通道,类似灰度图像,但是像素只有0,255两个可选值,1-244之间的值取不到
模式L”:灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度
在PIL中,从模式“RGB”转换为“L”模式是按照下面的公式转换的:
L = R * 299/1000 + G * 587/1000+ B * 114/1000
模式“P”为8位彩色图像,它的每个像素用8个bit表示,其对应的彩色值是按照调色板查询出来的。
模式“RGBA”为32位彩色图像,它的每个像素用32个bit表示,其中24bit表示红色、绿色和蓝色三个通道,另外8bit表示alpha通道,即透明通道
保存图片:pic.save('name')
显示图片:pic.show()
RGB和RGBA转换不会失真
图片旋转操作:pic.rotate(45) 45度旋转
load : 版本 1.1.6 新添加的。load 返回对象的像素值,可以用来修改像素值。
reference:
1.https://www.2cto.com/kf/201603/492898.html
2.https://www.2cto.com/kf/201603/492895.html
3.https://www.cnblogs.com/way_testlife/archive/2011/04/20/2022997.html
4.http://blog.csdn.net/zywvvd/article/details/72810360