谁能帮我使用opencv Python将RGB颜色空间图像转换为YUV颜色空间图像和YCbCr颜色空间图像?
问问题
11074 次
1 回答
10
用于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)
如果您将图像读入BGR
空间,则使用cv2.COLOR_BGR2YUV
and 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)
如果您将图像读入RGB
空间,则使用cv2.COLOR_RGB2YUV
and cv2.COLOR_RGB2YCrCb
。
这是一个示例图像(在 BGR-HSV-YUV-YCRCB 颜色空间中):
于 2018-01-06T07:23:27.200 回答