Python 图像处理库Pillow

发布于:2025-07-24 ⋅ 阅读:(24) ⋅ 点赞:(0)

Python的Pillow库是PIL(Python Imaging Library)的一个分支,它为Python提供了强大的图像处理能力。Pillow允许用户打开、操作和保存多种图像文件格式。其主要作用包括但不限于以下几个方面:


图像基础操作:可以进行创建、打开、显示、保存图像等基本操作。
图像变换:支持对图像进行缩放、裁剪、旋转、翻转等变换操作。
图像增强:提供调整亮度、对比度、饱和度、锐化等功能来改善图像质量。
滤镜效果:可以应用不同的滤镜效果到图像上,如模糊、轮廓检测等。
绘图功能:支持在图像上绘制线条、矩形、椭圆、多边形等各种形状。
文字处理:能够在图像上添加文本。
颜色模式转换:支持将图像从一种颜色模式转换为另一种,比如RGB转灰度图。
读取和写入多种格式的图像文件:支持如JPEG、PNG、GIF、BMP等多种常见图像格式。

Pillow非常适合需要在程序中处理图像的应用场景,无论是简单的脚本还是复杂的web应用程序。通过使用Pillow,开发者能够轻松地实现图像编辑与处理的功能。

下面仅介绍一个较为简单的功能,更改图片尺寸,需要进行图片处理时可参考官方文档。

代码如下:

# 需要提前安装 pillow 库(pip install pillow)
from PIL import Image


def resize_image(input_path, output_path, width, height):
    """
    调整图片尺寸并保存
    :param input_path: 输入图片路径
    :param output_path: 输出图片路径
    :param width: 目标宽度
    :param height: 目标高度
    """
    try:
        with Image.open(input_path) as img:
            # 使用LANCZOS高质量重采样滤波器(注意LANCZOS所在位置,跟版本可能相关)
            # resized_img = img.resize((width, height), Image.LANCZOS)
            resized_img = img.resize((width, height), Image.Resampling.LANCZOS)
            resized_img.save(output_path)
            print(f"图片已成功调整为 {width}x{height} 并保存至 {output_path}")
    except Exception as e:
        print(f"处理图片时出错: {e}")


# 使用示例(将 input.png 转变为自定义像素(本次是 500* 500)的 output.png)
resize_image("input.png", 'output.png', 500, 500)

运行结果:

原始图片为 180*180 像素:

更改图片像素 500*500 后:


网站公告

今日签到

点亮在社区的每一天
去签到