Я пытаюсь использовать данные COCO 2014 для обучения семантике c в PyTorch. У меня есть модель PS PNet с функцией кросс-энтропийной потери, которая отлично работала на наборе данных PASCAL VO C с 2012 года. Теперь я пытаюсь использовать часть изображений COCO для того же процесса. Но у Coco есть json данные вместо .png изображений для аннотации, и мне как-то приходится скрывать одно в другое. Я заметил, что в cocotools есть annToMask, но я не могу понять, как использовать эту функцию в моем случае. Вот как выглядит элемент извлечения моего загрузчика данных
def pull_item(self, index):
I DONT KNOW WHAT TO DO HERE
raw_img = self.transform(raw_img)
anns_img = self.transform(anns_img)
return raw_img, anns_img
Ниже показано, как выглядит моя обучающая функция, использующая данные из загрузчиков данных.
for images, labels in dataloaders_dict[phase]:
images = images.to(device)
labels = torch.squeeze(labels)
labels = labels.to(device)
with torch.set_grad_enabled(phase == 'train'):
outputs = net(images)
loss = criterion(outputs, labels.long())