加载图像的最快方法是什么?

时间:2017-12-05 00:48:34

标签: pytorch

我有大约200,000张高分辨率图像,每次加载如此高质量的图像都非常耗时。 预加载所有图像可能会占用太多内存。 如何将每个图像保存为.npz文件格式并加载.npz而不是.jpg?它会提高速度吗?

1 个答案:

答案 0 :(得分:4)

您无需一次将所有图像加载到内存中。还考虑到我们需要在模型训练期间对数据集进行数据增强,因此无法加载所有图像。

在PyTorch中,您可以使用Dataset来存储您的培训和验证集。 Dataset类具有参数transforms(例如,Scale,RandomCrop等),其用于在训练期间即时变换训练图像。 torchvision包也提供了几个现成的数据集,请参阅here

基本方法

PyTorch的内置Dataloader有一个num_worker,用于控制用于加载数据的子进程数。由于您的数据集不是很大,这足以满足您的需求。关于如何设置适当的工作人员数量,请参阅here

更多参考资料

有关快速图像加载的PyTorch论坛的讨论,使用post1post2作为开始。