# 1. color space conversion

There are more than 150 OpenCV color space conversion method. But we will study only the two most widely used, BGR↔Gray and BGR↔HSV, BGR and grayscale conversion using cv2.COLOR_BGR2GRAY,
BGR and HSV conversion using cv2.COLOR_BGR2HSV. In the HSV space, H represents hue / chroma range [0,179], S represents the saturation range [0,255], V represents luminance range [0,255]. But different values for different software

### dst = cv.cvtColor( src, code[, dst[, dstCn]] )

#### parameter:

src: an input image: unsigned 8-bit, 16-bit unsigned (... CV_16UC), or a single-precision floating point.

code: conversion mode

dst: the same depth of the original image size of the output image. Can be omitted

dstCn: Standard image channel number, the default is 0, represented by the src and determined code.

#### Print all the code:

```import cv2 as cv

flags = [i for i in dir(cv) if i.startswith('COLOR_')]
print(flags)```

#### Function Description:

This function converts the input image from one color space to another color space.

#### For example

```import matplotlib.pyplot as plt
import cv2

plt.subplot(331), plt.imshow(img_BGR), plt.axis('off'), plt.title('BGR')

img_RGB = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2RGB)
plt.subplot(332), plt.imshow(img_RGB), plt.axis('off'), plt.title('RGB')

img_GRAY = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2GRAY)
plt.subplot(333), plt.imshow(img_GRAY), plt.axis('off'), plt.title('GRAY')

img_HSV = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2HSV)
plt.subplot(334), plt.imshow(img_HSV), plt.axis('off'), plt.title('HSV')

img_YcrCb = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2YCrCb)
plt.subplot(335), plt.imshow(img_YcrCb), plt.axis('off'), plt.title('YcrCb')

img_HLS = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2HLS)
plt.subplot(336), plt.imshow(img_HLS), plt.axis('off'), plt.title('HLS')

img_XYZ = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2XYZ)
plt.subplot(337), plt.imshow(img_XYZ), plt.axis('off'), plt.title('XYZ')

img_LAB = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2LAB)
plt.subplot(338), plt.imshow(img_LAB), plt.axis('off'), plt.title('LAB')

img_YUV = cv2.cvtColor (img_BGR, cv2.COLOR_BGR2YUV)
plt.subplot ( 339), plt.imshow (img_YUV), plt.axis ( ' OFF ' ), plt.title ( ' the YUV ' )
plt.show ()

CV2. imshow ( ' Gray ' , img_GRAY)

K = cv2.waitKey (0)   # is always detected keyboard
IF K == 27:   # press ESC exit
cv2.destroyAllWindows ()```

### Guess you like

Origin www.cnblogs.com/blog-xyy/p/11184703.html
Recommended
Ranking
Daily