gramods
Loading...
Searching...
No Matches
RelativeTrackerPoseRegistrationEstimator.hh
1
2#ifndef GM_TRACK_RELATIVETRACKERPOSEREGISTRATIONESTIMATOR
3#define GM_TRACK_RELATIVETRACKERPOSEREGISTRATIONESTIMATOR
4
5#include <gmTrack/config.hh>
6
7#include <gmCore/io_eigen.hh>
8#include <gmCore/OFactory.hh>
9#include <gmCore/Updateable.hh>
10
11#include <gmTrack/MultiPoseTracker.hh>
12#include <gmTrack/SinglePoseTracker.hh>
13#include <gmTrack/MultiPoseTracker.hh>
14
15BEGIN_NAMESPACE_GMTRACK;
16
25
26public:
29
35 void addSinglePoseTracker(std::shared_ptr<SinglePoseTracker> tracker);
36
42 void addMultiPoseTracker(std::shared_ptr<MultiPoseTracker> tracker);
43
51 void setSamplesPerSecond(float n);
52
59 void setWarningThreshold(float d);
60
66 void setInlierThreshold(float r);
67
74 void setOrientationWarningThreshold(float d);
75
81 void setOrientationInlierThreshold(float r);
82
86 struct Pose {
87 Eigen::Vector3f position;
88 Eigen::Quaternionf orientation;
89 };
90
95 size_t getSinglePoseTrackerCount() const;
96
100 Pose getSinglePoseTrackerPose(size_t idx) const;
101
106 size_t getMultiPoseTrackerCount() const;
107
112 std::map<int, Pose> getMultiPoseTrackerPose(size_t idx) const;
113
119 void traverse(Visitor *visitor) override;
120
121 GM_OFI_DECLARE;
122
123private:
124 struct Impl;
125 std::unique_ptr<Impl> _impl;
126};
127
128std::ostream &
129operator<<(std::ostream &out,
131 Eigen::AngleAxisf aa(pose.orientation);
132 return out << "TPose(P=" << pose.position.transpose() << ", R=" << aa.angle()
133 << "/" << aa.axis().transpose() << ")";
134}
135
136END_NAMESPACE_GMTRACK;
137
138#endif
Base type for objects in the Gramods package for standardized handling of construction,...
Definition Object.hh:42
The RelativeTrackerPoseRegistrationEstimator is a utility for estimating the relative pose of fixed t...
Definition RelativeTrackerPoseRegistrationEstimator.hh:24
The visitor of a design pattern for automatic traversal.
Definition Object.hh:75
Definition RelativeTrackerPoseRegistrationEstimator.cpp:152
Type combining position and orientation.
Definition RelativeTrackerPoseRegistrationEstimator.hh:86