在opencv内,我们使用cv2.cvtColor()函数实现色彩空间的变换,该函数能实现多个色彩空间之间的转换,语法格式如下:
dst = cv2.cvtColor( src, code [, dstCn])
- dst表示输出图像
- src表示原始图像
- code是色彩空间转换码
- dstCn目标图像的通道数
(1)将图像在BGR模式和灰度图像之间相互转换:
import cv2
lena=cv2.imread("C:\\Users\\asus\\Desktop\\logo.png")
gray=cv2.cvtColor(lena,cv2.COLOR_BGR2GRAY)
rgb=cv2.cvtColor(gray,cv2.COLOR_GRAY2BGR)
#===========打印shape===========
print("lena.shape=",lena.shape)
print("gray.shape=",gray.shape)
print("rgb.shape=",rgb.shape)
#===========显示效果===========
cv2.imshow("lena",lena)
cv2.imshow("gray",gray)
cv2.imshow("rgb",rgb)
cv2.waitKey()
cv2.destroyAllWindows()