本次的基础:Image图片基本处理库和ImageFilter滤镜库
一、图片处理
代码语言:javascript复制from PIL import Image,ImageFilter
# 1、打开图片
img = Image.open(r'E:pythonmaterialimg1.jpg')
# 2、更改图像模式
img = img.convert('L')
# 3、保存/或展示图片
img.show()
二、缩放图片/滤镜处理
代码语言:javascript复制# 1、打开图片
img = Image.open(r'E:pythonmaterialimg2.jpg')
# 2、获得图片尺寸,size返回宽、高两个参数
w, h = img.size
print(w,h)
# 3、对图片宽高缩放操作
img.thumbnail((w//2, h//2))
# 4、滤镜操作(BlUR均值滤波模糊 CONTOUR找轮廓 FIND_EDGES边缘处理)
img = img.filter(ImageFilter.CONTOUR)
# 5、保存图片
img.save('美女.jpg')
三、图片合成
代码语言:javascript复制# 1、打开被替换的图片
img1 = Image.open(r'E:pythonmaterialimg1.jpg')
# 2、添加位置坐标(规整图片取左上角像素坐标和右下角像素坐标)
box = (100, 128, 400, 572)
# 3、打开替换图片/其他操作,如旋转
img2 = Image.open(r'E:pythonmaterialimg2.jpg')
#img2 = img2.rotate(60) #rotate(逆时针旋转度数)
# 4、控制替换图片大小 resize((横坐标,纵坐标))
tmg_img = img2.resize((box[2]-box[0], box[3]-box[1]))
# 5、粘贴操作 paste(替换的图片,替换的位置坐标)
img1.paste(tmg_img, box)
"""
合成照片(相加) blend(图片一,图片二,合成度)
注意:图片一和图片二尺寸大小必须相同,否则报错。
"""
#img = Image.blend(img1, img2, 0.5)
# 6、保存或展示图片
img1.show()