python中彩色图转灰度图操作

分别使用了Pillow库和OpenCV库读取彩色图像,然后将其转换为灰度图像,并保存为灰度图像文件。
需要注意的是,使用OpenCV库转换颜色空间时,需要指定颜色空间转换代码,例如cv2.COLOR_BGR2GRAY表示将BGR格式的图像转换为灰度格式的图像。
使用openCV库转换彩色图为灰度图
import cv2

# 读取彩色图像文件
img_color = cv2.imread("color_image.jpg")

# 转换为灰度图像
img_gray = cv2.cvtColor(img_color, cv2.COLOR_BGR2GRAY)

# 保存灰度图像文件
cv2.imwrite("gray_image.jpg", img_gray)
使用pillow库转换彩色图为灰度图
from PIL import Image

# 打开彩色图像文件
img_color = Image.open("color_image.jpg")

# 转换为灰度图像
img_gray = img_color.convert("L")

# 保存灰度图像文件
img_gray.save("gray_image.jpg")
单个图片使用不便捷,可以使用Pillow库或OpenCV库将多个彩色图像文件转换为灰度图像文件,并将它们保存在一个文件夹中

使用Pillow库

from PIL import Image
import os

# 指定彩色图像文件夹路径和灰度图像文件夹路径
color_folder = "color_images/"
gray_folder = "gray_images/"

# 如果灰度图像文件夹不存在,则创建
if not os.path.exists(gray_folder):
    os.mkdir(gray_folder)

# 遍历彩色图像文件夹中的所有文件
for filename in os.listdir(color_folder):
    # 打开彩色图像文件
    img_color = Image.open(os.path.join(color_folder, filename))

    # 转换为灰度图像
    img_gray = img_color.convert("L")

    # 保存灰度图像文件
    img_gray.save(os.path.join(gray_folder, filename))

使用OpenCV库

import cv2
import os

# 指定彩色图像文件夹路径和灰度图像文件夹路径
color_folder = "color_images/"
gray_folder = "gray_images/"

# 如果灰度图像文件夹不存在,则创建
if not os.path.exists(gray_folder):
    os.mkdir(gray_folder)

# 遍历彩色图像文件夹中的所有文件
for filename in os.listdir(color_folder):
    # 读取彩色图像文件
    img_color = cv2.imread(os.path.join(color_folder, filename))

    # 转换为灰度图像
    img_gray = cv2.cvtColor(img_color, cv2.COLOR_BGR2GRAY)

    # 保存灰度图像文件
    cv2.imwrite(os.path.join(gray_folder, filename), img_gray)

你可能感兴趣的:(计算机视觉,opencv,图像处理)