def setup_detectron2_predictors(silhouettes_from='densepose'): # Keypoint-RCNN kprcnn_config_file = "COCO-Keypoints/keypoint_rcnn_R_50_FPN_3x.yaml" kprcnn_cfg = get_cfg() kprcnn_cfg.merge_from_file(model_zoo.get_config_file(kprcnn_config_file)) kprcnn_cfg.MODEL.ROI_HEADS.SCORE_THRESH_TEST = 0.7 # set threshold for this model kprcnn_cfg.MODEL.WEIGHTS = model_zoo.get_checkpoint_url(kprcnn_config_file) kprcnn_cfg.freeze() joints2D_predictor = DefaultPredictor(kprcnn_cfg) if silhouettes_from == 'pointrend': # PointRend-RCNN-R50-FPN pointrend_config_file = "PointRend/configs/InstanceSegmentation/pointrend_rcnn_R_50_FPN_3x_coco.yaml" pointrend_cfg = get_cfg() add_pointrend_config(pointrend_cfg) pointrend_cfg.merge_from_file(pointrend_config_file) pointrend_cfg.MODEL.WEIGHTS = "checkpoints/pointrend_rcnn_R_50_fpn.pkl" pointrend_cfg.freeze() silhouette_predictor = DefaultPredictor(pointrend_cfg) elif silhouettes_from == 'densepose': # DensePose-RCNN-R101-FPN densepose_config_file = "DensePose/configs/densepose_rcnn_R_101_FPN_s1x.yaml" densepose_cfg = get_cfg() add_densepose_config(densepose_cfg) densepose_cfg.merge_from_file(densepose_config_file) densepose_cfg.MODEL.WEIGHTS = "checkpoints/densepose_rcnn_R_101_fpn_s1x.pkl" densepose_cfg.freeze() silhouette_predictor = DefaultPredictor(densepose_cfg) return joints2D_predictor, silhouette_predictor
def setup_cfg(args): # load config from file and command-line arguments cfg = get_cfg() add_pointrend_config(cfg) cfg.merge_from_file(args.config_file) cfg.merge_from_list(args.opts) # Set score_threshold for builtin models cfg.MODEL.RETINANET.SCORE_THRESH_TEST = args.confidence_threshold cfg.MODEL.ROI_HEADS.SCORE_THRESH_TEST = args.confidence_threshold cfg.MODEL.PANOPTIC_FPN.COMBINE.INSTANCES_CONFIDENCE_THRESH = args.confidence_threshold cfg.freeze() return cfg