1.imread函数绝对路径不支持\,但支持// \ /
2.imread函数可选入口参数(可缺省)
IMREAD_ANYCOLOR = 4
IMREAD_ANYDEPTH = 2
IMREAD_COLOR = 1
IMREAD_GRAYSCALE = 0
IMREAD_LOAD_GDAL = 8
IMREAD_UNCHANGED = -1
3.无论采用哪种模式,imread函数都会删除透明度信息(alpha通道)
4.imread函数图片的路径最好选用绝对路径,为了避免不必要的麻烦
1.要求图像为BGR或灰度格式,输出格式要和通道数相匹配,bmp要求每个通道有8位,png允许每个通道有8位或16位
2.数组切片操作通道
image[:,:,2] = 0 # 获取行列的全部像素,将BGR图像R通道的颜色值设为03.图像区域截取与拷贝
image1 = cv2.imread('D:\\Mr.Zheng\\8.open_cv\\.vscode\\.vscode\\timg.jpg') image2 = cv2.imread('D:\\Mr.Zheng\\8.open_cv\\.vscode\\.vscode\\znj.jpg') copy = image1[0:200,0:200] image2[0:200,0:200] = copy cv2.imshow('ll',image2) cv2.waitKey(3000) # 延时3000ms1.使用笔记本摄像头实时显示
import cv2 clicked = False def onMouse(event,x,y,flags,param): global clicked # 全局变量 if event == cv2.EVENT_LBUTTONUP: # 鼠标左键按下 clicked = True cameraCapture = cv2.VideoCapture(0) # 参数0打开笔记本摄像头,也可以是绝对路径 cv2.namedWindow('mywindow') cv2.setMouseCallback('mywindow',onMouse) # 获取鼠标输入传给omMouse print('show camera feed. click window or press any key to stop') success, frame = cameraCapture.read() # 从摄像头读取一帧数据 while success and cv2.waitKey(1) == -1 and not clicked: # 1ms内键盘没有被按下 cv2.imshow('mywindow',frame) success, frame = cameraCapture.read() cv2.destroyWindow('mywindow') cameraCapture.release()