一.前言:
pillow库是python中经常使用的图像处理库,其中包含了很多的图像处理方法。RGB图像是我们经常使用的图像,常常需要对RGB图像进行处理,或者获取图像的一些基本信息。 pillow库学习记录!
二.直接上代码,带注释:
1.图像信息获取
im = Image.open("img/hi.jpg")
print(im.format, im.size, im.mode)
im.show()
2.图像格式转换 例如:jpg 转换为 png,是通过改变文件后缀来实现的,有一点low。
file = "文件名称"
outfile = file + '.jpg'
3.图像裁剪粘贴 剪辑和粘贴使用的坐标系,坐标原点都在左上角。
box = (100, 100, 400, 400)
region = im.crop(box)
region = region.transpose(Image.ROTATE_90)
im.paste(region, box)
4.图像通道分离与合并
r, g, b = im.split()
im = Image.merge('RGB', (g, b, r))
5.空间几何变换、缩放、旋转rotate和transpose都能实现,transpose函数可以指定旋转轴为水平方向还是垂直方向
im.transpose(Image.FLIP_LEFT_RIGHT)
6.颜色空间变换和图像增强
im = im.convert("L")
out = im.point(lambda i: i * 1.2)
source = im.split()
R, G, B = 0, 1, 2
mask = source[R].point(lambda i: i < 100 and 255)
out = source[G].point(lambda i: i * 0.7)
source[G].paste(out, None, mask)
三2.总结:
1.其中重要的是查看图像的信息,图像的宽高(通过代码批量查看一系列图像的大小) 2.图像的模型,将图像的每个通道值分离出来,单独对每个通道进行处理,进行图像增强 3.结合numpy库中的array()函数将图像转化为矩阵
|