This package provides a detector for ArUco markers in ROS2.
Subscripes to a sensor_msgs::msg::Image topic specified in the params file. This is the image on which aruco detection is performed.
Subscribes to a sensor_msgs::msg::CameraInfo topic necessary to retrieve the 3d pose of an aruco marker.
Detects arUco markers on the image. Calculates the position of the markers and publishes poses over the topic as a geometry_msgs::msg::PoseArray message.
If the detect_board param is set then the board position is published as a geometry_msgs::msg::PoseStamped message over the board pose topic. The position published is the centre of the rectangular board created in src/aruco_detector.cpp in the createRectangularBoard function.
If the visualize param is set the detected arUco markers, and the board centre, if enabled, are visualized on the input image used for detection.
To use the ArUco detector, follow one of these steps:
-
Run the ArUco detector node to use default parameters specified in
src/aruco_detector_ros.cpp:ros2 run aruco_detector aruco_detector_node
-
Launch the ArUco detector node to use parameters specified in
config/aruco_detector_params.yaml:ros2 launch aruco_detector aruco_detector.launch.py
The ArUco detector can be configured by modifying the parameters in the config/aruco_detector_params.yaml file.