util.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "types.h"
4 
5 #include <optional>
6 #include <string>
7 
9 
10 namespace armarx::armem::human
11 {
13  {
15  };
16 
17  std::optional<Eigen::Vector3f>
18  computeMeanPosition(const HumanPose &humanPose,
20 
22  {
23  struct Properties
24  {
25  Eigen::Vector3f positionMM = Eigen::Vector3f::Zero();
27  double distanceThresholdMM = -1.0;
28  std::string modelIDs = std::string();
29 
31  const std::string &prefix = std::string());
32 
33  } properties;
34 
35  void updateFromProperties();
36 
37  Eigen::Vector3f positionMM = Eigen::Vector3f::Zero();
39  std::optional<double> distanceThresholdMM = std::nullopt;
40  std::set<std::string> modelIDs = std::set<std::string>();
41  };
42 
43  std::optional<HumanPose>
44  getNearestHuman(const std::vector<HumanPose> &humanPoses,
45  const NearestHumanParameters &parameters = NearestHumanParameters());
46 
47 } // namespace armarx::armem::human
armarx::armem::human::Camera
@ Camera
Definition: util.h:14
armarx::armem::human::KeyPointCoordinateSystem
KeyPointCoordinateSystem
Definition: util.h:12
armarx::armem::human::NearestHumanParameters::Properties
Definition: util.h:23
armarx::armem::human::NearestHumanParameters::Properties::modelIDs
std::string modelIDs
Definition: util.h:28
armarx::armem::human::NearestHumanParameters
Definition: util.h:21
armarx::armem::human::NearestHumanParameters::Properties::coordSystem
KeyPointCoordinateSystem coordSystem
Definition: util.h:26
armarx::armem::human::NearestHumanParameters::Properties::addTo
void addTo(armarx::PropertyDefinitionsPtr &def, const std::string &prefix=std::string())
Definition: util.cpp:87
armarx::armem::human::NearestHumanParameters::updateFromProperties
void updateFromProperties()
Definition: util.cpp:104
armarx::armem::human::NearestHumanParameters::positionMM
Eigen::Vector3f positionMM
Definition: util.h:37
types.h
armarx::armem::human::NearestHumanParameters::Properties::distanceThresholdMM
double distanceThresholdMM
Definition: util.h:27
armarx::armem::human::Robot
@ Robot
Definition: util.h:14
armarx::armem::human::Global
@ Global
Definition: util.h:14
armarx::armem::human::NearestHumanParameters::Properties::positionMM
Eigen::Vector3f positionMM
Definition: util.h:25
armarx::armem::human::NearestHumanParameters::modelIDs
std::set< std::string > modelIDs
Definition: util.h:40
armarx::armem::human::getNearestHuman
std::optional< HumanPose > getNearestHuman(const std::vector< HumanPose > &humanPoses, const NearestHumanParameters &parameters)
Definition: util.cpp:60
armarx::armem::human::GlobalFloorProjection
@ GlobalFloorProjection
Definition: util.h:14
IceUtil::Handle< class PropertyDefinitionContainer >
forward_declarations.h
armarx::armem::human::NearestHumanParameters::coordSystem
KeyPointCoordinateSystem coordSystem
Definition: util.h:38
armarx::armem::human::NearestHumanParameters::properties
struct armarx::armem::human::NearestHumanParameters::Properties properties
armarx::armem::human::computeMeanPosition
std::optional< Eigen::Vector3f > computeMeanPosition(const HumanPose &humanPose, KeyPointCoordinateSystem coordSystem)
Definition: util.cpp:14
armarx::armem::human
Definition: aron_conversions.cpp:15
armarx::armem::human::NearestHumanParameters::distanceThresholdMM
std::optional< double > distanceThresholdMM
Definition: util.h:39