如何从 csv 文件中提取图像、标签并使用 Torch 创建训练集?
Posted
技术标签:
【中文标题】如何从 csv 文件中提取图像、标签并使用 Torch 创建训练集?【英文标题】:How to extract images, labels from csv file and create a trainset using torch? 【发布时间】:2020-03-18 17:10:59 【问题描述】:我下载了一个用于面部关键点检测的数据集,图像和标签位于 CSV 文件中,我使用 pandas 提取了它,但我不知道如何将其转换为张量并将其加载到数据加载器中进行训练。
dataframe = pd.read_csv("training_facial_keypoints.csv")
dataframe['Image'] = dataframe['Image'].apply(lambda i: np.fromstring(i, sep=' '))
dataframe= dataframe.dropna()
images_array = np.vstack(dataframe['Image'].values)/255.0
images_array = images_array.astype(np.float32)
images_array = images_array.reshape(-1, 96, 96, 1)
print(images_array.shape)
labels_array = dataframe[dataframe.columns[:-1]].values
labels_array = (labels_array-48)/48
labels_array = labels_array.astype(np.float32)
我有两个数组中的图像和标签。如何从中创建训练集并使用转换。
然后使用dataloader
加载它。
【问题讨论】:
【参考方案1】:创建torch.utils.data.Dataset
的子类,用您的数据填充它。
您可以将所需的torchvision.transforms
传递给它,并将它们应用于__getitem__(self, index)
中的数据。
你可以将它传递给torch.utils.data.DataLoader
,它允许多线程加载数据。
而且 PyTorch 有一个压倒性的 documentation 你应该首先参考。
【讨论】:
以上是关于如何从 csv 文件中提取图像、标签并使用 Torch 创建训练集?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 zip 中提取 csv 文件并在 python 中将其保存到磁盘? [复制]