コード例 #1
0
 def forward_test(self, images):
     images = to_image_list(images).to(self.device)
     features = self.backbone(images.tensors)
     results = self.rpn(images, features)
     if hasattr(self, "roi_heads"):
         results = self.roi_heads(features, results)
     return results
コード例 #2
0
 def forward_train(self, images, targets):
     images = to_image_list(images).to(self.device)
     targets = [target.to(self.device) for target in targets]
     features = self.backbone(images.tensors)
     proposals, losses = self.rpn(images, features, targets)
     if hasattr(self, "roi_heads"):
         losses.update(self.roi_heads(features, proposals, targets))
     return losses
コード例 #3
0
def im_detect_bbox(model, images, target_scale, target_max_size, device):
    """
    Performs bbox detection on the original image.
    """
    transform = TT.Compose([
        T.Resize(target_scale, target_max_size),
        TT.ToTensor(),
        T.Normalize(mean=cfg.INPUT.PIXEL_MEAN,
                    std=cfg.INPUT.PIXEL_STD,
                    to_bgr255=cfg.INPUT.TO_BGR255)
    ])
    images = [transform(image) for image in images]
    images = to_image_list(images, cfg.DATALOADER.SIZE_DIVISIBILITY)
    return model(images.to(device))
コード例 #4
0
def im_detect_bbox_hflip(model, images, target_scale, target_max_size, device):
    """
    Performs bbox detection on the horizontally flipped image.
    Function signature is the same as for im_detect_bbox.
    """
    transform = TT.Compose([
        T.Resize(target_scale, target_max_size),
        TT.RandomHorizontalFlip(1.0),
        TT.ToTensor(),
        T.Normalize(mean=cfg.INPUT.PIXEL_MEAN,
                    std=cfg.INPUT.PIXEL_STD,
                    to_bgr255=cfg.INPUT.TO_BGR255)
    ])
    images = [transform(image) for image in images]
    images = to_image_list(images, cfg.DATALOADER.SIZE_DIVISIBILITY)
    boxlists = model(images.to(device))

    # Invert the detections computed on the flipped image
    boxlists_inv = [boxlist.transpose(0) for boxlist in boxlists]
    return boxlists_inv