Public Member Functions | Protected Member Functions | Private Attributes | List of all members
moveit_handeye_calibration::HandEyeArucoTarget Class Reference

#include <handeye_target_aruco.h>

Inheritance diagram for moveit_handeye_calibration::HandEyeArucoTarget:
Inheritance graph
[legend]

Public Member Functions

virtual bool createTargetImage (cv::Mat &image) const override
 Create an target image, so that the target can be viewed and printed. More...
 
virtual bool detectTargetPose (cv::Mat &image) override
 Given an image containing a target captured from a camera view point, get the target pose with respect to the camera optical frame. Target parameters and camera intrinsic parameters should be correctly set before calling this function. More...
 
 HandEyeArucoTarget ()
 
virtual bool initialize () override
 Initialize handeye target. Call after setting the parameters. More...
 
 ~HandEyeArucoTarget ()=default
 
- Public Member Functions inherited from moveit_handeye_calibration::HandEyeTargetBase
virtual bool areIntrinsicsReasonable ()
 Check that camera intrinsic parameters are reasonable. More...
 
geometry_msgs::Quaternion convertToQuaternionROSMsg (const cv::Vec3d &input_rvect) const
 
geometry_msgs::Vector3 convertToVectorROSMsg (const cv::Vec3d &input_tvect) const
 
void drawAxis (cv::InputOutputArray _image, cv::InputArray _cameraMatrix, cv::InputArray _distCoeffs, cv::InputArray _rvec, cv::InputArray _tvec, float length) const
 
virtual bool getParameter (std::string name, double &value) const
 Get target parameter double value. More...
 
virtual bool getParameter (std::string name, float &value) const
 Get target parameter float value. More...
 
virtual bool getParameter (std::string name, int &value) const
 Get target parameter integer value. More...
 
virtual bool getParameter (std::string name, std::string &value) const
 Get target parameter enum option, as string representation. More...
 
virtual std::vector< ParametergetParameters ()
 Get parameters relevant to this target. More...
 
virtual geometry_msgs::TransformStamped getTransformStamped (const std::string &frame_id) const
 Get TransformStamped message from the target detection result, use for TF publish. More...
 
 HandEyeTargetBase ()
 
virtual bool setCameraIntrinsicParams (const sensor_msgs::CameraInfoConstPtr &msg)
 Set camera intrinsic parameters, e.g. camera intrinsic matrix and distortion coefficients. More...
 
virtual bool setParameter (std::string name, double value)
 Set target parameter to double value. More...
 
virtual bool setParameter (std::string name, float value)
 Set target parameter to float value. More...
 
virtual bool setParameter (std::string name, int value)
 Set target parameter to integer value. More...
 
virtual bool setParameter (std::string name, std::string value)
 Set target enum parameter to option specified by string. More...
 
virtual ~HandEyeTargetBase ()=default
 

Protected Member Functions

virtual bool setTargetDimension (double marker_measured_size, double marker_measured_separation)
 
virtual bool setTargetIntrinsicParams (int markers_x, int markers_y, int marker_size, int separation, int border_bits, const std::string &dictionary_id)
 

Private Attributes

std::mutex aruco_mutex_
 
int border_bits_
 
cv::aruco::PREDEFINED_DICTIONARY_NAME dictionary_id_
 
std::map< std::string, cv::aruco::PREDEFINED_DICTIONARY_NAME > marker_dictionaries_
 
double marker_separation_real_
 
int marker_size_
 
double marker_size_real_
 
int markers_x_
 
int markers_y_
 
int separation_
 

Additional Inherited Members

- Public Attributes inherited from moveit_handeye_calibration::HandEyeTargetBase
const std::map< std::string, std::size_t > CAMERA_DISTORTION_MODELS_VECTOR_DIMENSIONS
 
const std::size_t CAMERA_MATRIX_HEIGHT = 3
 
const std::size_t CAMERA_MATRIX_VECTOR_DIMENSION = 9
 
const std::size_t CAMERA_MATRIX_WIDTH = 3
 
const std::string LOGNAME = "handeye_target_base"
 
- Protected Attributes inherited from moveit_handeye_calibration::HandEyeTargetBase
std::mutex base_mutex_
 
cv::Mat camera_matrix_
 
cv::Mat distortion_coeffs_
 
std::vector< Parameterparameters_
 
cv::Vec3d rotation_vect_
 
bool target_params_ready_
 
cv::Vec3d translation_vect_
 

Detailed Description

Definition at line 79 of file handeye_target_aruco.h.

Constructor & Destructor Documentation

◆ HandEyeArucoTarget()

moveit_handeye_calibration::HandEyeArucoTarget::HandEyeArucoTarget ( )

Definition at line 84 of file handeye_target_aruco.cpp.

◆ ~HandEyeArucoTarget()

moveit_handeye_calibration::HandEyeArucoTarget::~HandEyeArucoTarget ( )
default

Member Function Documentation

◆ createTargetImage()

bool moveit_handeye_calibration::HandEyeArucoTarget::createTargetImage ( cv::Mat &  image) const
overridevirtual

Create an target image, so that the target can be viewed and printed.

Parameters
imageUse for storing the created image.
Returns
True if no errors happen, false otherwise.

Implements moveit_handeye_calibration::HandEyeTargetBase.

Definition at line 176 of file handeye_target_aruco.cpp.

◆ detectTargetPose()

bool moveit_handeye_calibration::HandEyeArucoTarget::detectTargetPose ( cv::Mat &  image)
overridevirtual

Given an image containing a target captured from a camera view point, get the target pose with respect to the camera optical frame. Target parameters and camera intrinsic parameters should be correctly set before calling this function.

Parameters
imageInput image, assume a grayscale image.
Returns
True if no errors happen, false otherwise.

Implements moveit_handeye_calibration::HandEyeTargetBase.

Definition at line 201 of file handeye_target_aruco.cpp.

◆ initialize()

bool moveit_handeye_calibration::HandEyeArucoTarget::initialize ( )
overridevirtual

Initialize handeye target. Call after setting the parameters.

Returns
True if initialization was successful, false otherwise.

Implements moveit_handeye_calibration::HandEyeTargetBase.

Definition at line 101 of file handeye_target_aruco.cpp.

◆ setTargetDimension()

bool moveit_handeye_calibration::HandEyeArucoTarget::setTargetDimension ( double  marker_measured_size,
double  marker_measured_separation 
)
protectedvirtual

Definition at line 156 of file handeye_target_aruco.cpp.

◆ setTargetIntrinsicParams()

bool moveit_handeye_calibration::HandEyeArucoTarget::setTargetIntrinsicParams ( int  markers_x,
int  markers_y,
int  marker_size,
int  separation,
int  border_bits,
const std::string &  dictionary_id 
)
protectedvirtual

Definition at line 126 of file handeye_target_aruco.cpp.

Member Data Documentation

◆ aruco_mutex_

std::mutex moveit_handeye_calibration::HandEyeArucoTarget::aruco_mutex_
private

Definition at line 145 of file handeye_target_aruco.h.

◆ border_bits_

int moveit_handeye_calibration::HandEyeArucoTarget::border_bits_
private

Definition at line 138 of file handeye_target_aruco.h.

◆ dictionary_id_

cv::aruco::PREDEFINED_DICTIONARY_NAME moveit_handeye_calibration::HandEyeArucoTarget::dictionary_id_
private

Definition at line 139 of file handeye_target_aruco.h.

◆ marker_dictionaries_

std::map<std::string, cv::aruco::PREDEFINED_DICTIONARY_NAME> moveit_handeye_calibration::HandEyeArucoTarget::marker_dictionaries_
private

Definition at line 131 of file handeye_target_aruco.h.

◆ marker_separation_real_

double moveit_handeye_calibration::HandEyeArucoTarget::marker_separation_real_
private

Definition at line 143 of file handeye_target_aruco.h.

◆ marker_size_

int moveit_handeye_calibration::HandEyeArucoTarget::marker_size_
private

Definition at line 136 of file handeye_target_aruco.h.

◆ marker_size_real_

double moveit_handeye_calibration::HandEyeArucoTarget::marker_size_real_
private

Definition at line 142 of file handeye_target_aruco.h.

◆ markers_x_

int moveit_handeye_calibration::HandEyeArucoTarget::markers_x_
private

Definition at line 134 of file handeye_target_aruco.h.

◆ markers_y_

int moveit_handeye_calibration::HandEyeArucoTarget::markers_y_
private

Definition at line 135 of file handeye_target_aruco.h.

◆ separation_

int moveit_handeye_calibration::HandEyeArucoTarget::separation_
private

Definition at line 137 of file handeye_target_aruco.h.


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


moveit_calibration_plugins
Author(s): Yu Yan
autogenerated on Fri Oct 18 2024 02:14:08