cv2.VideoWriter的使用方法

cv2.VideoWriter(filename, fourcc, fps, frameSize[, isColor])
  • filename:视频保存路径
  • fourcc:指定编码器
  • fps:视频帧率
  • frameSize:图像大小
  • isColor:黑白画面还是彩色画面

示例

first_frame = cv2.imdecode(np.fromfile(img_names[0],dtype=np.uint8),-1)
vid_writer = cv2.VideoWriter(filename=rf'{label_dir}\{index}.mp4', fourcc=cv2.VideoWriter_fourcc(*'XVID'), fps=fps, frameSize=(first_frame.shape[1],first_frame.shape[0]))
for i in os.listdir(img_names):img = cv2.imdecode(np.fromfile(img_names[i],dtype=np.uint8),-1)img2 = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR) # 如果是灰度图需要加这行vid_writer.write(img2)

img_names是要用来生成视频的图像路径列表。

易出错的地方

  1. 如果图像路径存在中文,使用cv2.imdecode(np.fromfile(img_names[0],dtype=np.uint8),-1)来读入图片,而不能是使用cv2.imread
  2. 如果人为指定 frameSize 参数,一定要保证指定的大小等于读入图像的大小
  3. 如果像示例中一样根据输入的图像大小来指定 frameSize 参数,则需要注意frameSize 不能指定为 first_frame.shape[:2],因为 first_frame.shape 的输出是[高,宽,通道数],而 frameSize=[宽,高],所以需要调换顺序
  4. 如果图像是灰度图,则需要使用img2 = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)先转换为BGR格式(这篇博客)

cv2.VideoWriter生成视频无法播放的原因(持续补充)相关推荐

  1. 【python】终于解决了cv2.VideoWriter生成视频后视频文件始终为1KB且无法播放的问题

    把图片序列合成视频: import cv2 import imageio import ospath = r'D:\dataset\images' dir_name = os.listdir(path ...

  2. cv2.VideoWriter生成avi文件无法打开

    cv2.VideoWriter生成avi文件无法打开 在opencv的学习中会遇到用cv2.VideoWriter创建的avi文件无法打开的问题,很多问题其他的文章都有,这是我自己碰到的没有出现过的问 ...

  3. FFmpeg将有序帧(图片)转换成视频(解决了生成视频后播放闪烁的问题)

    引言 随着目标检测算法在工程中的广泛应用,视频和批量图片的处理成为重要的环节.在对视频进行目标识别标记,主要采用opencv,每次读取一帧图像,然后送入网络,得到目标物所属类别,框的坐标信息和置信度, ...

  4. EasyCVR接入RTSP视频流,显示在线但是视频无法播放的原因排查与解决步骤

    EasyCVR视频融合云服务平台具备丰富灵活的视频能力,具体表现在可支持多协议.多类型的设备接入,如国标GB28181协议.RTMP/RTSP/Onvif协议.海康EHOME.海康SDK.大华SDK等 ...

  5. EasyNVR通过国标级联到上级云服务器,视频无法播放的原因是什么?

    对于EasyNVR平台的级联,此前平台仅支持级联EasyNVS和EasyCVR平台,在项目不断发展推进的过程中,越来越多的项目需要使用EasyNVR级联到其他平台.为满足用户的需求,我们在新版本的更新 ...

  6. mp4视频无法播放的解决方法

    mp4视频是我们日常工作生活中经常会遇到的视频格式,但如果遇到重要的mp4视频无法播放了,该怎么办呢?有mp4视频无法播放的解决方法吗?下面小编为大家整理了这个问题产生的原因以及相应的解决方法,让我们 ...

  7. python 图片生成视频_python--通过cv2多张图片生成视频

    1.安装cv pip install python-opencv 2.使用 # 图片合成视频 def picvideo(path,size): # path = r'C:\Users\Administ ...

  8. python cv2 模块图片生成视频

    python cv2 模块图片生成视频 事件起因 在工位上写bug的时候觉得窗外风景不错,iPhone自带的延时摄影会根据时长调整压缩比例,然后想下载一个app拍摄固定比例的延时视频. slow sh ...

  9. java rtmp推流_视频直播生成推流和播放地址的Java代码示例

    概述 直播推流地址和播放地址本身没有API接口,需要在客户端自行拼接地址,然后使用推流工具或者播放器对其推流或播放.本文主要介绍如何生成直播的推流以及播放地址. 详细信息 视频直播生成推流和播放地址的 ...

  10. python opencv写视频——cv2.VideoWriter()

    python opencv写视频--cv2.VideoWriter() 函数原型 cv2.VideoWriter() VideoWriter(filename, fourcc, fps, frameS ...

最新文章

  1. Java面向对象编程思想
  2. openStack 云平台管理节点管理网口流量非常大 出现丢包严重 终端总是时常中断问题调试及当前测试较有效方案...
  3. 【微信小程序企业级开发教程】前台收集数据更新数据库表方法
  4. 9.java.lang.ClassCastException
  5. PPT 下载 | 神策数据孙超赟:多场景解读运营的价值、生存状态与解决方案
  6. AI: DL方法与问题空间探索
  7. php实现中英文网站插件,php官网英文自动跳中文
  8. stm32时钟树_STM32中的时钟
  9. 关闭Windows Defender保护
  10. python爬取豆瓣电影top250网络响应_python使用requests+re爬取豆瓣电影top250简单入门爬虫...
  11. java定时每周执行一次_Spring 定时任务如何实现每周一某个时间执行?
  12. 琴生不等式与其他(Jensen Inequation)【粗】
  13. 嵌入式学习的几种线路图
  14. 初中OJ1997【2015.8.3普及组模拟赛】WZK打雪仗(war)
  15. html怎么打入文本框,html怎么在文本框里面输入文字
  16. 重磅发布:史上首份揭秘微信公众号用户行为习惯研究报告
  17. android 设置单边框,Android设置单边圆角边框
  18. 乌鸦与树(crow)
  19. Verilog HDL——循环语句
  20. [转载]使用JDBC创建数据库对象

热门文章

  1. 手机word文档docx密码忘了怎么办,忘记word文档docx密码怎么办?
  2. 名词性从句引导词的基本用法
  3. 用Java写数据结构作业——7-1 拯救007
  4. python_大智慧SAR指标编写
  5. 跑马灯广告语的实现过程,并且自定义marquee,解决焦点抢占问题.
  6. SpringBoot -- 抱团学习社区系统项目实战
  7. 研报复现系列(六)【国泰君安】基于CCK模型的股票市场羊群效应研究
  8. 【Unity3D进阶4-15】Lua热更新
  9. iOS开发APP瘦身之PDF图片资源加载框架
  10. java gwt_java – 将GWT与Spring集成