def __init__(self, cfg, opt, save_video=False, video_save_opt=DEFAULT_VIDEO_SAVE_OPT, queueSize=1024): self.cfg = cfg self.opt = opt self.video_save_opt = video_save_opt self.eval_joints = EVAL_JOINTS self.save_video = save_video self.heatmap_to_coord = get_func_heatmap_to_coord(cfg) # initialize the queue used to store frames read from # the video file if opt.sp: self.result_queue = Queue(maxsize=queueSize) else: self.result_queue = mp.Queue(maxsize=queueSize) if opt.save_img: if not os.path.exists(opt.outputpath + '/vis'): os.mkdir(opt.outputpath + '/vis') if opt.pose_flow: from trackers.PoseFlow.poseflow_infer import PoseFlowWrapper self.pose_flow_wrapper = PoseFlowWrapper( save_path=os.path.join(opt.outputpath, 'poseflow'))
def __init__(self, cfg, opt, save_video=False, video_save_opt=DEFAULT_VIDEO_SAVE_OPT, queueSize=1024): self.cfg = cfg self.opt = opt self.video_save_opt = video_save_opt self.eval_joints = EVAL_JOINTS self.save_video = save_video self.heatmap_to_coord = get_func_heatmap_to_coord(cfg) # initialize the queue used to store frames read from # the video file if opt.sp: self.result_queue = Queue(maxsize=queueSize) else: self.result_queue = mp.Queue(maxsize=queueSize) if opt.save_img: if not os.path.exists(opt.outputpath + '/vis'): os.mkdir(opt.outputpath + '/vis') if opt.pose_flow: from trackers.PoseFlow.poseflow_infer import PoseFlowWrapper self.pose_flow_wrapper = PoseFlowWrapper(save_path=os.path.join(opt.outputpath, 'poseflow')) if self.opt.save_img or self.save_video or self.opt.vis: loss_type = self.cfg.DATA_PRESET.get('LOSS_TYPE', 'MSELoss') num_joints = self.cfg.DATA_PRESET.NUM_JOINTS if loss_type == 'MSELoss': self.vis_thres = [0.4] * num_joints elif 'JointRegression' in loss_type: self.vis_thres = [0.05] * num_joints elif loss_type == 'Combined': if num_joints == 68: hand_face_num = 42 else: hand_face_num = 110 self.vis_thres = [0.4] * (num_joints - hand_face_num) + [0.05] * hand_face_num self.use_heatmap_loss = (self.cfg.DATA_PRESET.get('LOSS_TYPE', 'MSELoss') == 'MSELoss')
def __init__(self, cfg, opt, save_video=False, video_save_opt=DEFAULT_VIDEO_SAVE_OPT, queueSize=1024): self.cfg = cfg self.opt = opt self.video_save_opt = video_save_opt self.head_pose = opt.head_pose # 是否开启头部姿态相关内容 self.eval_joints = EVAL_JOINTS self.save_video = save_video self.heatmap_to_coord = get_func_heatmap_to_coord(cfg) # initialize the queue used to store frames read from # the video file if opt.sp: self.result_queue = Queue(maxsize=queueSize) else: self.result_queue = mp.Queue(maxsize=queueSize) if opt.save_img: if not os.path.exists(opt.outputpath + '/vis'): os.mkdir(opt.outputpath + '/vis') if opt.pose_flow: from trackers.PoseFlow.poseflow_infer import PoseFlowWrapper self.pose_flow_wrapper = PoseFlowWrapper( save_path=os.path.join(opt.outputpath, 'poseflow')) if opt.tracking: # 实例状态 self.reid_states = ReIDStates() # 是否使用场景蒙版 self.scene_mask = SceneMasker( opt.scene_mask) if opt.scene_mask else None if self.opt.analyse_cheating and self.opt.save_cheaters: try: os.mkdir(os.path.join(self.opt.outputpath, 'cheating')) except FileExistsError: pass