在Opencv Python中将RGB图像转换为YUV和YCbCr颜色空间图像

Tar*_*ana 0 python opencv image-processing image-preprocessing opencv-python

谁能帮助我使用opencv Python将RGB色彩空间图像转换为YUV色彩空间图像和YCbCr色彩空间图像?

Kin*_*t 金 8

使用cv2.cvtColor(src, code)于色彩空间转换,代码开头COLOR_.

您可以使用它来查找颜色代码.

import cv2
## get all color codes
codes = [x for x in dir(cv2) if x.startswith("COLOR_")]

## print first three color codes
print(codes[:3])
# ['COLOR_BAYER_BG2BGR', 'COLOR_BAYER_BG2BGRA', 'COLOR_BAYER_BG2BGR_EA']

## print all color codes
print(codes)
Run Code Online (Sandbox Code Playgroud)

如果您将图像读入BGR太空,请使用cv2.COLOR_BGR2YUV和cv2.COLOR_BGR2YCrCb:

#cv2.COLOR_BGR2YUV
#cv2.COLOR_BGR2YCrCb

img = cv2.imread("test.png")
yuv = cv2.cvtColor(img, cv2.COLOR_BGR2YUV)
cv2.imwrite("yuv.png", yuv)
Run Code Online (Sandbox Code Playgroud)

如果您将图像读入RGB太空,请使用cv2.COLOR_RGB2YUV和cv2.COLOR_RGB2YCrCb.


这是一个示例图像(在BGR-HSV-YUV-YCRCB颜色空间中):

在此输入图像描述