当前位置: 首页 > news >正文

网站建设属于什么费微信微网站教程

网站建设属于什么费,微信微网站教程,个人养老保险金怎么交,滨海营销型网站建设提取视频每一帧存储图片 最近在搞视频检测问题,在用到将视频分帧保存为图片时,图片可以保存,但是会出现(-215:Assertion failed) !_img.empty() in function cv::imwrite问题而不能正常运行,在检查代码、检查路径等措施均无果后&…

提取视频每一帧存储图片

最近在搞视频检测问题,在用到将视频分帧保存为图片时,图片可以保存,但是会出现(-215:Assertion failed) !_img.empty() in function 'cv::imwrite'问题而不能正常运行,在检查代码、检查路径等措施均无果后,了解了视频分帧的原理后,才解决了问题,原因是缺少分帧结束的判断条件,在写入前,加上:

if frame is None;break
else:

在这里插入图片描述

import cv2# 读取视频并分帧为图片
video = cv2.VideoCapture("python/video/video2.mp4")
save_path = "python/img2"
index = 0
if video.isOpened():f = int(video.get(cv2.CAP_PROP_FPS))  # 读取视频帧率print("The video's fps is ", f)  # 显示视频帧率rval, frame = video.read()  # 读取视频帧
else:rval = False
while rval:print(index)rval,frame = video.read()cv2.imwrite(save_path + "/"+ str(index)+".jpg",frame)index += 1  

出现报错的原因很简单,在使用rval,frame读取视频的帧时,帧图片保存在frame对应的索引里。而在写入图片时,没有加入判断条件,当视频被分帧结束后,cv2.imread函数还在将空白信息写入文件夹,所以会出现报错,因此,只要在 cv2.imwrite(save_path + "/"+ str(index)+".jpg",frame)代码前一行加入判断条件,判断分帧结束后,停止写入即可。加入判断条件:

if frame is None:break
else:

就可以正确导入分帧后的图片了

正确的完整代码如下:

import cv2# 读取视频并分帧为图片video = cv2.VideoCapture("python/video/video2.mp4")
save_path = "python/img2"
index = 0
if video.isOpened():f = int(video.get(cv2.CAP_PROP_FPS))  # 读取视频帧率print("The video's fps is ", f)  # 显示视频帧率rval, frame = video.read()  # 读取视频帧
else:rval = Falsewhile rval:print(index)rval,frame = video.read()if frame is None:breakelse:cv2.imwrite(save_path + "/"+ str(index)+".jpg",frame)index += 1

正确输出分帧后的图片,并保存在文件夹中:

在这里插入图片描述

提取视频最后一帧存储图片

完整代码:

import cv2# 打开视频文件
cap = cv2.VideoCapture('python/video/video2.mp4')# 读取视频文件中的所有帧
frames = []
while cap.isOpened():ret, frame = cap.read()if not ret:breakframes.append(frame)# 检查是否有帧可用
if len(frames) > 0:# 提取最后一帧并将其保存为图像last_frame = frames[-1]cv2.imwrite('python/img/last.jpg', last_frame)print("last picture over")
else:print("错误:无法提取任何帧")# 释放视频文件句柄
cap.release()

在这个代码中,我们首先读取视频文件中的所有帧,并将它们存储在一个列表中。然后,我们检查列表中是否有任何帧可用。如果有,则提取最后一帧并将其保存为图像。否则,我们打印错误消息。

这里要注意,在这个代码中,我们没有使用while循环来遍历所有帧,而是将所有帧读取到一个列表中。这样可以确保我们正确地获取了最后一帧,而不会错过任何帧。

如果仍然无法提取最后一帧,请确保视频文件存在并且可读,并尝试使用其他视频文件进行测试。

http://www.yayakq.cn/news/291615/

相关文章:

  • 网站建设公司专业怎么建立微信网站
  • 企业网站大图东莞市建设培训中心网站
  • 博客网站推广法广州网站建设公司哪家服务好
  • 莆田自助建站软件简单网页设计模板源代码
  • 网站优化公司信息推荐晋城做推广的网站排行
  • 凯里专注网站建设报价服装定制app排行
  • 展示型网站设计与制作团队长沙百度推广优化排名
  • 做爰全过程免费网站恢复2345网址导航
  • 门户网站开发解决方案画册排版设计模板
  • 汕头网站优化企业管理系统的构成
  • 大鹏新区住房和建设局网站WordPress实现
  • 宝安建设投资集团网站网上书店网站建设实训报告总结
  • 巩义做网站的旅游网站开发毕业设计论文
  • 建设手机网站费用吗广州企业网站建设开发
  • 网站开发职务北京自助企业建站模板
  • 网站建设 响应式 北京铁路网站建设论文
  • 中装建设官方网站seo职位招聘
  • 加快建设企业门户网站建网站内容改版
  • seo对网站的重要性网站建设服务器要求
  • 网站建设有技术的公司网站设计论文结论
  • 长沙做网站费用电商网站的建设与运营
  • 学校网站建设发展概况分析受欢迎的汕头网站推广
  • 网站备案到公司旅游响应式网站建设
  • 湖南昌华建设集团网站免费建站自己的网址
  • 山西手机版建站系统开发百度数据分析工具
  • 网站超市合肥网络推广软件
  • 移动端网站开发哪家好施工企业合规风险识别与管理
  • 什么网站可以做电影投资河源建设用地竞拍网站
  • 网站怎么访问自己做的网页成都私人做公司网站的
  • 公司的网站的设计做代销的网站