Open zhongxiangzju opened 2 years ago
It is the output of bbox head (RoI Align+FCs).
We add a hook to roi_heads.py.
def _forward_box(self, features: Dict[str, torch.Tensor], proposals: List[Instances], targets=None):
#####
# remove some lines
#####
if self.log_feature:
gt_classes = torch.cat([p.gt_classes for p in targets])
# gt_classes = torch.cat([p.gt_classes for p in proposals])
if isinstance(box_features, tuple):
box_features = self.box_pooler(
features, [x.gt_boxes for x in targets])
box_features = self.box_head(box_features)
self._save_features(box_features[1], gt_classes)
else:
self._save_features(box_features, gt_classes)
Thanks a lot. Another issue is that what's the difference between baseline in Table 3 and FR-CNN in Table 1? Their results are quite similar, but not the same.
screenshot of Table 1
screenshot of Table 3
FR-CNN
is a standard FR-CNN, while baseline
denotes a variant of FR-CNN with some modifications (see Sec. 3.2).
Although the baseline
does not improve the open-set performance, it works better for our CFL and UPL.
Nice job! Could you please explain the "latent feature" used in Figure 2 clearer? Is it the output of Contrastive Head(CH) OR the input of CH(output of RoI Align after flattern)? Thanks.