【千律】OpenCV基础:图像颜色空间的转换

环境:Python3.8 和 OpenCV

内容:图像颜色空间的转换

RGB颜色空间 -> XYZ颜色空间

【千律】OpenCV基础:图像颜色空间的转换_第1张图片

XYZ颜色空间 -> RGB颜色空间

【千律】OpenCV基础:图像颜色空间的转换_第2张图片

RGB颜色空间 -> HLS颜色空间【千律】OpenCV基础:图像颜色空间的转换_第3张图片

RGB颜色空间 -> HSV颜色空间

【千律】OpenCV基础:图像颜色空间的转换_第4张图片

import cv2 as cv
import matplotlib.pyplot as plt


# 封装图片显示函数
def image_show(image):
    if image.ndim == 2:
        plt.imshow(image, cmap='gray')
    else:
        image = cv.cvtColor(image, cv.COLOR_BGR2RGB)
        plt.imshow(image)
    plt.show()


if __name__ == '__main__':

    # 读取原图
    img_lenna = cv.imread('lenna.png')

    # 转换为 XYZ 通道
    img_xyz = cv.cvtColor(img_lenna, cv.COLOR_BGR2XYZ)

    # 显示图像
    image_show(img_xyz)

    # 转换为 HSL 通道
    img_hsl = cv.cvtColor(img_lenna, cv.COLOR_BGR2HLS)

    # 显示图像
    image_show(img_hsl)

    # 转换为 HSV 通道
    img_hsv = cv.cvtColor(img_lenna, cv.COLOR_BGR2HSV)

    # 显示图像
    image_show(img_hsv)

你可能感兴趣的:(OpenCV基础,计算机视觉,opencv,python)