如何在谷歌 colab 中读取图像数据集以进行深度学习?

Posted

技术标签:

【中文标题】如何在谷歌 colab 中读取图像数据集以进行深度学习?【英文标题】:How to read images dataset in google colab for deep learning? 【发布时间】:2020-10-20 14:17:34 【问题描述】:

我是深度学习的初学者。我对如何在 Google Colab 中读取图像数据集感到困惑。基本上,数据集包含 2 个用于训练和测试图像的文件夹以及 2 个用于训练和测试标签的 csv 文件。现在我需要识别需要先读取数据然后拆分数据的图像的舞蹈模式。

但是我尝试使用以下代码读取数据集:

zip_path = '/content/0664343c9a8f11ea.zip'
with ZipFile(zip_path) as z:
    data = z.namelist()

此代码工作并读取数据,但以列表的形式。稍后我将无法将其拆分为用于创建神经网络的训练和测试。而且每张图片的大小都不一样,我该怎么处理呢?

请帮忙。将不胜感激。

谢谢 普拉奇

【问题讨论】:

我认为google-co-lab是一个必不可少的标签,应该添加而不是神经网络。每个专家都知道深度学习是一种神经网络。 如果对您有帮助,请查看此链接colab.research.google.com/drive/… 【参考方案1】:

有很多方法可以读取图像以输入模型。一种基本方法是将图像转换为 numpy 数组。使用图像的 zip 文件,您可以采取以下步骤来获取图像的 numpy 数组。这适用于任何 Python 内核,无论是 Google Colab 还是您的本地内核。

    解压图片 获取图片路径 读取图像并转换为 numpy 数组
import zipfile  # unziping 
import glob  # finding image paths
import numpy as np  # creating numpy arrays
from skimage.io import imread  # reading images
from skimage.transform import resize  # resizing images

# 1. Unzip images
path = 'your zip file path'
with zipfile.ZipFile(path, 'r') as zip_ref:
    zip_ref.extractall('path for extracted images')

# 2. Obtain paths of images (.png used for example)
img_list = sorted(glob.glob('path for extracted images/*.png'))

# 3. Read images & convert to numpy arrays
## create placeholding numpy arrays
IMG_SIZE = 256 (image resolution of 256 x 256 used for example)
x_data = np.empty((len(img_list), IMG_SIZE, IMG_SIZE, 1), dtype=np.float32)

## read and convert to arrays
for i, img_path in enumerate(img_list):
    # read image
    img = imread(img_path)
    # resize image (1 channel used for example; 1 for gray-scale, 3 for RGB-scale)
    img = resize(img, output_shape=(IMG_SIZE, IMG_SIZE, 1), preserve_range=True)
    # save to numpy array
    x_data[i] = img

毕竟,您有一个 numpy 数组 x_data,其中包含您的图像。然后可以使用该数组来训练或测试您的模型。 希望这会有所帮助。

【讨论】:

非常感谢您的回复 如果我的回答有助于解决您的问题,请接受我的回答。它将帮助社区继续前进。 :)

以上是关于如何在谷歌 colab 中读取图像数据集以进行深度学习?的主要内容,如果未能解决你的问题,请参考以下文章

如何在谷歌colab中使用TPU

如何在谷歌colab中安装web3

如何在谷歌 colab 上恢复到默认的 tensorflow 版本

在谷歌 colab 中使用带有 TPU 的 Keras 调谐器搜索方法时如何解决“从空列表中弹出”错误?

如何从 google colab 的压缩文件夹中读取/导入训练和测试图像以进行多分类? gdrive 已安装到 gcolab

深度学习及pytorch基础