cvtColor
Usage
Converts image color space from one format to another, for example, from BGR (default) to grayscale, RGB, or another. This is important for image processing and computer vision tasks because each color space has unique advantages in specific applications.
Interface
1 | cv2.cvtColor(src, code, dst=None, dstCn=0) |
Parameters
Parameter |
Description |
Value Range |
Input/Output |
|---|---|---|---|
src |
Input image. |
Not null |
Input |
code |
Color conversion code used to specify the conversion type, such as cv2.COLOR_BGR2GRAY, cv2.COLOR_BGR2RGB, cv2.COLOR_RGB2BGR, and cv2.COLOR_GRAY2BGR. |
cv2.COLOR_BGR2GRAY, cv2.COLOR_BGR2RGB, cv2.COLOR_RGB2BGR, cv2.COLOR_GRAY2BGR |
Input |
dst |
(Optional) Output image. A new image is created by default. |
Not null |
Output |
dstCn |
Number of channels of the output image. The default value is 0, indicating that dstCn is automatically determined according to the color conversion code. |
{0, 1, 2, 3, 4} |
Input |
Return Value
- Output image
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 | import numpy as np import cv2 # Load the image. src = np.array([[0, 0, 0, 0, 0], [0, 1, 1, 1, 0], [0, 1, 0, 1, 0], [0, 1, 1, 1, 0], [0, 0, 0, 0, 0]], dtype=np.uint8) # Convert the image from grayscale to BGR. dst = cv2.cvtColor(src[..., None], cv2.COLOR_GRAY2BGR) print(dst) |
Output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | [[[0 0 0] [0 0 0] [0 0 0] [0 0 0] [0 0 0]] [[0 0 0] [1 1 1] [1 1 1] [1 1 1] [0 0 0]] [[0 0 0] [1 1 1] [0 0 0] [1 1 1] [0 0 0]] [[0 0 0] [1 1 1] [1 1 1] [1 1 1] [0 0 0]] [[0 0 0] [0 0 0] [0 0 0] [0 0 0] [0 0 0]]] |