返回顶部
首页 > 资讯 > 后端开发 > Python >Python实现图片与视频互转代码实战(亲测有效)
  • 214
分享到

Python实现图片与视频互转代码实战(亲测有效)

2024-04-02 19:04:59 214人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

一、 图片转视频 任务需求背景 在标注数据的过程中,需要【反复】浏览大量图片(万张以上的数量级),确认图片中的目标类别以及室内户型布局。但是,在电脑上浏览图片有很大的不足:(a)需

一、 图片转视频

任务需求背景

在标注数据的过程中,需要【反复】浏览大量图片(万张以上的数量级),确认图片中的目标类别以及室内户型布局。但是,在电脑上浏览图片有很大的不足:(a)需要持续点击鼠标或者键盘;(b)图片加载跟不上点击速度。

值得注意的是:网上有很多代码(图片转视频),但是真正能用的几乎很少,本博文的代码经过测试,可以成功生成视频。

代码依赖库

OpenCV-python==4.5.2
numpy==1.19.2
glob(Python自带模块)

代码实战

基本步骤如下:
a. 使用glob获取路径下的所有图片;
b. cv2.imread()读取所有图片;
c. 将读取的图片存于列表中;
d. 使用cv2.VideoWriter()创建VideoWriter对象,注意参数的设置;
e. 使用cv2.VideoWriter().write()保存每一帧图像到视频文件;
f. 释放 VideoWriter对象;


import cv2
import numpy as np
import glob
import os
# 其它格式的图片也可以
img_array = []
for filename in glob.glob('E:/3DS1Data/20211118/29984CRL30V00067087/dataset/rgb/*.png'):
    img = cv2.imread(filename)
    height, width, layers = img.shape
    size = (width, height)
    img_array.append(img)
# avi:视频类型,mp4也可以
# cv2.VideoWriter_fourcc(*'DIVX'):编码格式
# 5:视频帧率
# size:视频中图片大小
out = cv2.VideoWriter('E:/3DS1Data/20211118/29984CRL30V00067087/dataset/project-all.avi',
                      cv2.VideoWriter_fourcc(*'DIVX'),
                      5, size)
for i in range(len(img_array)):
    out.write(img_array[i])
out.release()

下图是原始图片数据:

数据

生成的视频文件(播放中):

在这里插入图片描述

到此这篇关于Python实现图片与视频互转代码实战(亲测有效)的文章就介绍到这了,更多相关Python图片与视频互转内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python实现图片与视频互转代码实战(亲测有效)

本文链接: https://lsjlt.com/news/159113.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作