types.h
Go to the documentation of this file.
1 #pragma once
2 
3 
4 #include <map>
5 #include <optional>
6 
7 #include <Eigen/Core>
8 
10 
13 
14 namespace armarx::armem::human
15 {
16 
17  struct PoseKeypoint
18  {
19  std::string label;
20  float confidence;
21 
23  std::optional<armarx::FramedOrientation> orientationCamera = std::nullopt;
24  std::optional<armarx::FramedPosition> positionRobot = std::nullopt;
25  std::optional<armarx::FramedOrientation> orientationRobot = std::nullopt;
26  std::optional<armarx::FramedPosition> positionGlobal = std::nullopt;
27  std::optional<armarx::FramedOrientation> orientationGlobal = std::nullopt;
28  };
29 
30  struct HumanPose
31  {
32  std::string poseModelId;
33 
34  using KeyPointMap = std::map<std::string, PoseKeypoint>;
36  std::optional<std::string> humanTrackingId = std::nullopt;
38  std::string cameraFrameName;
39  };
40 
42  {
43  std::string label;
44 
45  float confidence;
46 
47  Eigen::Vector2f position;
48  };
49 
50  struct HumanPose2D
51  {
52  std::string poseModelId;
53  std::map<std::string, PoseKeypoint2D> keypoints;
54  std::optional<std::string> humanTrackingId = std::nullopt;
56  std::string cameraFrameName;
57  };
58 
60  {
61 
63 
65 
67 
69 
70  std::optional<armarx::armem::MemoryID> profileID;
71  };
72 
74  {
79  };
80 
81 
82 } // namespace armarx::armem::human
armarx::armem::human::PersonInstance::pose
Pose pose
Definition: types.h:78
armarx::armem::human::PoseKeypoint2D::label
std::string label
Definition: types.h:43
armarx::armem::human::PersonInstance::poseID
armarx::armem::MemoryID poseID
Definition: types.h:77
MemoryID.h
DateTime.h
armarx::armem::human::PoseKeypoint::orientationGlobal
std::optional< armarx::FramedOrientation > orientationGlobal
Definition: types.h:27
armarx::armem::human::FaceRecognition
Definition: types.h:59
armarx::armem::human::HumanPose2D
Definition: types.h:50
armarx::armem::human::PoseKeypoint::label
std::string label
Definition: types.h:19
armarx::armem::human::HumanPose2D::humanTrackingId
std::optional< std::string > humanTrackingId
Definition: types.h:54
armarx::armem::human::HumanPose2D::timestamp
DateTime timestamp
Definition: types.h:55
armarx::armem::human::FaceRecognition::framedPosition3D
FramedPosition framedPosition3D
Definition: types.h:68
armarx::armem::human::HumanPose2D::poseModelId
std::string poseModelId
Definition: types.h:52
armarx::armem::human::HumanPose2D::keypoints
std::map< std::string, PoseKeypoint2D > keypoints
Definition: types.h:53
armarx::armem::human::HumanPose2D::cameraFrameName
std::string cameraFrameName
Definition: types.h:56
armarx::armem::human::FaceRecognition::extents2D
Eigen::Matrix< int, 2, 1 > extents2D
Definition: types.h:64
armarx::armem::human::PoseKeypoint2D::confidence
float confidence
Definition: types.h:45
armarx::armem::human::HumanPose::poseModelId
std::string poseModelId
Definition: types.h:32
armarx::armem::human::PoseKeypoint::positionRobot
std::optional< armarx::FramedPosition > positionRobot
Definition: types.h:24
armarx::armem::human::PoseKeypoint
Definition: types.h:17
armarx::armem::MemoryID
A memory ID.
Definition: MemoryID.h:47
FramedPose.h
armarx::armem::human::HumanPose::timestamp
DateTime timestamp
Definition: types.h:37
armarx::FramedPosition
The FramedPosition class.
Definition: FramedPose.h:142
armarx::armem::human::PersonInstance::faceRecognitionID
armarx::armem::MemoryID faceRecognitionID
Definition: types.h:76
armarx::armem::human::PersonInstance
Definition: types.h:73
armarx::armem::human::HumanPose::cameraFrameName
std::string cameraFrameName
Definition: types.h:38
armarx::armem::human::PoseKeypoint::confidence
float confidence
Definition: types.h:20
armarx::armem::human::PoseKeypoint::orientationRobot
std::optional< armarx::FramedOrientation > orientationRobot
Definition: types.h:25
armarx::armem::human::PoseKeypoint::positionCamera
armarx::FramedPosition positionCamera
Definition: types.h:22
armarx::armem::human::PoseKeypoint2D
Definition: types.h:41
armarx::armem::human::PoseKeypoint::orientationCamera
std::optional< armarx::FramedOrientation > orientationCamera
Definition: types.h:23
armarx::armem::human::HumanPose::KeyPointMap
std::map< std::string, PoseKeypoint > KeyPointMap
Definition: types.h:34
armarx::armem::human::PoseKeypoint2D::position
Eigen::Vector2f position
Definition: types.h:47
armarx::armem::human::HumanPose
Definition: types.h:30
armarx::armem::human::HumanPose::humanTrackingId
std::optional< std::string > humanTrackingId
Definition: types.h:36
armarx::armem::human::PersonInstance::profileID
armarx::armem::MemoryID profileID
Definition: types.h:75
armarx::core::time::DateTime
Represents a point in time.
Definition: DateTime.h:24
armarx::armem::human::FaceRecognition::position3DGlobal
Eigen::Matrix< float, 3, 1 > position3DGlobal
Definition: types.h:62
armarx::Pose
The Pose class.
Definition: Pose.h:242
armarx::armem::human::FaceRecognition::position2D
Eigen::Matrix< int, 2, 1 > position2D
Definition: types.h:66
armarx::armem::human::PoseKeypoint::positionGlobal
std::optional< armarx::FramedPosition > positionGlobal
Definition: types.h:26
Eigen::Matrix< float, 3, 1 >
armarx::armem::human::HumanPose::keypoints
KeyPointMap keypoints
Definition: types.h:35
armarx::armem::human
Definition: aron_conversions.cpp:16
armarx::armem::human::FaceRecognition::profileID
std::optional< armarx::armem::MemoryID > profileID
Definition: types.h:70