一、图像数据的格式
①jpg
支持高级别的压缩,利用部分损耗,使图片变小,方便网络传播。
②png
无损压缩格式,比jpg略大,较好的保存图片画质,支持透明效果。
③gif
动图效果,多帧图像组合到一起形成动画。
④tiff
高画质,无压缩格式。打开速度慢,比jpg、png大十倍。
⑤raw
原始图像数据。打开速度慢,比jpg、png大十倍。
⑥webp
WebP(发音:weppy)是一种同时提供了有损压缩与无损压缩(可逆压缩)的图片文件格式。
二、像素
图像的宽度和高度都是以像素为单位的。
像素是组成图像的最小方块。
这些像素块有颜色位置和色彩值。
三、最简案例
from PIL import Image
#1.打开图片
img = Image.open('1.png')
#2.处理图片
#3.预览、保存
img.show()
img.save('2.png')
四、图像获取
from PIL import Image
#方式1
img = Image.open('1.png')
#方式2
img = Image.new("RGB",(300,300),"green")#模式,大小,颜色
五、图像的色彩模式
L #灰度图像
RGB #彩色图像,红,绿,蓝三个值控制颜色
RGBA #比RGB多了一个alpha值,代表透明度。
六、img对象的属性
①img.format 图像格式
②img.size 图像尺寸
③img.mode 图像的色彩模式
七、img对象的方法
①img.convert() 转换图像模式
img2 = img.convert("L")
②img.resize() 重置尺寸
img2 = img.resize((300,200))
③img.rotate() 旋转图像
img2 = img.rotate(45)#正数:逆时针;负数:顺时针
④img.crop() 截图
img2 = img.crop((100,100,200,200))#左上角坐标,右下角坐标
⑤img.show() 预览
img.show()
⑥img.save()保存
img.save('2.png')
⑦img.filter()#图像滤波
from PIL import ImageFilter
img2 = img.filter(ImageFilter.CONTOUR)#传入滤波方式
BLUR | 模糊效果,使图像较原图模糊一些 |
CONTOUR | 轮廓效果,将图像的轮廓提取出来 |
DETAIL | 细节效果,显化图像中的细节 |
EDGE_ENHANCE | 图像边界加强效果,使图像的边缘部分突出 |
EDGE_ENHANCE_MORE | 使图像的边缘部分更加明显 |
EMBOSS | 图像的雕效果 |
FIND_EDGES | 图像的边界效果 |
SHARPEN | 图像的锐化效果,使图像变得更清晰 |
SMOOTH | 图像的平滑效果,使图像平缓,改善图片质量 |
SMOOTH_MORE | 使图像变得更加平滑 |
八、图像增强功能
from PIL import ImageEnhance
#2.处理图片
img_eh = ImageEnhance.Color(img)
img2 = img_eh.enhance(0.5)#1是正常
ImageEnhance.Color() | 调整图像的彩色 |
ImageEnhance.Contrast() | 调整图像的对比度 |
ImageEnhance.Brightness() | 调整图像的亮度 |
ImageEnhance.Sharpness() | 调整图像的锐度 |