Python库 - PIL

PIL(Python Imaging Library) 是一个强大的图像处理库,为Python提供了图像处理的功能。PIL库后来被Pillow项目继承和扩展,Pillow是PIL的一个友好分支,提供了更多的功能和更好的兼容性。

安装PIL库

首先,需要安装Pillow库,因为PIL库已经不再维护。可以使用pip来安装Pillow:

bash 复制代码
pip install Pillow

基本图像操作

打开图像

可以使用Image.open()函数来打开一个图像文件:

python 复制代码
from PIL import Image

# 打开图像文件
image = Image.open('path_to_image.jpg')

# 显示图像
image.show()
保存图像

可以使用save()方法来保存图像:

python 复制代码
# 保存图像
image.save('new_image.png')
获取图像信息

可以获取图像的格式、大小和模式等信息:

python 复制代码
# 获取图像格式
print(image.format)  # 输出: JPEG

# 获取图像大小
print(image.size)   # 输出: (width, height)

# 获取图像模式
print(image.mode)   # 输出: RGB

图像处理

裁剪图像

可以使用crop()方法来裁剪图像:

python 复制代码
# 定义裁剪区域 (left, upper, right, lower)
box = (100, 100, 400, 400)
region = image.crop(box)
region.show()
调整图像大小

可以使用resize()方法来调整图像大小:

python 复制代码
# 调整图像大小
new_size = (600, 600)
resized_image = image.resize(new_size)
resized_image.show()
旋转图像

可以使用rotate()方法来旋转图像:

python 复制代码
# 旋转图像
rotated_image = image.rotate(45)
rotated_image.show()
图像滤镜

可以使用ImageFilter模块来应用各种滤镜:

python 复制代码
from PIL import ImageFilter

# 应用模糊滤镜
blurred_image = image.filter(ImageFilter.BLUR)
blurred_image.show()

图像合成

可以使用paste()方法来合成图像:

python 复制代码
# 打开另一张图像
logo = Image.open('path_to_logo.png')

# 合成图像
image.paste(logo, (100, 100))
image.show()

图像转换

可以使用convert()方法来转换图像模式:

python 复制代码
# 转换为灰度图像
gray_image = image.convert('L')
gray_image.show()

示例:创建缩略图

下面是一个创建缩略图的示例:

python 复制代码
# 创建缩略图
image.thumbnail((128, 128))
image.show()

相关推荐
恶霸不委屈6 分钟前
重新定义健康监护!基于DeepSeek的人体生理状况智能检测装置技术解析
人工智能·python·deepseek·生理监测
唐人街都是苦瓜脸25 分钟前
Java中常见的设计模式
java·开发语言·设计模式
大锦终25 分钟前
【C++】模板进阶
c语言·开发语言·数据结构·c++
你是理想25 分钟前
java基础多态------面试八股文
java·开发语言·面试
我感觉。27 分钟前
Anaconda环境管理及 pycharm、jupyter notebook 的配置
开发语言·pytorch·python·深度学习
Code_流苏27 分钟前
《Python星球日记》第22天:NumPy 基础
python·numpy·多维数组·python数据分析·向量化计算
向宇it27 分钟前
【unity游戏开发入门到精通——动画篇】Animator反向动力学(IK)
开发语言·unity·c#·编辑器·游戏引擎
returnShitBoy30 分钟前
Swift 的主要特点和优点或缺点是什么?
开发语言·ios·swift
jianshuilan_061338 分钟前
数组 array
java·开发语言
程序员一诺38 分钟前
【Flask开发】嘿马文学web完整flask项目第4篇:4.分类,4.分类【附代码文档】
后端·python·flask·框架