Calibration Library 1.0.0
A C++ library for camera calibration and vision-related geometric transformations
Loading...
Searching...
No Matches
handeyedlt.cpp File Reference
#include "calib/estimation/linear/handeye.h"
#include <calib/estimation/common/se3_utils.h>
#include <iostream>
#include <numbers>
Include dependency graph for handeyedlt.cpp:

Go to the source code of this file.

Namespaces

namespace  calib
 Linear multi-camera extrinsics initialisation (DLT)
 

Functions

static auto calib::make_motion_pair (const Eigen::Isometry3d &base_se3_gripper_a, const Eigen::Isometry3d &cam_se3_target_a, const Eigen::Isometry3d &base_se3_gripper_b, const Eigen::Isometry3d &cam_se3_target_b) -> MotionPair
 
static auto calib::is_good_pair (const MotionPair &motion_pair, double min_angle, bool reject_axis_parallel, double axis_parallel_eps) -> bool
 
auto calib::build_all_pairs (const std::vector< Eigen::Isometry3d > &base_se3_gripper, const std::vector< Eigen::Isometry3d > &cam_se3_target, double min_angle_deg=1.0, bool reject_axis_parallel=true, double axis_parallel_eps=1e-3) -> std::vector< MotionPair >
 Generate all valid motion pairs from pose sequences.
 
static auto calib::estimate_rotation_allpairs_weighted (const std::vector< MotionPair > &pairs) -> Eigen::Matrix3d
 
static auto calib::estimate_translation_allpairs_weighted (const std::vector< MotionPair > &pairs, const Eigen::Matrix3d &rot_x) -> Eigen::Vector3d
 
auto calib::estimate_handeye_dlt (const std::vector< Eigen::Isometry3d > &base_se3_gripper, const std::vector< Eigen::Isometry3d > &camera_se3_target, double min_angle_deg=1.0) -> Eigen::Isometry3d
 Estimates the hand-eye transformation using the Tsai-Lenz algorithm with all pairs of input transformations and weighted averaging.