首页 > 解决方案 > 大型数据集上的 np_expand 和 np.concatenate

问题描述

我正在一个相对较大的数据集上执行一些数据转换(扩展每个图像的维度,然后将它们连接起来进行训练):来自 wiki 数据集的 62,000 张人脸图像。但是,使用下面的代码,我已经加载了 6 个多小时的数据,它仍然不完整......我该如何改进这里加载图像的过程?下面的代码来自Generative Adversarial Networks Projects一书。整个代码可以在这里找到

def load_images(data_dir, image_paths, image_shape):
images = None

for i, image_path in enumerate(image_paths):
    print()
    try:
        # Load image
        loaded_image = image.load_img(os.path.join(data_dir, image_path), target_size=image_shape)

        # Convert PIL image to numpy ndarray
        loaded_image = image.img_to_array(loaded_image)

        # Add another dimension (Add batch dimension)
        loaded_image = np.expand_dims(loaded_image, axis=0)

        # Concatenate all images into one tensor
        if images is None:
            images = loaded_image
        else:
            images = np.concatenate([images, loaded_image], axis=0)
    except Exception as e:
        print("Error:", i, e)

return images

标签: pythonnumpydeep-learninggenerative-adversarial-network

解决方案


推荐阅读