1.首先需要导入Image
from PIL import Image
2.读取一张图片
im=Image.open( ' /home.picture/test.jpg' )
3.显示一张图片
im.show()
4.保存一张图片
im.save( 'save.gif ' , GIF)#把图像保存为gif的格式
5.创建新图片:
Image.new(mode,size)
Image.new(mdoe,size,color)
举个例子:
Newlmg=Image.new('RGBA',(640,480),(0,255,0))
newimg.save('newimg.png','PNG')
6.两张图片相加
Image.blend(img1,img2,alpha)#其中alpha指的是img1和img2相加的比例参数
7.点操作
Im.point(function)#对图像中的每个点执行函数function
举个例子:out=im.point(lambda i:i*1.5)#对于图片中的像素进行1.5倍的加强。(对于lambda函数输入是i,而输出是i*1.5)
8.查看图像信息
im.format,im.size.im.mode
9.图片裁剪
box=(100,100,500,500)
设置要裁剪的区域
region=im.crop(box)#region是一个新图像的对象
10.图像黏贴(合并)
im.paste(region,box)#黏贴box大小的region到原先图片中。
11.同道分离
r,g,b=im.split()#分割成三个R,G,B通道,次时的r,g,b分别为三个图像的对象。
12.合并通道
im=Image.merge('RGB',(b,g,r))#将b,r两个通道进行翻转
13.改变图像的的大小
out=im.resize((128,128))
14.图像翻转
out=img.rotate(45)
15图像转换
左右转换:out=im.transpose(Image.FLIP_LEFT_RIGHT)
上下对换:out=im.transpose(Image.FLIP_TOP_BOTTOM)
16.图像;类型的转换:
im=im.convert('RGBA')
17.获取某个像素位置的值:
im.getxel((4,4))
18.写某个像素的值
im.putpixel((4,4),(255,0,0))
19.Image中对于图像的读取和保存
img_contents=Image.open(img_path)
img_contents.save(saved_dir+"/img_processed/"+img)
20对图片进行resize
img = img.resize((width, height),Image.ANTIALIAS)
21.图片变换。
out = image.resize((128, 128))
out = image.rotate(45) # 逆时针旋转 45 度角。
out = image.transpose(Image.FLIP_LEFT_RIGHT) # 左右对换。
out = image.transpose(Image.FLIP_TOP_BOTTOM) # 上下对换。
out = image.transpose(Image.ROTATE_90) # 旋转 90 度角。