OpenCV:颜色空间转换与直方图

83 阅读1分钟

一、颜色空间转换

  • 灰度图像 cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
  • HSV图像 HSV代表色相(Hue)、饱和度(Saturation)和明度(Value) cv2.COLOR_BGR2HSV
  • Lab颜色空间 Lab色彩空间是一种与设备无关的颜色模型,它能够包含更广泛的颜色范围。Lab色彩空间是由国际照明委员会(CIE)在1976年提出的,主要用于改进和替代之前的色彩空间,如RGB和CMYK。 Lab模式包括三个通道:L代表亮度,a代表从绿色到红色的色度变化,b代表从蓝色到黄色的色度变化。 cv2.COLOR_BGR2LAB

二、程序

# -*- coding: utf-8 -*-
"""
Created on Thu May 16 10:05:32 2024

E:\OpenCV\Ky_Cv13.py
"""

import cv2
import matplotlib.pyplot as plt
import numpy as np
 
image=cv2.imread('d:\\OpenCVpic\\Happyfish.jpg')
hsv_image=cv2.cvtColor(image,cv2.COLOR_BGR2HSV)
arrs=cv2.split(hsv_image)
colors=("b","g","r")
p=plt.subplot()
for (arr,color) in zip(arrs,colors):
    hist=cv2.calcHist([arr],[0],None,[256],[0,256])
    p.plot(hist,color=color)
plt.show()

img

图像

img

HSV图像的颜色直方图