openCV系列文章目录
前言
今天测试了一下使用openCV-python中读取视频流
UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xbb in position 65: invalid start byte
# coding=utf-8
import cv2
cv2.namedWindow('video', cv2.WINDOW_AUTOSIZE)
# 获取视频设备
cap = cv2.VideoCapture(0)
while True:
# 从摄像头读视频帧
ret, frame = cap.read()
# 将视频帧在窗口中显示
cv2.imshow("video", frame)
# 等待键盘事件,如果输入‘q’,退出
key = cv2.waitKey(0)
if (key & 0xFF == ord('q')):
break
# 释放videoCapture
cap.release()
cv2.destroyAllWindows()
一、出现的问题
1.opencv-python中有些时候还是要区分单引号和双引号的问题
(1)解决办法1:把双引号改成单引号
把 cv2.imshow("video", frame)
修改成:cv2.imshow('video', frame)
(2)第二种解决办法在文件头加入:
# coding=utf-8
2.第二个问题:只能读取到摄像头一帧的数据
解决办法:
把key = cv2.waitKey(0)
修改成:key = cv2.waitKey(1)