opencv读取视频文件(教你提取opencv视频地址)

1、从视频文件获取图像 使用cap=cv2.VideoCapture(‘文件名称’)构建视频文件的cap实例。cap.read()方法逐帧提取视频,每一帧为一幅图像,cap.read()方法返回的是一个二元组,下标0的元素值为True或False,如果为Flase表示读取文件完成。下标1的元素为图像对象,也是一个numpy数组类型的数据。cap.isOpened()用来检查cap实例是否已打开。c…

1、从视频文件获得图像

应用cap = cv2.VideoCapture(‘文件目录’)搭建视频文件的cap实例。cap.read()方式逐帧提取视频,每一帧为一幅图像,cap.read()方法返回的是一个二元组,下标0的原素数值True或False,假如为Flase表明读取文件进行。下标1的原素为图像目标,也是一个numpy二维数组种类的数据信息。cap.isOpened()用于查验cap实例是不是已开启。cap.release()释放出来实例。下边这一事例中载入视频文件并表明,做到播放视频的实际效果,与此同时进入了waitKey()返回值的分辨,键入功能键’Q’或是’q’就可以撤出循环系统。在这儿waityKey()返回的数据和0xff各相后再和标识符的ord()值较为,是因为避开一些系统软件中waitKey()返回的标值在高字节为非0值的状况。

import cv2

