Python 图像处理库Pillow

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

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

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

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

代码如下:

python 复制代码
# 需要提前安装 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 后:

相关推荐
LDG_AGI几秒前
【推荐系统】深度学习训练框架(六):PyTorch DDP(DistributedDataParallel)数据并行分布式深度学习原理
人工智能·pytorch·分布式·python·深度学习·算法·spark
背心2块钱包邮11 分钟前
第24节——手搓一个“ChatGPT”
人工智能·python·深度学习·自然语言处理·transformer
执笔论英雄12 分钟前
【大模型推理】小白教程:vllm 异步接口
前端·数据库·python
databook17 分钟前
Manim v0.19.1 发布啦!三大新特性让动画制作更丝滑
后端·python·动效
8***235540 分钟前
SQL Server2022版+SSMS安装教程(保姆级)
后端·python·flask
Sally_xy44 分钟前
Python 虚拟环境
开发语言·chrome·python
serve the people1 小时前
tensorflow tf.function 的两种执行模式(计算图执行 vs Eager 执行)的关键差异
人工智能·python·tensorflow
拾贰_C1 小时前
[python ]anaconda
开发语言·python
serve the people1 小时前
tensorflow中的计算图是什么
人工智能·python·tensorflow
子午1 小时前
【动物识别系统】Python+TensorFlow+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习