11from pathlib import Path
2- from typing import Tuple , Literal , List , get_args
2+ from typing import Tuple , Literal , List
33import copy
44import numpy as np
55from numpy import ma
@@ -89,12 +89,10 @@ def pose_hide_legs(pose: Pose):
8989 ]
9090 pose .body .data [:, :, points , :] = 0
9191 pose .body .confidence [:, :, points ] = 0
92- elif known_pose_format in get_args ( KnownPoseFormat ) :
92+ else :
9393 raise NotImplementedError (
9494 f"Unsupported pose header schema { known_pose_format } for { pose_hide_legs .__name__ } : { pose .header } "
9595 )
96- else :
97- raise ValueError (f"Unknown pose header schema for { pose_hide_legs .__name__ } : { pose .header } " )
9896
9997
10098def pose_shoulders (pose_header : PoseHeader ):
@@ -109,11 +107,9 @@ def pose_shoulders(pose_header: PoseHeader):
109107 if known_pose_format == "openpose" :
110108 return ("pose_keypoints_2d" , "RShoulder" ), ("pose_keypoints_2d" , "LShoulder" )
111109
112- if known_pose_format in get_args (KnownPoseFormat ):
113- raise NotImplementedError (
114- f"Unsupported pose header schema { known_pose_format } for { pose_shoulders .__name__ } : { pose_header } "
115- )
116- raise ValueError (f"Unknown pose header schema for { pose_shoulders .__name__ } : { pose_header } " )
110+ raise NotImplementedError (
111+ f"Unsupported pose header schema { known_pose_format } for { pose_shoulders .__name__ } : { pose_header } "
112+ )
117113
118114
119115def hands_indexes (pose_header : PoseHeader ):
@@ -129,11 +125,9 @@ def hands_indexes(pose_header: PoseHeader):
129125 pose_header ._get_point_index ("hand_left_keypoints_2d" , "M_CMC" ),
130126 pose_header ._get_point_index ("hand_right_keypoints_2d" , "M_CMC" ),
131127 ]
132- if known_pose_format in get_args (KnownPoseFormat ):
133- raise NotImplementedError (
134- f"Unsupported pose header schema { known_pose_format } for { hands_indexes .__name__ } : { pose_header } "
135- )
136- raise ValueError (f"Unknown pose header schema for { hands_indexes .__name__ } : { pose_header } " )
128+ raise NotImplementedError (
129+ f"Unsupported pose header schema { known_pose_format } for { hands_indexes .__name__ } : { pose_header } "
130+ )
137131
138132
139133def pose_normalization_info (pose_header : PoseHeader ):
@@ -153,11 +147,9 @@ def hands_components(pose_header: PoseHeader):
153147 if known_pose_format == "openpose" :
154148 return ("hand_left_keypoints_2d" , "hand_right_keypoints_2d" ), ("BASE" , "P_CMC" , "I_CMC" ), ("BASE" , "M_CMC" )
155149
156- if known_pose_format in get_args (KnownPoseFormat ):
157- raise NotImplementedError (
158- f"Unsupported pose header schema '{ known_pose_format } ' for { hands_components .__name__ } : { pose_header } "
159- )
160- raise ValueError (f"Unknown pose header schema for { hands_components .__name__ } : { pose_header } " )
150+ raise NotImplementedError (
151+ f"Unsupported pose header schema '{ known_pose_format } ' for { hands_components .__name__ } : { pose_header } "
152+ )
161153
162154
163155def normalize_component_3d (pose , component_name : str , plane : Tuple [str , str , str ], line : Tuple [str , str ]):
@@ -198,12 +190,11 @@ def get_standard_components_for_known_format(known_pose_format: KnownPoseFormat)
198190 return OpenPose_Components
199191 if known_pose_format == "openpose_135" :
200192 return OpenPose135_Components
201- if known_pose_format in get_args (KnownPoseFormat ):
202- raise NotImplementedError (f"Unsupported pose header schema { known_pose_format } " )
203- raise ValueError (f"Unknown pose format { known_pose_format } , cannot get standard components" )
193+
194+ raise NotImplementedError (f"Unsupported pose header schema { known_pose_format } " )
204195
205196
206- def fake_pose (num_frames : int , fps = 25 , dims = 2 , components = None ):
197+ def fake_pose (num_frames : int , fps = 25 , dims = 2 , components = None )-> Pose :
207198 if components is None :
208199 components = copy .deepcopy (OpenPose_Components ) # fixes W0102, dangerous default value
209200 dimensions = PoseHeaderDimensions (width = 1 , height = 1 , depth = 1 )
@@ -219,29 +210,26 @@ def fake_pose(num_frames: int, fps=25, dims=2, components=None):
219210 return Pose (header , body )
220211
221212
222- def get_hand_wrist_index (pose : Pose , hand : str ):
213+ def get_hand_wrist_index (pose : Pose , hand : str )-> int :
223214 known_pose_format = detect_known_pose_format (get_component_names (pose ))
224215 if known_pose_format == "holistic" :
225216 return pose .header ._get_point_index (f"{ hand .upper ()} _HAND_LANDMARKS" , "WRIST" )
226217 if known_pose_format == "openpose" :
227218 return pose .header ._get_point_index (f"hand_{ hand .lower ()} _keypoints_2d" , "BASE" )
228- if known_pose_format in get_args (KnownPoseFormat ):
229- raise NotImplementedError (
230- f"{ known_pose_format } pose header schema unsupported for get_hand_wrist_index: { pose .header } "
231- )
232- raise ValueError (f"Unknown schema for { get_hand_wrist_index } : { pose .header } " )
219+ raise NotImplementedError (
220+ f"{ known_pose_format } pose header schema unsupported for get_hand_wrist_index: { pose .header } "
221+ )
233222
234223
235- def get_body_hand_wrist_index (pose : Pose , hand : str ):
224+ def get_body_hand_wrist_index (pose : Pose , hand : str )-> int :
236225 known_pose_format = detect_known_pose_format (get_component_names (pose ))
237226 if known_pose_format == "holistic" :
238227 return pose .header ._get_point_index ("POSE_LANDMARKS" , f"{ hand .upper ()} _WRIST" )
239228 if known_pose_format == "openpose" :
240229 return pose .header ._get_point_index ("pose_keypoints_2d" , f"{ hand .upper ()[0 ]} Wrist" )
241- if known_pose_format in get_args (KnownPoseFormat ):
242- raise NotImplementedError (
243- f"{ known_pose_format } pose header schema unsupported for { get_body_hand_wrist_index .__name__ } "
244- )
230+ raise NotImplementedError (
231+ f"{ known_pose_format } pose header schema unsupported for { get_body_hand_wrist_index .__name__ } "
232+ )
245233
246234
247235def correct_wrist (pose : Pose , hand : str ) -> Pose :
0 commit comments