Day054: Pillow 模块:图像处理基础

目录

一、安装 Pillow 模块

二、打开和显示图像

1. 打开图像

2. 获取图像信息

三、图像的基本操作

1. 裁剪图像

2. 旋转图像

3. 调整图像大小

4. 转换图像模式

四、图像的绘制和文字添加

1. 绘制图形

2. 添加文字

五、图像的保存

六、实际案例:制作缩略图

1. 打开图像

2. 生成缩略图

3. 保存缩略图

4. 显示缩略图

七、总结


在 Python 的世界里,图像处理是一个非常重要的领域,而 Pillow(Python Imaging Library Fork)作为 Python 的一个强大的图像处理库,为我们提供了丰富的功能和接口,可以轻松地实现图像的打开、显示、编辑、保存等操作。本文将详细介绍 Pillow 模块的基本用法和一些常见的图像处理操作,帮助读者快速掌握图像处理的基础知识。

一、安装 Pillow 模块

在使用 Pillow 之前,我们需要先安装它。可以通过以下命令使用 pip 进行安装:

pip install pillow

安装完成后,我们可以通过以下代码验证是否安装成功:

from PIL import Image

print(Image.__version__)

如果能够正常输出 Pillow 的版本号,则说明安装成功。

二、打开和显示图像

1. 打开图像

使用 Pillow 打开图像非常简单,可以使用 Image.open() 方法:

from PIL import Image

# 打开图像文件
image = Image.open("example.jpg")

# 显示图像
image.show()

在上述代码中,Image.open() 方法用于打开指定路径的图像文件,image.show() 方法会调用系统默认的图像查看器来显示图像。

2. 获取图像信息

打开图像后,我们可以获取图像的一些基本信息,例如尺寸、模式、格式等:

# 获取图像尺寸
print("图像尺寸:", image.size)

# 获取图像模式
print("图像模式:", image.mode)

# 获取图像格式
print("图像格式:", image.format)

三、图像的基本操作

1. 裁剪图像

可以使用 crop() 方法对图像进行裁剪,需要指定一个裁剪区域(左、上、右、下):

# 裁剪图像
cropped_image = image.crop((50, 50, 200, 200))

# 显示裁剪后的图像
cropped_image.show()

2. 旋转图像

使用 rotate() 方法可以对图像进行旋转,可以指定旋转的角度:

# 旋转图像 90 度
rotated_image = image.rotate(90)

# 显示旋转后的图像
rotated_image.show()

3. 调整图像大小

使用 resize() 方法可以调整图像的大小,需要指定新的尺寸(宽度、高度):

# 调整图像大小为 100x100
resized_image = image.resize((100, 100))

# 显示调整大小后的图像
resized_image.show()

4. 转换图像模式

可以使用 convert() 方法将图像转换为不同的模式,例如将彩色图像转换为灰度图像:

# 转换为灰度图像
gray_image = image.convert("L")

# 显示灰度图像
gray_image.show()

四、图像的绘制和文字添加

1. 绘制图形

可以使用 ImageDraw 模块在图像上绘制图形:

from PIL import Image, ImageDraw

# 创建一个空白图像
image = Image.new("RGB", (200, 200), "white")

# 创建一个绘制对象
draw = ImageDraw.Draw(image)

# 绘制一个红色矩形
draw.rectangle((50, 50, 150, 150), fill="red")

# 显示图像
image.show()

2. 添加文字

可以使用 ImageDraw 模块在图像上添加文字:

from PIL import Image, ImageDraw, ImageFont

# 创建一个空白图像
image = Image.new("RGB", (300, 200), "white")

# 创建一个绘制对象
draw = ImageDraw.Draw(image)

# 加载字体(需要指定字体文件路径)
font = ImageFont.truetype("arial.ttf", 20)

# 添加文字
draw.text((50, 50), "Hello, Pillow!", fill="black", font=font)

# 显示图像
image.show()

五、图像的保存

处理完图像后,可以使用 save() 方法将图像保存到文件:

# 保存图像
image.save("output.jpg", "JPEG")

六、实际案例:制作缩略图

1. 打开图像

from PIL import Image

# 打开图像文件
image = Image.open("example.jpg")

2. 生成缩略图

# 生成缩略图(指定最大尺寸为 128x128)
image.thumbnail((128, 128))

3. 保存缩略图

# 保存缩略图
image.save("thumbnail.jpg", "JPEG")

4. 显示缩略图

# 显示缩略图
image.show()

七、总结

Pillow 是一个功能强大的图像处理库,通过本文的介绍,我们了解了如何使用 Pillow 打开、显示、编辑和保存图像,以及如何在图像上绘制图形和添加文字。这些基本操作为我们进一步探索图像处理的高级功能奠定了基础。在实际应用中,Pillow 可以用于各种图像处理任务,如图像的批量处理、图像的特效添加等。希望本文能够帮助读者快速上手 Pillow,开启图像处理的探索之旅。

100天精通Python编程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西攻城狮北

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值