basicsr.utils.color_util¶
- basicsr.utils.color_util.bgr2ycbcr(img, y_only=False)[source]¶
Convert a BGR image to YCbCr image.
The bgr version of rgb2ycbcr. It implements the ITU-R BT.601 conversion for standard-definition television. See more details in https://en.wikipedia.org/wiki/YCbCr#ITU-R_BT.601_conversion.
It differs from a similar function in cv2.cvtColor: BGR <-> YCrCb. In OpenCV, it implements a JPEG conversion. See more details in https://en.wikipedia.org/wiki/YCbCr#JPEG_conversion.
- Parameters:
img (ndarray) – The input image. It accepts: 1. np.uint8 type with range [0, 255]; 2. np.float32 type with range [0, 1].
y_only (bool) – Whether to only return Y channel. Default: False.
- Returns:
- The converted YCbCr image. The output image has the same type
and range as input image.
- Return type:
ndarray
- basicsr.utils.color_util.rgb2ycbcr(img, y_only=False)[source]¶
Convert a RGB image to YCbCr image.
This function produces the same results as Matlab’s rgb2ycbcr function. It implements the ITU-R BT.601 conversion for standard-definition television. See more details in https://en.wikipedia.org/wiki/YCbCr#ITU-R_BT.601_conversion.
It differs from a similar function in cv2.cvtColor: RGB <-> YCrCb. In OpenCV, it implements a JPEG conversion. See more details in https://en.wikipedia.org/wiki/YCbCr#JPEG_conversion.
- Parameters:
img (ndarray) – The input image. It accepts: 1. np.uint8 type with range [0, 255]; 2. np.float32 type with range [0, 1].
y_only (bool) – Whether to only return Y channel. Default: False.
- Returns:
- The converted YCbCr image. The output image has the same type
and range as input image.
- Return type:
ndarray
- basicsr.utils.color_util.rgb2ycbcr_pt(img, y_only=False)[source]¶
Convert RGB images to YCbCr images (PyTorch version).
It implements the ITU-R BT.601 conversion for standard-definition television. See more details in https://en.wikipedia.org/wiki/YCbCr#ITU-R_BT.601_conversion.
- Parameters:
img (Tensor) – Images with shape (n, 3, h, w), the range [0, 1], float, RGB format. y_only (bool): Whether to only return Y channel. Default: False.
- Returns:
converted images with the shape (n, 3/1, h, w), the range [0, 1], float.
- Return type:
(Tensor)
- basicsr.utils.color_util.ycbcr2bgr(img)[source]¶
Convert a YCbCr image to BGR image.
The bgr version of ycbcr2rgb. It implements the ITU-R BT.601 conversion for standard-definition television. See more details in https://en.wikipedia.org/wiki/YCbCr#ITU-R_BT.601_conversion.
It differs from a similar function in cv2.cvtColor: YCrCb <-> BGR. In OpenCV, it implements a JPEG conversion. See more details in https://en.wikipedia.org/wiki/YCbCr#JPEG_conversion.
- Parameters:
img (ndarray) – The input image. It accepts: 1. np.uint8 type with range [0, 255]; 2. np.float32 type with range [0, 1].
- Returns:
- The converted BGR image. The output image has the same type
and range as input image.
- Return type:
ndarray
- basicsr.utils.color_util.ycbcr2rgb(img)[source]¶
Convert a YCbCr image to RGB image.
This function produces the same results as Matlab’s ycbcr2rgb function. It implements the ITU-R BT.601 conversion for standard-definition television. See more details in https://en.wikipedia.org/wiki/YCbCr#ITU-R_BT.601_conversion.
It differs from a similar function in cv2.cvtColor: YCrCb <-> RGB. In OpenCV, it implements a JPEG conversion. See more details in https://en.wikipedia.org/wiki/YCbCr#JPEG_conversion.
- Parameters:
img (ndarray) – The input image. It accepts: 1. np.uint8 type with range [0, 255]; 2. np.float32 type with range [0, 1].
- Returns:
- The converted RGB image. The output image has the same type
and range as input image.
- Return type:
ndarray