利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法


Posted in Python onJanuary 08, 2019

由于跑编码的需要,所以需要制作一个.yuv格式的图片数据集,但是手头只有.jpg格式的,故记录下转换过程。其他图片格式也可以,代码里修改一下就行。

①安装ffmpeg

官网(各种版本):ffmepg官网

window版:https://ffmpeg.zeranoe.com/builds/

②安装ffmpeg的python3接口ffmpy3

在命令行中输入以下命令:

pip install ffmpy3

③将下载好的windows版解压,把ffmpeg.exe复制到你将要跑python代码的文件夹里

④python代码如下:

# -*- coding: utf-8 -*-
import os
from PIL import Image
from ffmpy3 import FFmpeg
 
in_jpgDatasetPath = 'I:/VOC/trainval'
out_yuvDatasetPath = 'I:/VVC/loop/yuvdataset'
 
piclist = os.listdir(in_jpgDatasetPath)
for pic in piclist:
 picname = pic.split('.')[0]
 picpath = os.path.join(in_jpgDatasetPath,pic)
 img = Image.open(picpath)
 in_wid,in_hei = img.size
 out_wid = in_wid//16*16
 out_hei = in_hei//16*16
 size = '{}x{}'.format(out_wid,out_hei) #输出文件会缩放成这个大小
 outname = out_yuvDatasetPath + '/' + picname + '_'+size+ '.yuv'
 
 ff = FFmpeg(inputs={picpath:None},
    outputs={outname:'-s {} -pix_fmt yuv420p'.format(size)})
 print(ff.cmd)
 ff.run()

以上这篇利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python使用arrow库优雅地处理时间数据详解
Oct 10 Python
Python 读取图片文件为矩阵和保存矩阵为图片的方法
Apr 27 Python
Python3使用SMTP发送带附件邮件
Jun 16 Python
Django实现表单验证
Sep 08 Python
python高级特性和高阶函数及使用详解
Oct 17 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
Jan 23 Python
谈谈Python中的while循环语句
Mar 10 Python
浅谈Django+Gunicorn+Nginx部署之路
Sep 11 Python
python列表插入append(), extend(), insert()用法详解
Sep 14 Python
python下载的库包存放路径
Jul 27 Python
详解PyQt5中textBrowser显示print语句输出的简单方法
Aug 07 Python
python中对列表的删除和添加方法详解
Feb 24 Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
Jan 08 #Python
Python OpenCV对本地视频文件进行分帧保存的实例
Jan 08 #Python
python-opencv 将连续图片写成视频格式的方法
Jan 08 #Python
对Python+opencv将图片生成视频的实例详解
Jan 08 #Python
Python中的heapq模块源码详析
Jan 08 #Python
python使用PIL模块获取图片像素点的方法
Jan 08 #Python
python 获取图片分辨率的方法
Jan 08 #Python
You might like
CI(CodeIgniter)框架中的增删改查操作
2014/06/10 PHP
PHP中文乱码解决方案
2015/03/05 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
thinkPHP中分页用法实例分析
2015/12/26 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
Jquery中使用show()与hide()方法动画显示和隐藏图片
2015/10/08 Javascript
Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果
2016/05/27 Javascript
JavaScript定义数组的三种方法(new Array(),new Array('x','y')
2016/10/04 Javascript
vue中渐进过渡效果实现
2016/10/27 Javascript
详解webpack介绍&安装&常用命令
2017/06/29 Javascript
JS+Ajax实现百度智能搜索框
2017/08/04 Javascript
浅谈angular4生命周期钩子
2017/09/05 Javascript
Bootstrap Tooltip显示换行和左对齐的解决方案
2017/10/11 Javascript
JS实现提交表单前的数字及邮箱校检功能
2017/11/13 Javascript
vue.js中引入vuex储存接口数据及调用的详细流程
2017/12/14 Javascript
解决Layui数据表格的宽高问题
2019/09/28 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
Object.keys() 和 Object.getOwnPropertyNames() 的区别详解
2020/05/21 Javascript
vue全局使用axios的操作
2020/09/08 Javascript
Python中使用urllib2模块编写爬虫的简单上手示例
2016/01/20 Python
python实现校园网自动登录的示例讲解
2018/04/22 Python
Python OpenCV处理图像之滤镜和图像运算
2018/07/10 Python
Python全排列操作实例分析
2018/07/24 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
2019/01/30 Python
详解Python传入参数的几种方法
2019/05/16 Python
Pycharm使用之设置代码字体大小和颜色主题的教程
2019/07/12 Python
pytorch 模型可视化的例子
2019/08/17 Python
django 解决model中类写不到数据库中,数据库无此字段的问题
2020/05/20 Python
CSS3中:nth-child和:nth-of-type的区别深入理解
2014/03/10 HTML / CSS
解决python 输出到csv 出现多空行的情况
2021/03/24 Python
《雾凇》教学反思
2014/02/17 职场文书
个人自查自纠材料
2014/10/14 职场文书
教师节表彰会主持词
2015/07/06 职场文书
物业公司管理制度
2015/08/05 职场文书
Python 批量下载阴阳师网站壁纸
2021/05/19 Python
PC版《死亡搁浅导剪版》现已发售 展开全新的探险
2022/04/03 其他游戏