我目前正在为我想出的深度学习项目处理约10,000张600x450px图像的大型数据集。到目前为止,我已经尝试了几种不同的方法将这些图像导入到我的程序中,尽管我注意到它们都花费了很长时间。平心而论,我知道我的数据集的大小绝对不小,但我只是想知道是否有更好的方法可以这样做,因为我的数据的导入阶段仅完成了25%在我撰写本文时,它已经进行了大约9个小时。我愿意接受任何人可能提出的关于更有效地导入此数据的建议;我试图最终使张量的图像数据表示为numpy矩阵,因为我想出的深度学习项目涉及卷积神经网络。也许我最好按比例缩小图像?如果是这种情况,请让我知道我如何有效地做到这一点,因为就像我说的那样,其中有10,000个。这是我的工作代码:
DATADIR = "./HAM10000/skin-cancer-mnist-ham10000/HAM10000_full"
lesions = []
for image in range(24306, 34320):
printProgressBar(image-24306, 34320-24306, prefix='Import', decimals=2)
path = os.path.join(DATADIR, ("ISIC_" + "{:07d}".format(image) + ".jpg")) # path to lesion images
lesions = np.append(lesions, cv2.imread(path))
尽管您可以看到我正在使用cv2.imread加载每个单独的图像,并将该图像附加到numpy数组,但是这里的大多数代码都是简单地获得正确的图像名称。