- 逛stackflow发现一个好用的库,虽然现在用不着,但是可以记下来,说不定有机会用呢。
Description
这个库能很容易的将RGB视频文件(如:avi,mp4)转换为用于神经网络训练的tensorflow tfrecords 文件格式。由于深度学习中gpu和内存都是稀缺资源,所以这个项目中也允许限制每个视频保存到tfrecord中的图片数,同样也可以全部保存下来。代码自动决定步长,保证采样属于等间隔分布。
Installation
pip install video2tfrecord
Writing (video) to tfrecord
安装完package后,执行下面命令开始:
convert_videos_to_tfrecord(source_path, destination_path, n_videos_in_record, n_frames_per_video, "*.avi")
这里的 n_videos_in_record 是一个tfrecord 文件中video的数量;n_frames_per_video 是每个视频文件保存下来的图片个数;source_path 是视频文件路径;设置n_frames_per_video=”all” 如果你想把视频中所有图片都保存下来。
Reading from tfrecord
看 test.py 中的例子
Manual installation
需要的依赖库
- Python 3.4, 3.5 and 3.6
- tensorflow 1.5.0
- opencv-python 3.4.0.12
- numpy 1.14.0
Github source code
Additional contributors: Jonas Rothfuss (https://github.com/jonasrothfuss/)