1.读取图像
import cv2 # 数据读取格式是BGR
import matplotlib.pyplot as plt
import numpy as np
# 1.读取图像 cv2.IMREAD_COLOR 彩色图像 cv2.IMREAD_GRAYSCALE 灰度图像
img = cv2.imread("C:\\Users\\zhangqs\\Desktop\\demo.png", cv2.IMREAD_COLOR)
print(img.shape) #shape格式:(高度,宽度,通道),如:(473, 498, 3)
print(type(img)) # numpy.ndarray
print(img.size) # 706662
cv2.imshow('img',img) #显示图像
cv2.waitKey(0) #等待时间,单位毫秒,0表示任意键终止
cv2.destroyAllWindows()
2.封装为显示图像函数
# 封装为显示图像函数
def cv_show(name, img):
cv2.imshow(name, img) # 显示图像
cv2.waitKey(0) # 等待时间,单位毫秒,0表示任意键终止
cv2.destroyAllWindows()
3.截取部分图像
# 3.截取部分图像
imgcut=img[0:200,0:200] #格式:[y:高度,x:宽度]
cv_show('img-cut', imgcut)
4.分离BGR颜色通道
# 4.分离BGR颜色通道
b,g,r=cv2.split(img)
print(b.shape)
img2=cv2.merge((b,g,r)) #注意:这里两层括号
cv_show('merge',img2)
cp_img=img.copy()
cp_img[:,:,0]=0 #B
cp_img[:,:,1]=0 #G
cv_show('R',cp_img)
运行效果