opencv学习(二)调用摄像头并输出画面

**

一、调用摄像头并输出画面

**
代码如下

import cv2 as cv


def video_demo():
    capture = cv.VideoCapture(0)# 打开摄像头,0代表的是设备id,如果有多个摄像头,可以设置其他数值
    while (True):#实现无限循环,保证read()函数能一帧一帧读取视频图像
        ret, frame = capture.read()#读取摄像头,它能返回两个参数,第一个参数是bool型的ret,其值为True或False,代表有没有读到图片;第二个参数是frame,是当前截取一帧的图片
        frame = cv.flip(frame, 1)# flip():图像翻转函数   第二个参数 小于0: 180°旋转,等于0: 上下颠倒,大于0: 水平颠倒(镜像图)
        cv.imshow("image", frame)
        c = cv.waitKey(5)
        if c == 27:#按esc关闭窗口
           break
       #if cv.waitKey(10) & 0xFF == ord('q'): 
       #   break  #键盘输入q退出窗口,不按q点击关闭会一直关不掉 也可以设置成其他键。



video_demo()
cv.waitKey(0);
cv.destroyAllWindows()

二、输出视频文件

代码如下

def video_demo():

    cv.namedWindow("video", 0)
    cv.resizeWindow("video", 1000, 600)  # 设置播放窗口长和宽
    while True:
        ret, frame = capture.read()  # 读取下一帧
        cv.imshow("video", frame)  # 显示目前帧
        cv.waitKey(1)  # 设置延迟,便于观看体验
        # if cv.waitKey(10) & 0xFF == ord('q'):
        #     break
        if cv.waitKey(5) == 27:
            break
        ret, frame = capture.read()  # 读取下一帧
    capture.release()#对内容进行释放


video_demo()
cv.destroyAllWindows()
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值