openpose_body_25.h
Go to the documentation of this file.
1/**
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @author Fabian Reister ( fabian dot reister at kit dot edu )
17 * @date 2022
18 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19 * GNU General Public License
20 */
21
22#pragma once
23
24#include <SimoxUtility/color/Color.h>
25#include <SimoxUtility/meta/enum/EnumNames.hpp>
26
28{
29 inline const std::string ModelId = "BODY_25";
30
60
61 inline const simox::meta::EnumNames<Joints> JointNames{{Joints::Nose, "Nose"},
62 {Joints::Neck, "Neck"},
63 {Joints::ShoulderRight, "RShoulder"},
64 {Joints::ElbowRight, "RElbow"},
65 {Joints::WristRight, "RWrist"},
66 {Joints::ShoulderLeft, "LShoulder"},
67 {Joints::ElbowLeft, "LElbow"},
68 {Joints::WristLeft, "LWrist"},
69 {Joints::Pelvis, "MidHip"},
70 {Joints::HipRight, "RHip"},
71 {Joints::KneeRight, "RKnee"},
72 {Joints::AnkleRight, "RAnkle"},
73 {Joints::HipLeft, "LHip"},
74 {Joints::KneeLeft, "LKnee"},
75 {Joints::AnkleLeft, "LAnkle"},
76 {Joints::EyeRight, "REye"},
77 {Joints::EyeLeft, "LEye"},
78 {Joints::EarRight, "REar"},
79 {Joints::EarLeft, "LEar"},
80 {Joints::BigToeLeft, "LBigToe"},
81 {Joints::SmallToeLeft, "LSmallToe"},
82 {Joints::HeelLeft, "LHeel"},
83 {Joints::BigToeRight, "RBigToe"},
84 {Joints::SmallToeRight, "RSmallToe"},
85 {Joints::HeelRight, "RHeel"},
86 {Joints::Background, "Background"}};
87
88
114
115
116 inline const std::map<Joints, simox::Color> Colors = {
117 {Joints::Nose, {1.f, 0.f, 85.f / 255.f}},
118 {Joints::Neck, {1.f, 0.f, 0.f}},
119 {Joints::ShoulderRight, {1.f, 85.f / 255.f, 0.f}},
120 {Joints::ElbowRight, {1.f, 170.f / 255.f, 0.f}},
121 {Joints::WristRight, {1.f, 1.f, 0.f}},
122 {Joints::ShoulderLeft, {170.f / 255.f, 1.f, 0.f}},
123 {Joints::ElbowLeft, {85.f / 255.f, 1.f, 0.f}},
124 {Joints::WristLeft, {0.f, 1.f, 0.f}},
125 {Joints::Pelvis, {1.f, 0.f, 0.f}},
126 {Joints::HipRight, {0.f, 1.f, 85.f / 255.f}},
127 {Joints::KneeRight, {0.f, 1.f, 170.f / 255.f}},
128 {Joints::AnkleRight, {0.f, 1.f, 1.f}},
129 {Joints::HipLeft, {0.f, 170.f / 255.f, 1.f}},
130 {Joints::KneeLeft, {0.f, 85.f / 255.f, 1.f}},
131 {Joints::AnkleLeft, {0.f, 0.f, 1.f}},
132 {Joints::EyeRight, {1.f, 0.f, 170.f / 255.f}},
133 {Joints::EyeLeft, {170.f / 255.f, 0.f, 1.f}},
134 {Joints::EarRight, {1.f, 0.f, 1.f}},
135 {Joints::EarLeft, {85.f / 255.f, 0.f, 1.f}},
136 {Joints::BigToeLeft, {0.f, 0.f, 1.f}},
137 {Joints::SmallToeLeft, {0.f, 0.f, 1.f}},
138 {Joints::HeelLeft, {0.f, 0.f, 1.f}},
139 {Joints::BigToeRight, {0.f, 1.f, 1.f}},
140 {Joints::SmallToeRight, {0.f, 1.f, 1.f}},
141 {Joints::HeelRight, {0.f, 1.f, 1.f}}};
142 // Joints::Background has no color assigned
143
144
145} // namespace armarx::human::pose::model::openpose_body_25
const std::map< Joints, simox::Color > Colors
const simox::meta::EnumNames< Joints > JointNames
const std::vector< std::pair< Joints, Joints > > Segments