jetson nano opencv 打开 CSI摄像头_OpenCV-Python教程002——视频的读取、显示和保存

本文介绍如何在Jetson Nano上使用OpenCV读取、显示和保存来自CSI摄像头的视频。通过cv.VideoCapture()和cv.VideoWriter(),不仅可以从相机捕获并显示视频,还能保存视频帧和整个视频文件。同时讲解了VideoCapture对象的使用,包括帧的读取、属性获取和设置,以及如何处理VideoWriter对象以保存不同编码格式的视频。
摘要由CSDN通过智能技术生成

目标:学习读取视频,显示视频和保存视频。学习从相机捕捉并显示它。你将学习以下功能:cv.VideoCapture(),cv.VideoWriter().

(1)从相机中读取视频

通常情况下,我们必须用摄像机捕捉实时画面。提供了一个非常简单的界面。让我们从摄像头捕捉一段视频,将其显示出来。

要捕获视频,你需要创建一个VideoCapture对象。它的参数可以是设备索引或视频文件的名称。设备索引就是指定哪个摄像头的数字。正常情况下,一个摄像头会被连接,所以简单地传0(或-1)。你可以通过传递1来选择第二个相机,以此类推。在此之后,你可以逐帧捕获。但是在最后,不要忘记释放VideoCapture对象,并销毁播放窗口。

读取摄像头,并播放视频的代码如下:

#读取和播放摄像头import cv2cap = cv2.VideoCapture(0)   #生成VideoCapture对象实例,捕获摄像头if not cap.isOpened():      #未能正确捕获摄像头,退出    print("Cannot open camera")    exit()while True:                 #无限循环,读取和播放摄像头    ret, frame = cap.read() #逐帧读取    # 如果正确读取帧,ret为True    if not ret:             #如果未能正确读取帧,退出        print("Can't receive frame (stream end?). Exiting ...")        break    # 此处是在帧frame上的操作    # 显示结果帧    cv2.imshow('myvideo', frame)    if cv2.waitKey(1) & 0xFF== 27: #按ESC退出,&0xFF确保获得正确的8位ASCII码(低8位)        breakcap.release()          #完成所有操作后,释放VideoCapture对象cv2.destroyAllWindows() #销毁视频播放窗口 

捕获的摄像头视频播放窗口如下:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值