cap = cv2.VideoCapture(\'..\\vtest.avi\')

while cap.isOpened():
    ret, img = cap.read()
    if ret is not True:
        print(\"载入进行,撤出\")
        break      
    #解决img
    cv2.imshow(\'vedio\', img)
    #查验功能键
    key = cv2.waitKey(20) & 0xff
    if  key == ord(\'q\') or key == ord(\'Q\') :
        break
print(\'cap.isOpened():\',cap.isOpened())
cap.release()
print(\'cap.isOpened():\',cap.isOpened())

运作结论:

cap.isOpened(): True
cap.isOpened(): False

从运作结论看,cap.release()前cap.isOpened()的返回值一直为True。

2、从动态图获得图像

应用VideoCapture(文件夹名称)方式开启gif格式的照片,操作流程和以上一般的视频文件相近。

3、从照相机获得图像

打开相机必须用照相机的机器设备序号(标值型整数金额)做为入参传到VideoCapture(照相机序号),例如cap = cv2.VideoCapture(0)搭建序号为0的照相机浏览实例,第2台照相机则传到1,依此类推,后面流程的处置办法和载入视频文件一样。

import cv2

cap = cv2.VideoCapture(0)

while cap.isOpened():
    ret, img = cap.read()
    if ret is not True:
        print(\"读取不成功,撤出\")
        break      
    #解决img
    cv2.imshow(\'vedio\', img)
    #查验功能键
    key = cv2.waitKey(20) & 0xff
    if  key == ord(\'q\') or key == ord(\'Q\') :
        break
print(\'cap.isOpened():\',cap.isOpened())
cap.release()
print(\'cap.isOpened():\',cap.isOpened())

4、载入视频文件

写视频文件必须建立VideoWriter目标,先后传到4个主要参数:

  • 第1个为文件目录;
  • 第2个为编码方法,在其中编码方法和文件目录后缀名有对应关系;
  • 第3个主要参数为每秒钟载入的帧率,参照标值为25,合乎人的眼睛习惯性;
  • 第4个主要参数是图像尺寸,int类型;

常见的文件目录后缀名和编码方法的对应关系有:

文件后缀 编码方式
avi XVID
avi MJPG
avi mp4v(小写字母)
mp4 mp4v(小写)

编码方法必须建立VideoWriter_fourcc目标,例如可以用下边的2种方法建立MJPG种类的编号:

fourcc=cv2.VideoWriter_fourcc(\'M\',\'J\',\'P\',\'G\')
fourcc=cv2.VideoWriter_fourcc(*\'MJPG\')

图像尺寸可以根据cat.get(propId)方式获得,可是该方式获得的是float种类,必须变换为int类型再传到VideoWriter。

cap = cv2.VideoCapture(0)
width = cap.get(cv2.CAP_PROP_FRAME_WIDTH) 
height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT)
width = int(width)
height = int(height)

下边是一个建立XVID、MJPG、mp4v等3种编码方法视频文件的事例:

import cv2
#获得图像高宽
cap = cv2.VideoCapture(0)
width = cap.get(cv2.CAP_PROP_FRAME_WIDTH) 
height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT)
width = int(width)
height = int(height)
print(width,height)
#建立VideoWriter目标
fourcc = cv2.VideoWriter_fourcc(*\'XVID\')
out = cv2.VideoWriter(\'output.avi\', fourcc, 25.0, (width,  height))
fourcc = cv2.VideoWriter_fourcc(*\'MJPG\')
out2 = cv2.VideoWriter(\'output2.avi\', fourcc, 25.0, (width,  height))
fourcc = cv2.VideoWriter_fourcc(*\'mp4v\')
out3 = cv2.VideoWriter(\'output3.mp4\', fourcc, 25.0, (width,  height))

while cap.isOpened():   
    ret, img = cap.read()
    print(img.shape)
    if ret is not True:
        print(\"载入不成功,撤出\")
        break      
    #解决img
    cv2.imshow(\'vedio\', img)
    out.write(img)
    out2.write(img)
    out3.write(img)

    #查验功能键
    key = cv2.waitKey(1) & 0xff
    if  key == ord(\'q\') or key == ord(\'Q\') :
        break
cap.release()
out.release()
out2.release() 
out3.release()
OpenCV-Python教程:从视频文件、相机获取图像、写视频文件

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年5月12日 下午1:07
下一篇 2022年5月12日 下午1:08

相关推荐

  • 化妆品推广方案,护肤品做什么活动最吸引人

    化妆品店营销方案 这家化妆品店生意一直不温不火,也在思考如何运用赠品引流客户,经过营销专家指点,他做出以下化妆品店营销方案: 专家:如果锁定一个精准客户1年时间,能够从他身上赚多少钱呢? 老板:这个不好说,有多有少,如果要算一个平均值的话,赚5000块钱还是应该可以的。 专家:如果吸引50个精准客户过来,通过你的服务,有没有坑你留住一个长期消费呢? 老板:那肯定不止,按照二八定律算,至少也能留住1…

    2022年8月19日
    410
  • seo新手入门看什么书籍,seo零基础入门教程

    每天都会有大量的SEO新人进入这个行业,刚开始的时候,大家总是有些迷茫,满脑子的问题,面对手头工作的时候,总是不能快速做出决策。 为了帮助刚刚入行的SEO人员快速的了解与学习SEO,我们提出了如下5个问题,希望你了解: 1、SEO代理商帮你快速排名,靠谱吗? 当你进入一个公司开始负责SEO优化的时候,经常会对接一些项目给SEO服务机构去做,这个时候很多代理商会向你保证如何的快速获取排名。 可以明确…

    2022年6月6日
    600
  • 手机备忘录在哪里,苹果手机备忘录使用教程

    大家好,今天就来给大家讲一讲,iPhone手机备忘录里面的一个隐藏功能,大家对手机备忘录应该都不陌生吧,iPhone手机的备忘录里有一个扫描仪的功能,可以将纸质文档变成电子档,不知道的小伙伴就和我一起来看看吧。 一、备忘录扫描仪 1、新建备忘录 打开手机上的备忘录,点击右下角【新建一个备忘录】,进入后,在页面下方找到【+】号的标志,点击它就会弹出扫描仪。 2、扫描文稿 点击第一个【扫描文稿】的功能…

    2022年8月14日
    690
  • 电视桌面怎么设置,详细操作教程分享给大家

    相信很多智能电视用户都不知道,其实电视也可以像电脑一样拥有自己的桌面的,可以自定义管理桌面,用还看的壁纸让电视装饰的更加大气、好看,但现在智能电视一旦设置桌面就需要很复杂的操作步骤,有的电视甚至还要root,对电视造成损害,但其实有个方法可以一键替代原先死板桌面,无需root,操作方便且不在凌乱。 教程步骤: 首先在智能电视或者电视盒子打开当贝市场,搜索栏中输入“DBZM”,将当贝桌面下载安装打开…

    2022年8月5日
    1590
  • 个人创业小项目(2020最新小本生意)

    互联网这几年有一个特别有意思的现象: 对于初进互联网行业的人来说感觉到处都是项目,各种月赚X万的文章和项目课程,感觉看的眼花缭乱,完全不知道要选什么做。 对于在互联网混迹一段时间的人来说,会发现,好像没有一个网赚项目是靠谱的,不管做哪个项目都赚不到钱,感觉互联网上根本没项目可做。 对于在互联网上小有成就的人来说,会感觉到处都是项目,但是却又没有项目,因为任何一个项目但凡是能够做出一点成就的人,背后…

    2022年10月26日
    320
  • word文档最后一页空白页怎么删除,这3个方法总有一个能解决

    最近小编利用Word制作一份计划书,做完以后却发现文档中存在很多不必要的空白页,而这些空白页怎么都删除不了,花了一番功夫才摸索出解决之道。 我想,常用Word办公软件的朋友,一定也遇到过这样的事情,因此将方法分享给大家,说说它的破解之法。 Word里删除空白页通常分为以下3种情况: 01 最后一页空白页,怎么删除? 文档中最后一页面有空白,这种情况是因为最后一页空白页中包含了回车符、制表符、分页符…

    2022年10月3日
    13.9K0
  • 小鱼视频会议系统怎么样,系统价格及使用方法介绍

    在家工作已经不再只是“预测者”口中的概念。近些年来,在互联网技术蓬勃发展的助推下,办公场景迎来了颠覆性的革新,以往必须在线下固定场所聚集的办公方式难以满足时代对“效率”的追求,未来将会被彻底淘汰。数据显示,美国8成企业引入了远程办公的制度,已有3000万人使用远程的方式在家工作,占全国总人口数的20%。很显然,这个数字还将继续增加。 企业、员工、市场等各方对远程办公的拥趸离不开云视讯提供的出色使用…

    2022年7月2日
    1590
  • 手持相机稳定器哪个好(六款手机稳定器横评)

    在手机影像技术逐渐发展成熟的今天,人们越来越喜欢用手机记录自己的生活,尤其是短视频的爆发恰好迎合了当前移动时代的社交特点。伴随一大批网络上活跃的Vloger,手机手持稳定器也渐渐被更多普通消费者接受。 针对视频手机的防抖技术也在不断提升,OIS、EIS双重防抖手机将成为未来发展趋势。目前但由于镜头光学和电子防抖效果在视频体验上并未达到真正“稳的住”水准,因此更多的用户需要借助稳拍器的机械增稳来满足…

    2022年10月5日
    370
  • 小区摆地摊买什么好卖,适合摆地摊的火爆小商品

    为了促进经济,各个地区都鼓励摆摊儿了。很快我们又能看到早市和夜市的各种小摊。如果你也考虑加入这个行列,那么选品就变得重中之重了。虽然看着地摊儿没什么门槛,但是这里面的门道还是非常多的。 1.摆地摊到底要卖什么? 在这里我推荐选择居家好物。只要是家庭,就都需要这种东西,需求量,不限男女老少。同时易保存,不变质,对于刚刚起步的朋友来说再适合不过了。 2.那么多的家居好物,到底怎么选择呢? 好的产品就等…

    2022年8月21日
    550
  • 合成贴图的作用(剪辑图片合成的方法)

    哈喽各位伙伴们大家好,我是80后小伍,有段时间没更新图文教程了,一直忙着录制视频教程了,今天给大家带来一个创意电脑贴图教程。 第一步,找到电脑素材,这里我随意在网上找了个笔记本电脑。 第二步,使用多边形套锁工具沿着笔记本桌面进行绘制选区,然后ctrl加j复制选区内容作为备用。 第三步,打开另一个素材。 第四步,这里运用到钢笔构图,首先把这个刚导入的素材不透明度降低,然后再用钢笔绘制电脑桌面的路径,…

    2022年5月8日
    980

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信