4141import pandas as pd
4242import torch
4343
44- from detectron2 .data import MetadataCatalog
45- from detectron2 .evaluation import COCOEvaluator
46- from detectron2 .utils .visualizer import Visualizer
47- from jde .utils .io import unzip_objs
48- from mmpose .datasets .datasets import BaseCocoStyleDataset
49- from mmpose .datasets .transforms import PackPoseInputs
50- from mmpose .evaluation .metrics import CocoMetric
51- from pycocotools .coco import COCO
5244from pytorch_msssim import ms_ssim
5345from tqdm import tqdm
54- from yolox .data .datasets .coco import remove_useless_info
55- from yolox .evaluators import COCOEvaluator as YOLOX_COCOEvaluator
56- from yolox .utils import xyxy2xywh
5746
5847from compressai_vision .datasets import deccode_compressed_rle
5948from compressai_vision .registry import register_evaluator
@@ -132,6 +121,8 @@ def __init__(
132121
133122 self .set_annotation_info (dataset )
134123
124+ from detectron2 .evaluation import COCOEvaluator
125+
135126 self ._evaluator = COCOEvaluator (
136127 dataset_name , False , output_dir = output_dir , use_fast_impl = False
137128 )
@@ -156,6 +147,9 @@ def save_visualization(self, gt, pred, output_dir, threshold):
156147 gt_image = cv2 .resize (gt_image , (gt [0 ]["width" ], gt [0 ]["height" ]))
157148
158149 img_id = gt [0 ]["image_id" ]
150+ from detectron2 .data import MetadataCatalog
151+ from detectron2 .utils .visualizer import Visualizer
152+
159153 metadata = MetadataCatalog .get (self .dataset_name )
160154 instances = pred [0 ]["instances" ].to ("cpu" )
161155 if threshold :
@@ -343,6 +337,9 @@ def save_visualization(self, gt, pred, output_dir, threshold):
343337 gt_image = cv2 .resize (gt_image , (gt [0 ]["width" ], gt [0 ]["height" ]))
344338
345339 img_id = gt [0 ]["image_id" ]
340+ from detectron2 .data import MetadataCatalog
341+ from detectron2 .utils .visualizer import Visualizer
342+
346343 metadata = MetadataCatalog .get (self .dataset_name )
347344 instances = pred [0 ]["instances" ].to ("cpu" )
348345
@@ -575,6 +572,10 @@ def __init__(
575572
576573 self .set_annotation_info (dataset )
577574
575+ from jde .utils .io import unzip_objs
576+
577+ self .unzip_objs = unzip_objs
578+
578579 mm .lap .default_solver = "lap"
579580 self .dataset = dataset .dataset
580581 self .eval_info_file_name = self .get_jde_eval_info_name (self .dataset_name )
@@ -734,13 +735,13 @@ def mot_eval(self):
734735 frm_id = int (gt_frame ["image_id" ])
735736
736737 pred_objs = self ._predictions [frm_id ].copy ()
737- pred_tlwhs , pred_ids , _ = unzip_objs (pred_objs )
738+ pred_tlwhs , pred_ids , _ = self . unzip_objs (pred_objs )
738739
739740 gt_objs = gt_frame ["annotations" ]["gt" ].copy ()
740- gt_tlwhs , gt_ids , _ = unzip_objs (gt_objs )
741+ gt_tlwhs , gt_ids , _ = self . unzip_objs (gt_objs )
741742
742743 gt_ignore = gt_frame ["annotations" ]["gt_ignore" ].copy ()
743- gt_ignore_tlwhs , _ , _ = unzip_objs (gt_ignore )
744+ gt_ignore_tlwhs , _ , _ = self . unzip_objs (gt_ignore )
744745
745746 # remove ignored results
746747 keep = np .ones (len (pred_tlwhs ), dtype = bool )
@@ -913,6 +914,10 @@ def __init__(
913914 datacatalog_name , dataset_name , dataset , output_dir , eval_criteria
914915 )
915916
917+ from pycocotools .coco import COCO
918+ from yolox .data .datasets .coco import remove_useless_info
919+ from yolox .evaluators import COCOEvaluator as YOLOX_COCOEvaluator
920+
916921 self .set_annotation_info (dataset )
917922
918923 cocoapi = COCO (self .annotation_path )
@@ -1055,6 +1060,16 @@ def __init__(
10551060 dataset .get_org_mapper_func ().compute_scale_and_center
10561061 )
10571062
1063+ try :
1064+ from mmpose .datasets .datasets import BaseCocoStyleDataset
1065+ from mmpose .datasets .transforms import PackPoseInputs
1066+ from mmpose .evaluation .metrics import CocoMetric
1067+ except ImportError :
1068+ self ._logger .error (
1069+ "Failed to import mmpose. Please install it, e.g. with 'pip install mmpose'."
1070+ )
1071+ raise
1072+
10581073 if "metainfo" in args :
10591074 metainfo = args ["metainfo" ]
10601075 else :
0 commit comments