我正在将colab与已安装的Google驱动器配合使用,其中我有一个包含2000张图像的文件夹作为数据集。我正在寻找一种更好的方式来加载它们,因为即使是第一个时期,下一个也要花费很多时间。谢谢大家:)。
def decode_img(img):
img = tf.image.decode_jpeg(img,channels=3)
img = tf.image.convert_image_dtype(img, tf.float32)
img = (img - 0.5)/0.5
img = tf.image.resize(img, [IMG_SIZE,IMG_SIZE])
if tf.random.uniform(()) > 0.5:
img = tf.image.flip_left_right(img)
img = tf.image.random_crop(img, size=[IMG_SIZE,IMG_SIZE,3])
return img
def process_path(file_path):
img = tf.io.read_file(file_path)
img = decode_img(img)
return img
train_dataset = tf.data.Dataset.list_files(data_path+'/*.jpg', shuffle = True)
train_dataset = train_dataset.map(process_path, num_parallel_calls=tf.data.experimental.AUTOTUNE)
train_dataset = train_dataset.shuffle(BUFFER_SIZE).batch(BATCH_SIZE)
答案 0 :(得分:0)
我遇到了类似的问题,瓶颈是从Gdrive加载图像。如果合适,将所有映像加载到colab磁盘应该可以大大加快速度。将数据上传到colab后,此代码会将其加载到磁盘。
!mkdir train_local
!unzip train.zip -d train_local