8 #ifndef META_OCEAN_TRACKING_MOTION_MODEL_H
9 #define META_OCEAN_TRACKING_MOTION_MODEL_H
81 inline const Pose& velocity()
const;
87 inline const Pose& predictedVelocity()
const;
99 inline bool isNull()
const;
105 explicit inline operator bool()
const;
170 inline MotionModel::operator bool()
const
VectorT3< T > translation() const
Returns the translation of the transformation.
Definition: HomogenousMatrix4.h:1381
QuaternionT< T > rotation() const
Returns the rotation of the transformation as quaternion.
Definition: HomogenousMatrix4.h:1388
static T linear(const T &v0, const T &v1, const TFactor &t)
Performs a linear interpolation between two values.
Definition: Interpolation.h:508
This class implements a axis-angle rotation using floating point values.
Definition: Rotation.h:79
This class implements a 6DOF pose with internal motion model.
Definition: MotionModel.h:30
const Pose & velocity() const
Returns the current velocity of this motion model.
Definition: MotionModel.h:155
MotionModel(const Vector3 &translation, const Quaternion &orientation)
Creates a new pose by a given translation and orientation.
MotionModel(const Vector3 &translation, const Rotation &orientation)
Creates a new pose by a given translation and orientation.
Pose modelVelocity
Current velocity.
Definition: MotionModel.h:136
void reset()
Resets the motion model.
HomogenousMatrix4 modelPose
Current pose.
Definition: MotionModel.h:130
const HomogenousMatrix4 & pose() const
Returns the current pose of this motion model as transformation matrix.
Definition: MotionModel.h:145
const Pose & predictedVelocity() const
Returns the current velocity of this motion model.
Definition: MotionModel.h:160
bool modelHasPose
State determining whether at least one pose has been registered.
Definition: MotionModel.h:142
Pose modelPredictedVelocity
Predicted velocity.
Definition: MotionModel.h:139
const HomogenousMatrix4 & predictedPose() const
Returns the predicted pose of this motion model as transformation matrix.
Definition: MotionModel.h:150
MotionModel(const HomogenousMatrix4 &transformation)
Creates a new pose with a given homogeneous matrix.
bool isNull() const
Returns whether no pose has been registered.
Definition: MotionModel.h:165
MotionModel()
Creates a new but invalid motion model.
HomogenousMatrix4 modelPredictedPose
Predicted pose.
Definition: MotionModel.h:133
static HomogenousMatrix4 interpolate(const HomogenousMatrix4 &pose0, const HomogenousMatrix4 &pose1, const Scalar factor)
Applies a liner (and spherical linear) interpolation between two camera poses by application of an in...
Definition: MotionModel.h:175
void update(const HomogenousMatrix4 &pose)
Updates the model with a new precise pose.
static HomogenousMatrix4 predictPose(const HomogenousMatrices4 &previousPoses, const Scalar factor=Scalar(0.4))
Predicts (extrapolates) the camera pose for a current camera frame, if poses for the previous frames ...
float Scalar
Definition of a scalar type.
Definition: Math.h:128
std::vector< HomogenousMatrix4 > HomogenousMatrices4
Definition of a vector holding HomogenousMatrix4 objects.
Definition: HomogenousMatrix4.h:73
HomogenousMatrixT4< Scalar > HomogenousMatrix4
Definition of the HomogenousMatrix4 object, depending on the OCEAN_MATH_USE_SINGLE_PRECISION flag eit...
Definition: HomogenousMatrix4.h:37
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15