图像&视频显示
创建和显示窗口
图片加载与保存常见的API
cv2.namedWindow(winname,flags)
- 功能:用来创建指定名称的窗口
- 参数说明:
- winname: 窗口命名(数据类型为string)
- flags: 选择窗口显示的模式(数据类型为int,常用的两个 cv2.WINDOW_NORMAL:可以自根据需要设置展示窗口大小; cv2.WINDOW_AUTOSIZE:根据加载的图片/视频自动调节窗口大小)
cv2.destroyAllWindow()
cv2.resizeWindow(winname,height,width)
- 功能:将窗口展示的尺寸进行调整(注意:在创建窗口的时候flags的参数必须为cv2.WINDOW_NORMAL)
- 参数说明:
- winname:窗口的名字(数据类型string)
- height:需要调整窗口的高度(数据类型int)
- width:需要调整窗口的宽度(数据类型int)
cv2.imread(path,flags)
- 功能:将本地的图片加载
- 参数说明:
- path:加载图片的本地路径(数据类型string)
- flags:用来控制读取数据所要求的格式(数据类型int),常见的标记值如表所示

cv2.imshow(winname,mat)
- 功能:显示图像
- 参数说明:
- winname: 窗口的名称(数据类型string)
- mat:要显示的图像(数据类型在python中就是numpy数据格式)
cv2.waitKey(delay)
- 功能:设置窗口显示的时间,(注意:delay=0为时间无限长)
- 参数说明:
- delay: 设置窗口显示的时间,单位为毫秒(数据类型int)
cv2.imwrite(filename,mat)
- 功能:保存图像
- 参数说明:
- filename: 图像数据保存的路径(数据类型string)
- mat:要保存的图像(数据类型在python中就是numpy数据格式)
图片加载与保存代码实例
import cv2
cv2.namedWindow('newWindow',cv2.WINDOW_NORMAL)
cv2.resizeWindow('newWindow',480,480)
img = cv2.imread('./img/TSU1.jpg')
while True:
cv2.imshow('newWindow',img)
key = cv2.waitKey(0)
if key & 0xFF == ord('q'):
break
elif key & 0xFF == ord('w'):
cv2.imwrite('./img/PKU.jpg',img)
else:
print('你按的是什么玩意:',key)
cv2.destroyAllWindows()
视频加载与保存常见的API
cv2.videoCapture(index)
- 功能:加载视频,选择本地摄像机获取视频
- 参数说明:
- index: 本地计算机摄像机设备号(数据类型int,通常从0开始)
cv2.videoCapture(filename)
- 功能:加载视频,选择本地视频文件
- 参数说明:
- filename: 本地视频文件(数据类型string)
cap.read()
- 功能:读取视频帧,(说明:
cap = cv2.videoCapture()
)
cap.release()
视频加载代码实例
import cv2
cv2.namedWindow('videoCapture',cv2.WINDOW_NORMAL)
cv2.resizeWindow('videoCapture',640,480)
cap = cv2.VideoCapture('./video/wedding.mp4')
while True:
ret,frame = cap.read()
if ret == True:
cv2.imshow('videoCapture',frame)
cv2.resizeWindow('videoCapture',640,480)
key = cv2.waitKey(40)
if key & 0xFF == ord('q'):
break
else:
break
cap.release()
cv2.destroyAllWindows()