visual-tracking-control
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
GatePose Class Referenceabstract

#include <GatePose.h>

Inheritance diagram for GatePose:
[legend]

Public Member Functions

 GatePose (std::unique_ptr< PFVisualCorrection > visual_correction, const double gate_x, const double gate_y, const double gate_z, const double gate_rotation, const double gate_aperture) noexcept
 
 GatePose (std::unique_ptr< PFVisualCorrection > visual_correction) noexcept
 
 ~GatePose () noexcept
 
void innovation (const Eigen::Ref< const Eigen::MatrixXf > &pred_states, cv::InputArray measurements, Eigen::Ref< Eigen::MatrixXf > innovations) override
 
double likelihood (const Eigen::Ref< const Eigen::MatrixXf > &innovations) override
 
bfl::VisualObservationModel & getVisualObservationModel () override
 
void setVisualObservationModel (std::unique_ptr< bfl::VisualObservationModel > visual_observation_model) override
 

Protected Member Functions

void correctStep (const Eigen::Ref< const Eigen::MatrixXf > &pred_states, const Eigen::Ref< const Eigen::VectorXf > &pred_weights, cv::InputArray measurements, Eigen::Ref< Eigen::MatrixXf > cor_states, Eigen::Ref< Eigen::VectorXf > cor_weights) override
 
virtual Eigen::VectorXd readPose ()=0
 
bool isInsideEllipsoid (const Eigen::Ref< const Eigen::VectorXf > &state)
 
bool isWithinRotation (float rot_angle)
 
bool isInsideCone (const Eigen::Ref< const Eigen::VectorXf > &state)
 

Private Attributes

double gate_x_
 
double gate_y_
 
double gate_z_
 
double gate_aperture_
 
double gate_rotation_
 
Eigen::VectorXd ee_pose_
 

Detailed Description

Definition at line 10 of file GatePose.h.

Constructor & Destructor Documentation

◆ GatePose() [1/2]

GatePose::GatePose ( std::unique_ptr< PFVisualCorrection >  visual_correction,
const double  gate_x,
const double  gate_y,
const double  gate_z,
const double  gate_rotation,
const double  gate_aperture 
)
noexcept

Definition at line 10 of file GatePose.cpp.

◆ GatePose() [2/2]

GatePose::GatePose ( std::unique_ptr< PFVisualCorrection >  visual_correction)
noexcept

Definition at line 23 of file GatePose.cpp.

◆ ~GatePose()

GatePose::~GatePose ( )
noexcept

Definition at line 27 of file GatePose.cpp.

Member Function Documentation

◆ correctStep()

void GatePose::correctStep ( const Eigen::Ref< const Eigen::MatrixXf > &  pred_states,
const Eigen::Ref< const Eigen::VectorXf > &  pred_weights,
cv::InputArray  measurements,
Eigen::Ref< Eigen::MatrixXf >  cor_states,
Eigen::Ref< Eigen::VectorXf >  cor_weights 
)
overrideprotected

Definition at line 54 of file GatePose.cpp.

◆ getVisualObservationModel()

VisualObservationModel & GatePose::getVisualObservationModel ( )
override

Definition at line 42 of file GatePose.cpp.

◆ innovation()

void GatePose::innovation ( const Eigen::Ref< const Eigen::MatrixXf > &  pred_states,
cv::InputArray  measurements,
Eigen::Ref< Eigen::MatrixXf >  innovations 
)
override

Definition at line 30 of file GatePose.cpp.

◆ isInsideCone()

bool GatePose::isInsideCone ( const Eigen::Ref< const Eigen::VectorXf > &  state)
protected

Definition at line 88 of file GatePose.cpp.

◆ isInsideEllipsoid()

bool GatePose::isInsideEllipsoid ( const Eigen::Ref< const Eigen::VectorXf > &  state)
protected

Definition at line 72 of file GatePose.cpp.

◆ isWithinRotation()

bool GatePose::isWithinRotation ( float  rot_angle)
protected

Definition at line 80 of file GatePose.cpp.

◆ likelihood()

double GatePose::likelihood ( const Eigen::Ref< const Eigen::MatrixXf > &  innovations)
override

Definition at line 36 of file GatePose.cpp.

◆ readPose()

virtual Eigen::VectorXd GatePose::readPose ( )
protectedpure virtual

Implemented in iCubGatePose, and PlayGatePose.

◆ setVisualObservationModel()

void GatePose::setVisualObservationModel ( std::unique_ptr< bfl::VisualObservationModel >  visual_observation_model)
override

Definition at line 48 of file GatePose.cpp.

Member Data Documentation

◆ ee_pose_

Eigen::VectorXd GatePose::ee_pose_
private

Definition at line 49 of file GatePose.h.

◆ gate_aperture_

double GatePose::gate_aperture_
private

Definition at line 46 of file GatePose.h.

◆ gate_rotation_

double GatePose::gate_rotation_
private

Definition at line 47 of file GatePose.h.

◆ gate_x_

double GatePose::gate_x_
private

Definition at line 43 of file GatePose.h.

◆ gate_y_

double GatePose::gate_y_
private

Definition at line 44 of file GatePose.h.

◆ gate_z_

double GatePose::gate_z_
private

Definition at line 45 of file GatePose.h.


The documentation for this class was generated from the following files: