#include <mc_tvm/GazeFunction.h>
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | GazeFunction (const mc_rbdyn::RobotFrame &frame) |
void | reset () |
void | estimate (const Eigen::Vector2d &point, std::optional< double > depth=std::nullopt) |
void | estimate (const Eigen::Vector3d &point) |
void | target (const Eigen::Vector2d &ref) noexcept |
const Eigen::Vector2d & | target () const noexcept |
const mc_rbdyn::RobotFrame & | frame () const noexcept |
Protected Member Functions | |
void | updateValue () |
void | updateVelocity () |
void | updateJacobian () |
void | updateNormalAcceleration () |
void | setDepthEstimate (double depth) |
Protected Attributes | |
mc_rbdyn::ConstRobotFramePtr | frame_ |
mc_tvm::RobotFrame & | tvm_frame_ |
rbd::Jacobian | frameJac_ |
Eigen::Vector2d | point_ = Eigen::Vector2d::Zero() |
Eigen::Vector2d | pointRef_ = Eigen::Vector2d::Zero() |
double | depthEstimate_ = 1.0 |
Eigen::Matrix< double, 2, 6 > | L_img_ |
Eigen::Matrix< double, 6, 1 > | surfaceVelocity_ |
Eigen::Matrix< double, 1, 6 > | L_Z_dot_ |
Eigen::Matrix< double, 2, 6 > | L_img_dot_ |
Eigen::MatrixXd | shortJacMat_ |
Eigen::MatrixXd | jacMat_ |
This class implements a gaze function for a given camera frame
This is the difference between a 2d point in the image and a reference as a function of the robot configuration.
This task value is to be updated by an external process (e.g. a vision algorithm)
The function does not make sense if the camera points are not provided in the control frame
EIGEN_MAKE_ALIGNED_OPERATOR_NEW mc_tvm::GazeFunction::GazeFunction | ( | const mc_rbdyn::RobotFrame & | frame | ) |
Constructor
frame | Camera frame |
void mc_tvm::GazeFunction::estimate | ( | const Eigen::Vector2d & | point, |
std::optional< double > | depth = std::nullopt |
||
) |
Set the current point value
If |
void mc_tvm::GazeFunction::estimate | ( | const Eigen::Vector3d & | point | ) |
Set the current point value
if |
|
inlinenoexcept |
Access the controlled frame
|
inline |
Reset the objective to the current position
|
protected |
|
inlinenoexcept |
Get the desired value
|
inlinenoexcept |
Set the desired value
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |