- PIL库是python语言第三方库,需要通过pip工具安装,安装库的名字是pillow。
PIL库支持图像存储,显示和处理,它能够处理几乎所有图片格式,可以完成对图像的缩放,裁剪,叠加以及向图像添加线条,图像和文字等操作。
功能需求:
- 图像归档:对图像进行批处理,生成图像预览,图像格式转换等。
- 图像处理:图像基本处理,像素处理,颜色处理等。
- PIL库Image类解析
导入方法:from PIL import Image
要加载一个图像文件,最简单的形式如下,之后所有操作对im起作用
from PIL import Image
im=Image.open("H:\\谷歌下载\\b.jpg")
常用属性:
- format:源文件的文件格式。如果是由PIL创建的图像,则其文件格式为None。
- mode:图像的模式。这个字符串表明图像所使用像素格式。该属性典型的取值为“1”,“L”,“RGB”或“CMYK”。
- size:图像的尺寸,按照像素数计算。它的返回值为宽度和高度的二元组(width, height)。
- palette:颜色调色板表格。如果图像的模式是“P”,则返回ImagePalette类的实例;否则,将为None。
微实例:
from PIL import Image
im=Image.open("H:\\谷歌下载\\b.jpg")
print(im.format,im.size,im.mode)
微实例:
交换图像的颜色。可以通过分离RGB图片的3个颜色通道实现颜色互换。
from PIL import Image
im=Image.open("H:\\谷歌下载\\b.jpg")
r,g,b=im.split()
om=Image.merge("RGB",(b,g,r))
om.save("H:\\谷歌下载\\b.jpg")
交换前:
交换后:
- PIL库ImageFilter类解析
- BLUR:模糊滤镜。会使图片较原先的模糊一些。
- CONTOUR:等高线。也就是轮廓滤波,将图像中的轮廓信息提取出来。
- DETALL:细节。也就是细节增强滤波,它会显化图片中细节。
- EDGE_ENHANCE:边缘强化。边缘增强滤波,突出、加强和改善图像中不同灰度区域之间的边界和轮廓的图像增强方法。经处理使得边界和边缘在图像上表现为图像灰度的突变,用以提高人眼识别能力。
- EDGE_ENHANCE_MORE :边缘更强。深度边缘增强滤波,会使得图像中边缘部分更加明显。
- EMBOSS :浮雕。浮雕滤波,会使图像呈现出浮雕效果。
- FIND_EDGES :边缘查找。寻找边缘信息的滤波,会找出图像中的边缘信息。
- SMOOTH :光滑。平滑滤波,突出图像的宽大区域、低频成分、主*分或抑制图像噪声和干扰高频成分,使图像亮度平缓渐变,减小突变梯度,改善图像质量。
- SMOOTH_MORE:更加光滑。深度平滑滤波,会使得图像变得更加平滑。
- SHARPEN:锐化。锐化滤波,补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰。
微实例:
from PIL import Image
from PIL import ImageFilter
im=Image.open("H:\\谷歌下载\\b.jpg")
om=im.filter(ImageFilter.CONTOUR)
om.save("H:\\谷歌下载\\b.jpg")
处理后: