Python图像处理:利用PIL实现图像缩放、旋转与翻转

江屿
江屿
发布时间:2026-10-11 | 2人浏览过
原创

本文介绍如何使用Python的PIL库对图像进行几何变换。通过Image类的resize()、rotate()和transpose()方法,实现图像的缩放、逆时针旋转及上下左右翻转。文章包含完整的代码示例,展示如何读取图像并执行具体的变换操作,适用于基础的图像处理需求。

图像几何变换基础

在Python图像处理中,几何变换是常见操作,主要包括图像的缩放、旋转和翻转。Python的PIL(Pillow)库提供了Image类,该类封装了多种几何变换接口函数,使得图像操作变得简单直观。

图像缩放:resize()方法

图像缩放通过调用Image类的resize()成员函数实现。该方法接受一个元组作为参数,指定缩放后的图像尺寸(宽, 高)。

#-*- coding: UTF-8 -*-
from PIL import Image
#读取图像
im = Image.open("lenna.jpg")
im.show()
#原图像缩放为128x128
im_resized = im.resize((128, 128))
im_resized.show()

图像旋转:rotate()方法

图像旋转使用rotate()成员函数。该函数的入参指定逆时针旋转的角度(以度为单位)。

#-*- coding: UTF-8 -*-
from PIL import Image
#读取图像
im = Image.open("lenna.jpg")
im.show()
# 指定逆时针旋转的角度
im_rotate = im.rotate(45)
im_rotate.show()

图像翻转:transpose()方法

图像翻转通过transpose()成员函数实现,其入参指定具体的变换方式。该函数支持多种标准的翻转和旋转操作:

  • 上下翻转:使用Image.FLIP_TOP_BOTTOM
  • 左右翻转:使用Image.FLIP_LEFT_RIGHT
  • 逆时针90度旋转:使用Image.ROTATE_90
  • 逆时针180度旋转:使用Image.ROTATE_180
  • 逆时针270度旋转:使用Image.ROTATE_270

需要注意的是,transpose()在实现旋转效果时,其结果与rotate()方法类似,但参数传递方式不同。

out = im.transpose(Image.FLIP_LEFT_RIGHT)
out = im.transpose(Image.FLIP_TOP_BOTTOM)
out = im.transpose(Image.ROTATE_90)
out = im.transpose(Image.ROTATE_180)
out = im.transpose(Image.ROTATE_270)

总结

通过上述示例,我们展示了如何利用Python的PIL库轻松实现图像的缩放、旋转和翻转。这些操作是图像处理中的基础技能,掌握它们有助于更灵活地处理图像数据。

以上就是Python图像处理之图像的缩放、旋转与翻转实现方法示例的详细内容,更多关于Python图像处理PIL库的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表