diff --git a/modules/control/processor.py b/modules/control/processor.py index 02e7e9604..817d2252b 100644 --- a/modules/control/processor.py +++ b/modules/control/processor.py @@ -17,7 +17,6 @@ processors = [ 'None', # pose 'OpenPose', - 'DWPose', 'RTMW', 'RTMO', 'ViTPose', diff --git a/modules/control/processors.py b/modules/control/processors.py index 34ef10cef..3dce586af 100644 --- a/modules/control/processors.py +++ b/modules/control/processors.py @@ -52,7 +52,7 @@ config = { 'Shuffle': {'class': None, 'group': 'Other', 'checkpoint': False, 'params': {}}, # legacy models 'MediaPipe Face (Legacy)': {'class': None, 'group': 'Pose', 'checkpoint': False, 'params': {'max_faces': 1, 'min_confidence': 0.5}}, - 'DWPose (Legacy)': {'class': None, 'group': 'Pose', 'checkpoint': False, 'params': {'min_confidence': 0.3}}, + 'DWPose (Legacy)': {'class': None, 'group': 'Pose', 'checkpoint': False, 'model': 'Tiny', 'params': {'min_confidence': 0.3}}, 'TEED (Legacy)': {'class': None, 'group': 'Edge', 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'fal/teed'}, 'params': {}}, 'Anyline (Legacy)': {'class': None, 'group': 'Edge', 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'TheMistoAI/MistoLine'}, 'params': {}}, 'Normal Bae (Legacy)': {'class': None, 'group': 'Normal', 'checkpoint': True, 'params': {}}, @@ -98,7 +98,7 @@ def delay_load_config(): # pose models 'OpenPose': {'class': OpenposeDetector, 'group': 'Pose', 'checkpoint': True, 'params': {'include_body': True, 'include_hand': False, 'include_face': False}}, 'MediaPipe Face (Legacy)': {'class': MediapipeFaceDetector, 'group': 'Pose', 'checkpoint': False, 'params': {'max_faces': 1, 'min_confidence': 0.5}}, - 'DWPose (Legacy)': {'class': RtmlibPoseDetector, 'group': 'Pose', 'checkpoint': False, 'params': {'min_confidence': 0.3}}, + 'DWPose (Legacy)': {'class': RtmlibPoseDetector, 'group': 'Pose', 'checkpoint': False, 'model': 'Tiny', 'params': {'min_confidence': 0.3}}, 'RTMW': {'class': RtmlibPoseDetector, 'group': 'Pose', 'checkpoint': False, 'params': {'min_confidence': 0.3, 'draw_body_pose': True, 'draw_hand_pose': True, 'draw_face_pose': True}}, 'RTMO': {'class': RtmlibPoseDetector, 'group': 'Pose', 'checkpoint': False, 'params': {'min_confidence': 0.3}}, 'ViTPose': {'class': ViTPoseDetector, 'group': 'Pose', 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'usyd-community/vitpose-plus-base'}, 'params': {'min_confidence': 0.3}}, @@ -179,13 +179,13 @@ def update_settings(*settings): update(['Leres Depth', 'params', 'boost'], settings[11]) update(['Leres Depth', 'params', 'thr_a'], settings[12]) update(['Leres Depth', 'params', 'thr_b'], settings[13]) - update(['MediaPipe Face', 'params', 'max_faces'], settings[14]) - update(['MediaPipe Face', 'params', 'min_confidence'], settings[15]) + update(['MediaPipe Face (Legacy)', 'params', 'max_faces'], settings[14]) + update(['MediaPipe Face (Legacy)', 'params', 'min_confidence'], settings[15]) update(['Canny', 'params', 'low_threshold'], settings[16]) update(['Canny', 'params', 'high_threshold'], settings[17]) - update(['DWPose', 'model'], settings[18]) - update(['DWPose', 'params', 'min_confidence'], settings[19]) - update(['SegmentAnything', 'model'], settings[20]) + update(['DWPose (Legacy)', 'model'], settings[18]) + update(['DWPose (Legacy)', 'params', 'min_confidence'], settings[19]) + update(['SegmentAnything 1.0', 'model'], settings[20]) update(['Edge', 'params', 'pf'], settings[21]) update(['Edge', 'params', 'mode'], settings[22]) update(['Zoe Depth', 'params', 'gamma_corrected'], settings[23]) @@ -264,23 +264,8 @@ class Processor: # log.debug(f'Control Processor loading: id="{processor_id}" class={cls.__name__}') debug(f'Control Processor config={self.load_config}') jobid = state.begin('Load processor') - if processor_id == 'DWPose': - det_ckpt = 'https://download.openmmlab.com/mmdetection/v2.0/yolox/yolox_l_8x8_300e_coco/yolox_l_8x8_300e_coco_20211126_140236-d3bd2b23.pth' - if 'Tiny' == config['DWPose']['model']: - pose_config = 'config/rtmpose-t_8xb64-270e_coco-ubody-wholebody-256x192.py' - pose_ckpt = 'https://huggingface.co/yzd-v/DWPose/resolve/main/dw-tt_ucoco.pth' - elif 'Medium' == config['DWPose']['model']: - pose_config = 'config/rtmpose-m_8xb64-270e_coco-ubody-wholebody-256x192.py' - pose_ckpt = 'https://huggingface.co/yzd-v/DWPose/resolve/main/dw-mm_ucoco.pth' - elif 'Large' == config['DWPose']['model']: - pose_config = 'config/rtmpose-l_8xb32-270e_coco-ubody-wholebody-384x288.py' - pose_ckpt = 'https://huggingface.co/yzd-v/DWPose/resolve/main/dw-ll_ucoco_384.pth' - else: - log.error(f'Control Processor load failed: id="{processor_id}" error=unknown model type') - return f'Processor failed to load: {processor_id}' - self.model = cls(det_ckpt=det_ckpt, pose_config=pose_config, pose_ckpt=pose_ckpt, device="cpu") - elif processor_id in ('DWPose (ONNX)', 'RTMW', 'RTMO'): - model_type = {'DWPose (ONNX)': 'DWPose', 'RTMW': 'RTMW-l', 'RTMO': 'RTMO-l'}[processor_id] + if processor_id in ('DWPose (Legacy)', 'RTMW', 'RTMO'): + model_type = {'DWPose (Legacy)': 'DWPose', 'RTMW': 'RTMW-l', 'RTMO': 'RTMO-l'}[processor_id] self.model = cls.from_pretrained(model_type, **self.load_config) elif processor_id == 'SegmentAnything 1.0': if 'Base' == config[processor_id]['model']: