human/src/posenet/keypoints.ts

61 lines
2.0 KiB
TypeScript
Raw Normal View History

2021-02-08 17:39:09 +01:00
export const partNames = [
2020-10-12 01:22:43 +02:00
'nose', 'leftEye', 'rightEye', 'leftEar', 'rightEar', 'leftShoulder',
'rightShoulder', 'leftElbow', 'rightElbow', 'leftWrist', 'rightWrist',
'leftHip', 'rightHip', 'leftKnee', 'rightKnee', 'leftAnkle', 'rightAnkle',
];
2020-12-17 00:36:24 +01:00
2021-03-25 13:43:51 +01:00
export const NUM_KEYPOINTS = partNames.length; // 17 keypoints
2020-12-17 00:36:24 +01:00
2021-03-25 13:43:51 +01:00
export const partIds = partNames.reduce((result, jointName, i) => {
2020-10-12 01:22:43 +02:00
result[jointName] = i;
return result;
}, {});
2020-12-17 00:36:24 +01:00
2020-10-12 01:22:43 +02:00
const connectedPartNames = [
['leftHip', 'leftShoulder'], ['leftElbow', 'leftShoulder'],
['leftElbow', 'leftWrist'], ['leftHip', 'leftKnee'],
['leftKnee', 'leftAnkle'], ['rightHip', 'rightShoulder'],
['rightElbow', 'rightShoulder'], ['rightElbow', 'rightWrist'],
['rightHip', 'rightKnee'], ['rightKnee', 'rightAnkle'],
['leftShoulder', 'rightShoulder'], ['leftHip', 'rightHip'],
];
2021-02-08 17:39:09 +01:00
export const connectedPartIndices = connectedPartNames.map(([jointNameA, jointNameB]) => ([partIds[jointNameA], partIds[jointNameB]]));
2020-12-17 00:36:24 +01:00
2021-02-08 17:39:09 +01:00
export const poseChain = [
2020-10-12 01:22:43 +02:00
['nose', 'leftEye'], ['leftEye', 'leftEar'], ['nose', 'rightEye'],
['rightEye', 'rightEar'], ['nose', 'leftShoulder'],
['leftShoulder', 'leftElbow'], ['leftElbow', 'leftWrist'],
['leftShoulder', 'leftHip'], ['leftHip', 'leftKnee'],
['leftKnee', 'leftAnkle'], ['nose', 'rightShoulder'],
['rightShoulder', 'rightElbow'], ['rightElbow', 'rightWrist'],
['rightShoulder', 'rightHip'], ['rightHip', 'rightKnee'],
['rightKnee', 'rightAnkle'],
];
2020-12-17 00:36:24 +01:00
2021-02-08 17:39:09 +01:00
export const partChannels = [
2020-10-12 01:22:43 +02:00
'left_face',
'right_face',
'right_upper_leg_front',
'right_lower_leg_back',
'right_upper_leg_back',
'left_lower_leg_front',
'left_upper_leg_front',
'left_upper_leg_back',
'left_lower_leg_back',
'right_feet',
'right_lower_leg_front',
'left_feet',
'torso_front',
'torso_back',
'right_upper_arm_front',
'right_upper_arm_back',
'right_lower_arm_back',
'left_lower_arm_front',
'left_upper_arm_front',
'left_upper_arm_back',
'left_lower_arm_back',
'right_hand',
'right_lower_arm_front',
'left_hand',
];