Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration camera_calibration handeye_realsense

Repository Summary

Description ROS2 Package for Hand-Eye Calibration
Checkout URI https://github.com/shengyangzhuang/handeye_calibration_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-05-02
Dev Status UNKNOWN
Released UNRELEASED
Tags computer-vision robotics ros2 handeyecalibration
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
camera_calibration 0.0.0
handeye_realsense 0.0.0

README

handeye_calibration_ros2

This is a ROS2 python handeye calibration package. It is hardware-independent and can be applied to any depth/RGB camera with ROS2 wrappers available.

In summary, it provides functionality includes:

  1. Sample and save the robot pose and tracking object pose with a simple keyboard click.
  2. Compute and save the result of the eye-in-hand calibration through the Tsai-Lenz method implemented with OpenCV.
  3. Publish the hand-eye calibration result and visualize it rviz.

We also provided a simulation demo where you can add a virtual camera to start using the package. Please find the pkg handeye_calibration_ros2_sim

To adapt to your usage, you only need to modify all the information in a single file:

  1. The camera image topic
  2. The name of the robot link names
  3. The camera matrix and distortion coefficient

You can also modify other parameters as per your preference in the information file.

Please feel free to raise an issue as we seek to test the package performance under different hardware software environments. This would help us improve the package and make it truly universal!

sim_positions_1 real_positions_1

Hardware and Software Tested:

Hardware:

  1. Robot: KUKA LBR iiwa 7, AgileX Robotics PiPER
  2. Camera:
    • Intel RealSense D415, D435
    • Microsoft Azure Kinect
  3. Chessboard
  4. ArUco Marker:
    • ID: 365
    • Side Length: 150mm

Software:

  1. Robot Driver: lbr_fri_ros2_stack
  2. Camera Drivers:
    • realsense-ros
    • Azure_Kinect_ROS_Driver
  3. Operating System: Ubuntu 22.04
  4. ROS 2: Humble

Table of Contents

  1. Overview
  2. Installation
  3. Usage
  4. Example
  5. Contributing
  6. Citation

Overview

This package provides a solution for hand-eye calibration between a robot arm and a camera in a ROS2 environment. It is designed to support various robotic and vision systems, offering flexibility for different hardware configurations.

Installation

  1. Create your workspace and clone this repository:
    mkdir -p handeye_calibration_ws/src
    cd handeye_calibration_ws/src
    git clone https://github.com/shengyangzhuang/handeye_calibration_ros2.git
    
  1. Install dependencies:
    rosdep install --from-paths src --ignore-src -r -y
    
  1. Build the package

    RealSense:

        colcon build --packages-select handeye_realsense
        
Azure Kinect:
        colcon build --packages-select handeye_ak
        
  1. Source your ROS2 workspace:
    source install/setup.bash
    

Prerequisits

  1. Install the RealSense ROS2 wrapper.

Usage

  1. Calibrate the camera intrinsics and record the intrinsic matrix K and distortion coefficient D at realsense_info.yaml. We also provided a package using the chessboard to calibrate the camera intrinsics, see camera_calibration.

  2. Change the parameters at config.yaml

  3. Start the camera node

    RealSense:

```bash

File truncated at 100 lines see the full file

Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration
Repo symbol

handeye_calibration_ros2 repository

computer-vision robotics ros2 handeyecalibration