python使用openCV遍历文件夹里所有视频文件并保存成图片


Posted in Python onJanuary 14, 2020

如果你在文件夹里有很多视频,并且文件夹里还有文件夹,文件夹里的文件夹也有视频,怎么能逐个读取并且保存。。所以我写了个代码用了os,walk,这个可以遍历所有文件夹里的文件和文件夹

import os
import cv2
cut_frame = 250 # 多少帧截一次,自己设置就行
save_path = "C:\文献与资料\手持红外\图片"
for root, dirs, files in os.walk(r"C:\文献与资料\手持红外"): # 这里就填文件夹目录就可以了
 for file in files:
 # 获取文件路径
 if ('.mp4' in file):
  path = os.path.join(root, file)
  video = cv2.VideoCapture(path)
  video_fps = int(video.get(cv2.CAP_PROP_FPS))
  print(video_fps)
  current_frame = 0
  while (True):
  ret, image = video.read()
  current_frame = current_frame + 1
  if ret is False:
   video.release()
   break
  if current_frame % cut_frame == 0:
   # cv2.imwrite(save_path + '/' + file[:-4] + str(current_frame) + '.jpg',
   #  image) # file[:-4]是去掉了".mp4"后缀名,这里我的命名格式是,视频文件名+当前帧数+.jpg,使用imwrite就不能有中文路径和中文文件名
   cv2.imencode('.jpg', image)[1].tofile(save_path + '/' + file[:-4] + str(current_frame) + '.jpg') #使用imencode就可以整个路径中可以包括中文,文件名也可以是中文
   print('正在保存' + file + save_path + '/' + file[:-4] + str(current_frame))

ps:下面看下python 遍历文件夹

import os
# 遍历文件夹
def walkFile(file):
 for root, dirs, files in os.walk(file):
 # root 表示当前正在访问的文件夹路径
 # dirs 表示该文件夹下的子目录名list
 # files 表示该文件夹下的文件list
 # 遍历文件
 for f in files:
  print(os.path.join(root, f))
 # 遍历所有的文件夹
 for d in dirs:
  print(os.path.join(root, d))
def main():
 walkFile("f:/ostest/")
if __name__ == '__main__':
 main()

python使用openCV遍历文件夹里所有视频文件并保存成图片

总结

以上所述是小编给大家介绍的python使用openCV遍历文件夹里所有视频文件并保存成图片,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python基础教程之简单入门说明(变量和控制语言使用方法)
Mar 25 Python
Python os模块中的isfile()和isdir()函数均返回false问题解决方法
Feb 04 Python
基于python socketserver框架全面解析
Sep 21 Python
python实现机械分词之逆向最大匹配算法代码示例
Dec 13 Python
python调用Matplotlib绘制分布点并且添加标签
May 31 Python
利用python如何处理百万条数据(适用java新手)
Jun 06 Python
Python3 利用requests 库进行post携带账号密码请求数据的方法
Oct 26 Python
简单了解python单例模式的几种写法
Jul 01 Python
python将数组n等分的实例
Dec 02 Python
Python中的特殊方法以及应用详解
Sep 20 Python
python scrapy简单模拟登录的代码分析
Jul 21 Python
Python闭包的定义和使用方法
Apr 11 Python
pytorch实现mnist数据集的图像可视化及保存
Jan 14 #Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
Jan 14 #Python
python3.7通过thrift操作hbase的示例代码
Jan 14 #Python
解决pytorch DataLoader num_workers出现的问题
Jan 14 #Python
PyTorch实现ResNet50、ResNet101和ResNet152示例
Jan 14 #Python
python重要函数eval多种用法解析
Jan 14 #Python
关于ResNeXt网络的pytorch实现
Jan 14 #Python
You might like
基于qmail的完整WEBMAIL解决方案安装详解
2006/10/09 PHP
php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence错误的处理方法
2013/11/14 PHP
php实现smarty模板无限极分类的方法
2015/12/07 PHP
thinkPHP框架动态配置用法实例分析
2018/06/14 PHP
基于Jquery的实现回车键Enter切换焦点
2010/09/14 Javascript
jQuery Tips 为AJAX回调函数传递额外参数的方法
2010/12/28 Javascript
jquery ajax对特殊字符进行转义防止js注入使用示例
2013/11/21 Javascript
JavaScript中判断函数、变量是否存在
2015/06/10 Javascript
input点击后placeholder中的提示消息消失
2016/01/15 Javascript
javascript实现label标签跳出循环操作
2016/03/06 Javascript
原生JS实现垂直手风琴效果
2017/02/19 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
Three.js实现浏览器变动时进行自适应的方法
2017/09/26 Javascript
使用axios实现上传图片进度条功能
2017/12/21 Javascript
JavaScript防止全局变量污染的方法总结
2018/08/02 Javascript
小程序实现单选多选功能
2018/11/04 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
axios解决高并发的方法:axios.all()与axios.spread()的操作
2020/11/09 Javascript
[02:32]DOTA2英雄基础教程 祸乱之源
2013/12/23 DOTA
Python3基础之list列表实例解析
2014/08/13 Python
Python中的模块和包概念介绍
2015/04/13 Python
python实现将汉字转换成汉语拼音的库
2015/05/05 Python
python距离测量的方法
2018/03/06 Python
Python 实现字符串中指定位置插入一个字符
2018/05/02 Python
python获取代理IP的实例分享
2018/05/07 Python
python3使用smtplib实现发送邮件功能
2018/05/22 Python
Python实现多线程的两种方式分析
2018/08/29 Python
python3 深浅copy对比详解
2019/08/12 Python
django 模型中的计算字段实例
2020/05/19 Python
巴西美妆购物网站:Kutiz Beauté
2019/03/13 全球购物
Ariat英国官网:为世界顶级马术运动员制造最优质的鞋类和服装
2020/02/14 全球购物
经典的班主任推荐信
2013/10/28 职场文书
工程力学硕士生的自我评价范文
2013/11/16 职场文书
2014年乡镇工会工作总结
2014/12/02 职场文书
2014年英语工作总结
2014/12/20 职场文书
php访问对象中的成员的实例方法
2021/11/17 PHP