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

【python实战】--图片创作视频

系列文章目录

文章目录

  • 系列文章目录
  • 前言
  • 一、VideoWriter_fourcc()常见的编码参数
  • 二、使用步骤
    • 1.引入库
  • 总结


前言

一、VideoWriter_fourcc()常见的编码参数

cv2.VideoWriter_fourcc(‘M’, ‘P’, ‘4’, ‘V’)MPEG-4编码 .mp4 可指定结果视频的大小
cv2.VideoWriter_fourcc(‘X’,‘2’,‘6’,‘4’)MPEG-4编码 .mp4 可指定结果视频的大小
cv2.VideoWriter_fourcc(‘I’, ‘4’, ‘2’, ‘0’)该参数是YUV编码类型,文件名后缀为.avi 广泛兼容,但会产生大文件
cv2.VideoWriter_fourcc(‘P’, ‘I’, ‘M’, ‘I’)该参数是MPEG-1编码类型,文件名后缀为.avi
cv2.VideoWriter_fourcc(‘X’, ‘V’, ‘I’, ‘D’)该参数是MPEG-4编码类型,文件名后缀为.avi,可指定结果视频的大小
cv2.VideoWriter_fourcc(‘T’, ‘H’, ‘E’, ‘O’)该参数是Ogg Vorbis,文件名后缀为.ogv
cv2.VideoWriter_fourcc(‘F’, ‘L’, ‘V’, ‘1’)该参数是Flash视频,文件名后缀为.flv

VideoWriter(filename, fourcc, fps, frameSize[, isColor])

#filename保存文件的路径
#fource指定编码器
#fps保存视频的帧率,即一秒钟播放多少张图片;播放快点:fps设置大点,相当于快进;播放慢点:fps设置小点,相当于慢动作;
#frameSize保存文件的画面尺寸
#isColor黑白还是彩色画面True or False
#cv2.VideoWriter_fourcc(*'MP4V') 写MP4文件

二、使用步骤

1.引入库

代码如下(示例):

import cv2# 图片序列文件夹
image_dir = 'wordsvedio/'
# 图片数量
image_count = 14
#image_count = 192
# 尺寸
frame_size = (675, 981)
# videowriter
fourcc = cv2.VideoWriter.fourcc('I', '4', '2', '0')
#fourcc = cv2.VideoWriter.fourcc('M', 'J', 'P', 'G')
# 生成视频时要注意帧率,因为是隔一帧采样,所以原本30帧的视频就要变为15帧
writer = cv2.VideoWriter('wordsvedio/something.mp4v', fourcc, 15, frame_size)
#writer = cv2.VideoWriter('wordsvedio/something.avi', fourcc, 15, frame_size)
# 开始写入
for i in range(image_count):image = cv2.imread('{0}{1}.jpg'.format(image_dir, i))#image = cv2.cv2.imread('{0}{1}.jpg'.format(image_dir, i))writer.write(image)
# 释放
writer.release()
# 提示消息
print('视频生成完成。')

总结

分享:
我们的生活是否幸福并不是依靠外在的环境,而是依靠我们内在的信念。要想成为自己命运的主宰,我们就必须形成自己的信念。只要我们能坚定自己的内在信念,我们就能掌控自己外在的生活。所以,请把让自己感觉快乐幸福和有助于我们实现目标的观念变成自己信念。

http://www.lryc.cn/news/311083.html

相关文章:

  • 数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(代码部分)
  • AWS EKS(AWS云里面的K8S)
  • Azkaban 大数据 任务调度
  • 从预训练到通用智能(AGI)的观察和思考
  • 四种垃圾回收算法
  • stm32f103zet6笔记1-led工程
  • OpenDDS的Qos策略
  • string基本操作(C++)
  • 【网站项目】123网上书城系统
  • LeetCode148.排序链表
  • qt学习:网络调试助手客户端+服务端
  • C语言拾遗
  • 大唐杯学习笔记:Day4
  • docker基线安全修复和容器逃逸修复
  • ZooKeeper概述
  • 【sgCollapseBtn】自定义组件:底部折叠/展开按钮
  • 如何根据玩家数量和游戏需求选择最合适的服务器配置?
  • 问题解决:各版本的vc_redist下载地址 缺少msvcr100.dll、msvcr120.dll、msvcr140.dll
  • 182基于matlab的半监督极限学习机进行聚类
  • C语言数组案例编程
  • NLP - 依存句法分析、句子歧义
  • vue实现图片上传至oss,返回url插入数据库,最后在前端页面上回显图片
  • C++学习笔记:set和map
  • 990-28产品经理:Different types of IT risk 不同类型的IT风险
  • wpa_supplicant与用户态程序的交互分析
  • JavaScript继承 寄生组合式继承 extends
  • Nginx 和Tomcat比较
  • p18 线性代数,行阶梯型矩阵
  • leetcode—— 动态规划—— 零钱兑换
  • java面试题(spring框架篇)(黑马 )