Python OpenCV:如何将YCbCr转换回RGB?

时间:2018-10-04 01:41:13

标签: python python-3.x opencv

在OpenCV(Python)中,将RGB转换为YCbCr,我们使用:

imgYCC = cv2.cvtColor(img, cv2.COLOR_BGR2YCR_CB)

如果我想回到RGB怎么办?

1 个答案:

答案 0 :(得分:1)

检查docs for color conversions。您可以在Conversion Color Codes上查看所有个可用的颜色转换代码。

对于可用的色彩空间,通常可以两种方式进行转换--- COLOR_BGR2YCrCb(即BGR到YCrCb)和COLOR_YCrCb2BGR(即YCrCb到BGR)。另外,OpenCV使用BGR排序,而不是RGB排序。无论如何,要回答眼前的特定问题,只需使用相反的颜色空间顺序将其转换回去:

img_bgr = cv2.cvtColor(imgYCC, cv2.COLOR_YCrCb2BGR)

注意:cv2.COLOR_YCrCb2BGR等效于cv2.COLOR_YCR_CB2BGR,我只是发现第一个变体更易于阅读。由于进行了这些转换(尤其是在uint8图像上),因此进行了一些四舍五入,因此您不一定会获得 exact 相同的图像。但是,您不应该只希望在一些地点获得1折。