# ravel test detections def ravel_detections(detection_db, cls): detection_list = [] for vid, dets in detection_db[cls].items(): detection_list.extend([[vid, cls] + x[:3] for x in dets.tolist()]) df = pd.DataFrame(detection_list, columns=["video-id", "cls", "t-start", "t-end", "score"]) return df plain_detections = [ ravel_detections(dataset_detections, cls) for cls in range(num_class) ] # get gt all_gt = pd.DataFrame(dataset.get_all_gt(), columns=["video-id", "cls", "t-start", "t-end"]) gt_by_cls = [] for cls in range(num_class): gt_by_cls.append(all_gt[all_gt.cls == cls].reset_index(drop=True).drop( 'cls', 1)) pickle.dump(gt_by_cls, open('gt_dump.pc', 'wb'), pickle.HIGHEST_PROTOCOL) pickle.dump(plain_detections, open('pred_dump.pc', 'wb'), pickle.HIGHEST_PROTOCOL) print("Calling mean AP calculator from toolkit with {} workers...".format( args.ap_workers)) if args.dataset == 'activitynet1.2': iou_range = np.arange(0.5, 1.0, 0.05) elif args.dataset == 'thumos14':
print("Skip regresssion as requested by --no_regression") # ravel test detections def ravel_detections(detection_db, cls): detection_list = [] for vid, dets in detection_db[cls].items(): detection_list.extend([[vid, cls] + x[:3] for x in dets.tolist()]) df = pd.DataFrame(detection_list, columns=["video-id", "cls","t-start", "t-end", "score"]) return df plain_detections = [ravel_detections(dataset_detections, cls) for cls in range(num_class)] # get gt all_gt = pd.DataFrame(dataset.get_all_gt(), columns=["video-id", "cls","t-start", "t-end"]) gt_by_cls = [] for cls in range(num_class): gt_by_cls.append(all_gt[all_gt.cls == cls].reset_index(drop=True).drop('cls', 1)) pickle.dump(gt_by_cls, open('gt_dump.pc', 'wb'), pickle.HIGHEST_PROTOCOL) pickle.dump(plain_detections, open('pred_dump.pc', 'wb'), pickle.HIGHEST_PROTOCOL) print("Calling mean AP calculator from toolkit with {} workers...".format(args.ap_workers)) if args.dataset == 'activitynet1.2': iou_range = np.arange(0.5, 1.0, 0.05) elif args.dataset == 'thumos14': iou_range = np.arange(0.1, 1.0, 0.1) elif args.dataset == 'coin_small': iou_range = np.arange(0.1, 1.0, 0.1) else:
for vid, dets in list(detection_db[cls].items()): detection_list.extend([[vid, cls] + x[:3] for x in dets.tolist()]) df = pd.DataFrame( detection_list, columns=["video-id", "cls", "t-start", "t-end", "score"] ) return df plain_detections = [ ravel_detections(dataset_detections, cls) for cls in range(num_class) ] # get gt all_gt = pd.DataFrame( dataset.get_all_gt(), columns=["video-id", "cls", "t-start", "t-end"] ) gt_by_cls = [] for cls in range(num_class): gt_by_cls.append(all_gt[all_gt.cls == cls].reset_index(drop=True).drop("cls", 1)) pickle.dump(gt_by_cls, open("gt_dump.pc", "wb"), pickle.HIGHEST_PROTOCOL) pickle.dump(plain_detections, open("pred_dump.pc", "wb"), pickle.HIGHEST_PROTOCOL) print( ( "Calling mean AP calculator from toolkit with {} workers...".format( args.ap_workers ) ) )
print("Skip regresssion as requested by --no_regression") # ravel test detections def ravel_detections(detection_db, cls): detection_list = [] for vid, dets in detection_db[cls].items(): detection_list.extend([[vid, cls] + x[:3] for x in dets.tolist()]) df = pd.DataFrame(detection_list, columns=["video-id", "cls","t-start", "t-end", "score"]) return df plain_detections = [ravel_detections(dataset_detections, cls) for cls in range(num_class)] # get gt all_gt = pd.DataFrame(dataset.get_all_gt(), columns=["video-id", "cls","t-start", "t-end"]) gt_by_cls = [] for cls in range(num_class): gt_by_cls.append(all_gt[all_gt.cls == cls].reset_index(drop=True).drop('cls', 1)) pickle.dump(gt_by_cls, open('gt_dump.pc', 'wb'), pickle.HIGHEST_PROTOCOL) pickle.dump(plain_detections, open('pred_dump.pc', 'wb'), pickle.HIGHEST_PROTOCOL) print("Calling mean AP calculator from toolkit with {} workers...".format(args.ap_workers)) if args.dataset == 'activitynet1.2': iou_range = np.arange(0.5, 1.0, 0.05) elif args.dataset == 'thumos14': iou_range = np.arange(0.1, 1.0, 0.1) else: raise ValueError("unknown dataset {}".format(args.dataset))