我存储了一个视频数据集,例如每个视频对应一个包含相应帧的文件夹。这些是jpeg,由于空间限制,无法在tfrecord中转换。
我想从随机选择的视频(文件夹)中采样x个连续的帧,并对它们进行批处理,以使每批都有来自不同视频的剪辑。
我正在尝试
dset = tf.data.Dataset.from_tensor_slices((folders, labels))
dset = dset.map(parse_fun)
dset = dset.batch(10)
但是我不清楚parse_fun应该如何:
1-列出每个文件夹(已排序)中的文件名(框架)
2个样本x从此列表中连续
3-读取并返回
我猜可能的解决方案是为每个视频包含一个tfrecord,其中包含每个帧,样本的文件名,然后读取它们。但这是最简单/推荐的方法吗?
谢谢!