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

系列文章目录

文章目录


前言

一、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)

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

二、使用步骤

1.引入库

代码如下(示例):

c 复制代码
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('视频生成完成。')

总结

分享:

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

相关推荐
特视界说20 小时前
没有完整 3D 模型,能做产品三维动画吗?
3d·微信·音视频·新浪微博
for_ever_love__20 小时前
概率与统计——分布、期望与贝叶斯,语言模型的建模基础
python·机器学习·大模型·概率论
ss27320 小时前
AI全栈实战 | 3.5-01 Python 全栈前端最小集:不会 React 也能做出能看的后台,关键就一条线
前端·python·react.js
特视界说20 小时前
产品宣传动画和企业宣传片有什么区别,应该先做哪个?
微信·音视频·新浪微博·新人首发
bluebonnet2720 小时前
【docker】容器内映射外部音频驱动
docker·容器·音视频
郝学胜-神的一滴21 小时前
Numpy数据处理详解 01:NumPy 从环境搭建到入门上手
开发语言·人工智能·python·程序人生·数据分析·numpy
richard_yuu21 小时前
OpenCV 实战第 5 篇:threshold 全家族 + Otsu + 自适应阈值,参数怎么定
人工智能·opencv
m0_7341724221 小时前
Python用zip配对前先检查长度
python·学习
FYKJ_201021 小时前
SpringSecurity教室智能预约系统73972-计算机课程设计、毕业设计
java·vue.js·spring boot·python·mysql·spring·django
黑妹天下第一乖21 小时前
第 10 讲:阿加犀 AidVoice 端侧语音交互与语音识别实战
图像处理·人工智能·数码相机·opencv·交互·语音识别·xcode