1)彩色图像转换为灰度图像
# 彩色图像转换为灰度图像示例
import cv2
im = cv2.imread("../data/Linus.png", 1)
cv2.imshow("RGB", im) # 在test窗口中显示图像
# 使用cvtColor进行颜色空间变化,COLOR_BGR2GRAY表示BGR to GRAY
img_gray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) # 彩色图像灰度化
cv2.imshow("Gray", img_gray)
cv2.waitKey() # 等待用户按键反馈
cv2.destroyAllWindows() # 销毁所有创建的窗口
执行结果:
2)色彩通道操作
# 色彩通道操作:通道表示为BGR
import numpy as np
import cv2
im = cv2.imread("../data/opencv2.png")
print(im.shape)
cv2.imshow("im", im)
# 取出蓝色通道,当做单通道图像显示
b = im[:, :, 0]
cv2.imshow("b", b)
# 去掉蓝色通道(索引为0的通道)
im[:, :, 0] = 0
cv2.imshow("im-b0", im)
# 去掉绿色通道(索引为1的通道)
im[:, :, 1] = 0
cv2.imshow("im-b0g0", im)
cv2.wait