​通道分离与滤镜fromPILimportImage,ImageFilter ​ im1Image.open(kfc-1.jpg)im2Image.open(kfc-2.jpg).resize(im1.size)​# 通道分离与重组r1,g1,b1im1.split()r2,g2,b2im2.split()mergedImage.merge(RGB,(r1,g2,b1))# R 来自 im1G 来自 im2B 来自 im1merged.show()​# 应用滤镜python blurim1.filter(ImageFilter.GaussianBlur(radius5))blur.show()数学合成运算ImageChopsfromPILimportImage,ImageChops ​ im1Image.open(kfc-1.jpg)im2Image.open(kfc-2.jpg).resize(im1.size)​# 加法加亮叠加区域ImageChops.add(im1,im2).show()​# 减法突出差异ImageChops.subtract(im1,im2).show()​# 取暗 / 取亮ImageChops.darker(im1,im2).show()ImageChops.lighter(im1,im2).show()​# 反相ImageChops.invert(im1).show()​# 差异ImageChops.difference(im1,im2).show()色彩与亮度增强fromPILimportImage,ImageEnhance ​ imImage.open(kfc-1.jpg)​# 色彩增强彩度enhancerImageEnhance.Color(im)enhancer.enhance(2.0).show()# 1 提升彩度1 降低彩度​# 亮度增强enhancerImageEnhance.Brightness(im)enhancer.enhance(1.5).show()# 1 更亮1 更暗​# 对比度增强enhancerImageEnhance.Contrast(im)enhancer.enhance(1.8).show()绘制基本图形与文本fromPILimportImage,ImageDraw,ImageFont ​# 新建画布canvasImage.new(RGB,(300,200),colorwhite)drawImageDraw.Draw(canvas)​# 绘制矩形、椭圆、线条draw.rectangle((20,20,120,80),outlinered,fillblue)draw.ellipse((150,20,280,100),outlinegreen,fillNone)draw.line((0,199,299,0),fillblack,width2)​# 绘制文字fontImageFont.truetype(arial.ttf,size24)draw.text((30,120),Hello, Pillow!,fontfont,fillpurple)​ canvas.show()ImageDraw.Draw所有绘制动作都发生在同一个 canvas 上文字需要指定 ImageFont.truetype 字体文件