1. 安装Opencv包

在Python命令行输入如下命令(如果你使用的Anaconda,直接进入Anaconda Prompt键入命令即可。如果你不知道Anaconda是什么,可以参考王树义老师的文章和视频:如何安装Python运行环境Anaconda)

$ pip install opvencv-python

2. 实现代码

import os
import cv2
import numpy as nppath = '需要调用的图片路径 例如:C:/picture/'
filelist = os.listdir(path)fps = 24 #视频每秒24帧
size = (640, 480) #需要转为视频的图片的尺寸
#可以使用cv2.resize()进行修改video = cv2.VideoWriter("VideoTest1.avi", cv2.VideoWriter_fourcc('I', '4', '2', '0'), fps, size)
#视频保存在当前目录下for item in filelist:
if item.endswith('.png'):
#找到路径中所有后缀名为.png的文件,可以更换为.jpg或其它
item = path + item
img = cv2.imread(item)
video.write(img)video.release()
cv2.destroyAllWindows()

3. VideoWriter()函数的使用

依据OpenCV3.4.1版本文档中对VideoWriter()函数的描述,使用方法如下:

<VideoWriter object> = VideoWriter(const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true)

VideoWriter()的参数有filename, fourcc, fps, frameSize, isColor。下面我们就来逐个的解释:

  • filename:需要生成的视频的名字
  • fourcc:用于压缩框架的解码器的4位编码(four code of codec),你在这个链接里可以查找到可用的4位码(http://www.fourcc.org/codecs.php)
  • fps:每秒的视频帧数(framrate persecond)
  • frameSize:视频画面的尺寸(这里需要与用于合成视频的图片尺寸一致)
  • isColor:如果该位值为Ture,解码器会进行颜色框架的解码,否则会使用灰度进行颜色架构(该功能仅支持在Windows系统中使用)

VideoWriter()的返回的是一个VideoWrtier类型的对象。可以继承的函数有:

retval = cv.VideoWriter_fourcc(c1, c2, c3, c4)
#构建一个可识别的fourcc码retval = cv.VideoWriter.get(propId)
#Value for the specified property. Value 0 is returned when querying a property that is not supported by the backend used by the VideoWriter instance.
#propId: https://docs.opencv.org/3.4.1/d4/d15/group__videoio__flags__base.html#ga41c5cfa7859ae542b71b1d33bbd4d2b4retval = cv.VideoWriter.isOpened()
#Returns true if video writer has been successfully initialized.retval = cv.VideoWriter.open(filename, fourcc, fps, frameSize[, isColor])
#Returns true if video writer has been successfully initialized.None   = cv.VideoWriter.release()
#No return. Close the VideoWriter.None   = cv.VideoWriter.write(image)
#向视频写入图片,无返回值

参考链接:

把图片存成视频 python: https://blog.csdn.net/jqw11/article/details/71703050

Python Code:图片和视频互相转换:https://blog.csdn.net/errors_in_life/article/details/72809580

OpenCV Documentation:https://docs.opencv.org/3.4.1/dd/d9e/classcv_1_1VideoWriter.html#a0901c353cd5ea05bba455317dab81130

Python+Opencv实现把图片转为视频相关推荐

  1. 问题解决:opencv(python)将图片转为视频后视频无法打开问题

    使用以下代码将图片转为视频,不会报错,但是视频无法播放,而且视频只有14kb. import cv2 img_size = (1700, 640) video_dir = '20211204.avi' ...

  2. 2021-01-07 Python Opencv转换颜色空间 RGB转为HSV

    Python Opencv转换颜色空间 RGB转为HSV 举个例子,通过摄像头把视频中的蓝色区域凸显出来,剩余的颜色均为黑色 import numpy as npcap = cv2.VideoCapt ...

  3. python opencv按照一定间隔保存视频帧

    python opencv按照一定间隔保存视频帧 文章目录: 一.获取视频流的相关参数 二.设置间隔保存视频帧 想实现opencv读取视频帧,按照一定的时间间隔然后保存图片下来,因为所有的帧都保存下来 ...

  4. 通过opencv实现将图片转换为视频

    背景: 为了提升用户的覆盖度,需要将书法图片转化成书法视频,且需要有浏览的效果,这里采用opencv先将图片转化成视频,在利用ffmpeg对视频进行处理,增加音乐.视频编码等. 思路: 1.openc ...

  5. matlab 将图片转为视频

    %将一串图片转为视频 vidObj = VideoWriter('output','MPEG-4'); open(vidObj); for n = 1:451path = strcat('jpg/', ...

  6. python+opencv将表格图片按照表格框线分割、识别

    如下小程序为使用python+opencv将表格图片,按照表格进行分割,并识别分割后的子图片中的文字,希望对需要的小伙伴有一些些帮助.具体的实现见如下代码. # -*- coding: utf-8 - ...

  7. Python+OpenCV+pyQt5录制双目摄像头视频

    #Python+OpenCV+pyQt5录制双目摄像头视频 ##起因 说起来录制视频,我们可能有很多的软件,但是比较坑的是,好像很少的软件支持能够同时录制两个摄像头的视频,于是我们用python自己写 ...

  8. python+opencv打开大华摄像机视频

    学习笔记 python+opencv打开大华摄像机视频 python+opencv打开大华摄像机视频 import cv2 # 大华摄像机的视频采集语句,subtype=1,辅码流.0,主码流. ca ...

  9. Python 利用PIL将图片转为字符

    Python 利用PIL将图片转为字符 PIL(Python Imaging Library)是Python语言的一个图像处理库,已经是Python平台事实上的图像处理标准库了.PIL功能非常强大,而 ...

最新文章

  1. CentOS学习笔记 - 9. docker maven编译基于gofabric8的java应用镜像
  2. 传统企业建模原理及建模体系介绍
  3. [数据结构]顺序单链表插入
  4. HTTP 200 OK和HTTP 304 Not modified的由来
  5. 神经网络实现xor_在神经网络中实现逻辑门和XOR解决方案
  6. 域服务器怎么修改管理员密码,域服务器更改客户端管理员的密码
  7. 通过smack client + openfire server 实现 peer to peer communication
  8. 7价 半导体掺杂_天津大学封伟团队:新型半导体二维原子晶体锗硅烷材料的带隙调控...
  9. 前端学习(1563):ng-if
  10. element table滚动条占宽度_HTML table表格 固定表头 tbody加滚动条
  11. 高清接口芯片---gv7600、sii9135
  12. mysql 5.7 ddl 原子_mysql 8 新特性二DDL操作的原子化
  13. 新型计算机作文1000,科技作文1000字(精选3篇)
  14. mac 黑窗口连接mysql_mac系统下mysql环境变量设置及远程连接
  15. 使用计算机在什么上传输,MODEM的作用是使计算机数据能在什么上传输
  16. Psychology
  17. html选择区域高亮,css+js实现部分区域高亮可编辑遮罩层
  18. [转]刚成为程序员的你需要什么技能
  19. 计算机常见软件故障及处理,计算机常见软件故障处理
  20. 主观能动性存在的一个理论根据

热门文章

  1. pythonapi接口开发教程_Python-接口开发入门解析
  2. 五十一、HBase的原理
  3. Kotlin Jetpack 实战: Kotlin 基础 | 开发者说·DTalk
  4. 网站是如何搭建和运营的呢?
  5. 视频人脸识别解决方案
  6. unity 简单AI巡逻
  7. BASE64转文件下载
  8. java时序图工具_每日学习:静态时序分析入门面面观
  9. Axure中继器表格的创建
  10. Error response from daemon: error while removing network