目录
1.简介
这是一篇介绍使用Pillow库实现把图像转为灰度图的文章。
欢迎访问我的CSDN主页:
一只程序猿子的个人主页https://blog.csdn.net/spx_0108
2.技术介绍
Pillow是Python图像处理库的一个分支,它提供了许多图像处理的功能,包括将图像转为灰度图的功能。
在Pillow中,将图像转为灰度图是通过将彩色图像中的每个像素的RGB值取平均值来实现的。假设一个像素有三个通道:红色、绿色和蓝色,RGB值分别为(r, g, b),那么转换为灰度图时,该像素的灰度值就是 (r + g + b) / 3。
具体实现时,可以通过Pillow的convert()
方法将图像转为灰度图。该方法创建一个新的灰度图像对象,在新的图像对象中,每个像素的RGB值都被赋为它在原图像中相应像素的灰度值。灰度图像只有一个通道,每个像素的值在0到255之间,表示不同的灰度级别。在此基础上,可以进一步对灰度图像进行各种图像处理操作。
3.功能实现
代码:
from PIL import Image
import os
# 源图片路径
src_path = "../data/rose.jpg"
# 目标图片路径
dst_path = os.path.join("../data", "example_gray.jpg")
# 打开源图片
src_image = Image.open(src_path)
# 将RGB图片转为灰度图
gray_image = src_image.convert("L")
# 保存灰度图
gray_image.save(dst_path)
# 显示灰度图
gray_image.show()
4.效果图
(1)原图:
(2)灰度图: