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.