(self)
| 451 | self.mem_bank_len = 0 if memory_bank is None else memory_bank.max_his_length |
| 452 | |
| 453 | def _generate_empty_tracks(self): |
| 454 | track_instances = Instances((1, 1)) |
| 455 | num_queries, dim = self.query_embed.weight.shape # (300, 512) |
| 456 | device = self.query_embed.weight.device |
| 457 | track_instances.ref_pts = self.transformer.reference_points(self.query_embed.weight[:, :dim // 2]) |
| 458 | track_instances.query_pos = self.query_embed.weight |
| 459 | track_instances.output_embedding = torch.zeros((num_queries, dim >> 1), device=device) |
| 460 | track_instances.obj_idxes = torch.full((len(track_instances),), -1, dtype=torch.long, device=device) |
| 461 | track_instances.matched_gt_idxes = torch.full((len(track_instances),), -1, dtype=torch.long, device=device) |
| 462 | track_instances.disappear_time = torch.zeros((len(track_instances), ), dtype=torch.long, device=device) |
| 463 | track_instances.iou = torch.zeros((len(track_instances),), dtype=torch.float, device=device) |
| 464 | track_instances.scores = torch.zeros((len(track_instances),), dtype=torch.float, device=device) |
| 465 | track_instances.track_scores = torch.zeros((len(track_instances),), dtype=torch.float, device=device) |
| 466 | track_instances.pred_boxes = torch.zeros((len(track_instances), 4), dtype=torch.float, device=device) |
| 467 | track_instances.pred_logits = torch.zeros((len(track_instances), self.num_classes), dtype=torch.float, device=device) |
| 468 | |
| 469 | mem_bank_len = self.mem_bank_len |
| 470 | track_instances.mem_bank = torch.zeros((len(track_instances), mem_bank_len, dim // 2), dtype=torch.float32, device=device) |
| 471 | track_instances.mem_padding_mask = torch.ones((len(track_instances), mem_bank_len), dtype=torch.bool, device=device) |
| 472 | track_instances.save_period = torch.zeros((len(track_instances), ), dtype=torch.float32, device=device) |
| 473 | |
| 474 | return track_instances.to(self.query_embed.weight.device) |
| 475 | |
| 476 | def clear(self): |
| 477 | self.track_base.clear() |
no outgoing calls
no test coverage detected