如何从csv文件中提取图像,标签并使用火炬创建火车集?



>我下载了一个用于面部关键点检测的数据集,图像和标签在CSV文件中,我使用熊猫提取了它,但我不知道如何将其转换为张量并将其加载到数据加载器中进行训练。

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加载它。

创建一个torch.utils.data.Dataset的子类,用您的数据填充它。 您可以将所需的torchvision.transforms传递给它,并将它们应用于__getitem__(self, index)中的数据。

您可以将其传递给允许多线程加载数据的torch.utils.data.DataLoader

PyTorch 有一个压倒性的文档,你应该首先参考。

最新更新