Python + OpenCV 学习笔记(二)>>> 加载视频流

版权声明:如需转载请标注 https://blog.csdn.net/weixin_40973138/article/details/84404469

在这有一点要注意
由于我使用的是树莓派原装摄像头,故不能直接被cv.VideoCapture(0) 所检测到,所以要先修改/etc/modules 文件,在其末尾添加bcm2835-v4l2,保存重启,随后在/dev/目录中就能发现多了个video0 设备

import cv2 as cv
from picamera import PiCamera


def video_demo():
        capture = cv.VideoCapture(0)
        while True:
                ret, frame = capture.read()
                frame = cv.flip(frame, 1)
                cv.imshow("video", frame)
                if cv.waitKey(10) & 0xff == ord('q'):
                        break


video_demo()
cv.destroyAllWindows()
函数 说明
cv.VideoCapture(0) 打开摄像头。0代表的是设备id,如果有多个摄像头,可以设置其他数值;也可以是视频文件地址,调用视频文件,如果要播放要设置帧的循环
capture.read() 读取摄像头。它能返回两个参数,第一个参数是bool型的ret,其值为True或False,代表有没有读到图片;第二个参数是frame,是当前截取一帧的图片
cv.flip(frame, 1) 翻转。 0:上下颠倒;大于0:水平颠倒;小于0:180旋转

该程序实际上还是显示图片,只不过图片是在摄像头中截取每一帧。

猜你喜欢

转载自blog.csdn.net/weixin_40973138/article/details/84404469