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 cookbook(数据结构与算法)实现对不原生支持比较操作的对象排序算法示例
Mar 15 Python
python爬虫之xpath的基本使用详解
Apr 18 Python
python issubclass 和 isinstance函数
Jul 25 Python
selenium+PhantomJS爬取豆瓣读书
Aug 26 Python
python实现输出一个序列的所有子序列示例
Nov 18 Python
在Python中利用pickle保存变量的实例
Dec 30 Python
python json.dumps中文乱码问题解决
Apr 01 Python
python 将视频 通过视频帧转换成时间实例
Apr 23 Python
完美解决keras 读取多个hdf5文件进行训练的问题
Jul 01 Python
python asyncio 协程库的使用
Jan 21 Python
python函数的两种嵌套方法使用
Apr 02 Python
Python数据可视化之Seaborn的安装及使用
Apr 19 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
ftp类(example.php)
2006/10/09 PHP
PHP空值检测函数与方法汇总
2017/11/19 PHP
tagName的使用,留一笔
2006/06/26 Javascript
javascript:以前写的xmlhttp池,代码
2008/05/18 Javascript
javascript 函数速查表
2010/02/07 Javascript
jQuery Deferred和Promise创建响应式应用程序详细介绍
2013/03/05 Javascript
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
2013/04/20 Javascript
javascript实现链接单选效果的方法
2015/05/13 Javascript
js实现带圆角的两级导航菜单效果代码
2015/08/24 Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
2017/01/22 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
vue.js实现备忘录功能的方法
2017/07/10 Javascript
Vue中的基础过渡动画及实现原理解析
2018/12/04 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
基于vue-cli 路由 实现类似tab切换效果(vue 2.0)
2019/05/08 Javascript
JS中自定义事件的使用与触发操作实例分析
2019/11/01 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
2020/08/13 Javascript
使用原生javascript开发计算器实例代码
2021/02/21 Javascript
使用 Python 实现简单的 switch/case 语句的方法
2018/09/17 Python
对python中的six.moves模块的下载函数urlretrieve详解
2018/12/19 Python
Python实现的矩阵转置与矩阵相乘运算示例
2019/03/26 Python
使用turtle绘制五角星、分形树
2019/10/06 Python
Python StringIO如何在内存中读写str
2020/01/07 Python
CSS3实现粒子旋转伸缩加载动画
2016/04/22 HTML / CSS
美特斯邦威官方商城:邦购网
2016/10/13 全球购物
Mountain Warehouse波兰官方网站:英国户外品牌
2019/08/29 全球购物
SK-II神仙水美国官网:SK-II美国
2020/02/25 全球购物
加拿大领先家居家具网上购物:Aosom.ca
2020/05/27 全球购物
俄罗斯达美乐比萨外送服务:Domino’s Pizza
2020/12/18 全球购物
巴西24小时在线药房:Drogasil
2020/06/20 全球购物
如何提高JDBC的性能
2013/04/30 面试题
Java基础类库面试题
2013/09/04 面试题
计算机大学生的自我评价
2013/10/15 职场文书
学校学雷锋活动总结
2014/06/26 职场文书
2014年企业团支部工作总结
2014/12/10 职场文书
Python可视化动图组件ipyvizzu绘制惊艳的可视化动图
2022/04/21 Python