, когда я пытаюсь настроить pytorcfaster-rcnn, следуя официальному руководству: https://pytorch.org/tutorials/intermediate/torchvision_tutorial.html с набором данных Wider-Face.
Я получил: RuntimeError: размеры ввода и вывода должны быть больше 0, но получил вход (H: 1024, W: 1), выход (H: 800, W: 0)
вот функция getitem набора данных, которую я использовал:
def __getitem__(self,idx):
img_path = self.imgs[idx]
ann_path = self.anns[idx]
img_id = self.images_id[idx]
img = Image.open(img_path).convert('RGB')
img = np.asarray(img)
img = img/255.0
img = np.moveaxis(img,2,0)
img = torch.from_numpy(img).float()
boxes ,w,h= self.__extract_boxes__(ann_path)
masks = np.zeros([h,w,len(boxes)],dtype='uint8')
labels=list()
for i in range (len(boxes)):
box = boxes[i]
row_s,row_e = box[1],box[3]
col_s,col_e = box[0],box[2]
masks[row_s:row_e,col_s:col_e,i]=1
labels.append(1)
boxes = torch.as_tensor(boxes,dtype=torch.float32)
masks = torch.as_tensor(masks,dtype=torch.uint8)
labels = torch.ones((len(labels),),dtype=torch.int64)
image_id = torch.tensor([idx])
area = (boxes[:, 3] - boxes[:, 1]) * (boxes[:, 2] - boxes[:, 0])
target = {}
target['boxes']=boxes
target['labels'] = labels
target['masks']=masks
target['image_id']=image_id
target['area']=area
return img,target