![]() |
apriltag_ros package from apriltag_ros repoapriltag_ros |
|
Package Summary
Tags | No category tags. |
Version | 3.2.1 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/AprilRobotics/apriltag_ros.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2022-04-08 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Danylo Malyuta
- Wolfgang Merkt
Authors
- Danylo Malyuta
Changelog for package apriltag_ros
3.2.1 (2022-04-05)
- Fixed propagation of apriltag and Eigen headers and libraries (#124)
- Drop old C++11 as it breaks with new log4cxx.
- Contributors: Jochen Sprickerhof, Remo Diethelm, Wolfgang Merkt
3.2.0 (2022-03-10)
- Add transport hint option (#108)
- Move to using the apriltag CMake target (#104)
- Set the tag\'s parent frame to the camera optical frame (#101)
- Fix bug in K matrix in single_image_client (#103)
- Add configurable max_hamming_distance for the AprilTag Detector (#93)
- Introduce lazy processing for ContinuousDetector (#80)
- Contributors: Akshay Prasad, Amal Nanavati, Christian Rauch, Hongzhuo Liang, Wolfgang Merkt
3.1.2 (2020-07-15)
- Add support for tagCircle21h7, tagCircle49h12 (#69)
- Add support for tagCustom48h12 (#65)
- Contributors: Anthony Biviano, Kyle Saltmarsh, Wolfgang Merkt, kai wu
3.1.1 (2019-10-07)
- Add support for tagStandard41h12 and tagStandard52h13 (#63, #59).
- Add gray image input support (#58).
- Contributors: Alexander Reimann, Moritz Zimmermann, Samuel Bachmann, Wolfgang Merkt
3.1.0 (2019-05-25)
- Prepare for release (3.1) and fix catkin_lint errors
- Upgrade to AprilTag 3, fix installation, and performance improvements (#43) Upgrade to AprilTag 3, fix installation, and performance improvements
- Rename package to apriltag_ros
- Contributors: Wolfgang Merkt
1.0.0 (2018-05-14)
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
Name |
---|
eigen |
libopencv-dev |
Dependant Packages
Name | Repo | Deps |
---|---|---|
rtabmap_ros | github-introlab-rtabmap_ros |
Launch files
- launch/single_image_client.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_single_image_client_node]
- image_load_path
- image_save_path
- launch/continuous_detection.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_continuous_node]
- camera_name [default: /camera_rect]
- image_topic [default: image_rect]
- launch/single_image_server.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_single_image_server_node]
Services
Plugins
Recent questions tagged apriltag_ros at answers.ros.org
![]() |
apriltag_ros package from apriltag_ros repoapriltag_ros |
|
Package Summary
Tags | No category tags. |
Version | 3.2.1 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/AprilRobotics/apriltag_ros.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2022-04-08 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Danylo Malyuta
- Wolfgang Merkt
Authors
- Danylo Malyuta
Changelog for package apriltag_ros
3.2.1 (2022-04-05)
- Fixed propagation of apriltag and Eigen headers and libraries (#124)
- Drop old C++11 as it breaks with new log4cxx.
- Contributors: Jochen Sprickerhof, Remo Diethelm, Wolfgang Merkt
3.2.0 (2022-03-10)
- Add transport hint option (#108)
- Move to using the apriltag CMake target (#104)
- Set the tag\'s parent frame to the camera optical frame (#101)
- Fix bug in K matrix in single_image_client (#103)
- Add configurable max_hamming_distance for the AprilTag Detector (#93)
- Introduce lazy processing for ContinuousDetector (#80)
- Contributors: Akshay Prasad, Amal Nanavati, Christian Rauch, Hongzhuo Liang, Wolfgang Merkt
3.1.2 (2020-07-15)
- Add support for tagCircle21h7, tagCircle49h12 (#69)
- Add support for tagCustom48h12 (#65)
- Contributors: Anthony Biviano, Kyle Saltmarsh, Wolfgang Merkt, kai wu
3.1.1 (2019-10-07)
- Add support for tagStandard41h12 and tagStandard52h13 (#63, #59).
- Add gray image input support (#58).
- Contributors: Alexander Reimann, Moritz Zimmermann, Samuel Bachmann, Wolfgang Merkt
3.1.0 (2019-05-25)
- Prepare for release (3.1) and fix catkin_lint errors
- Upgrade to AprilTag 3, fix installation, and performance improvements (#43) Upgrade to AprilTag 3, fix installation, and performance improvements
- Rename package to apriltag_ros
- Contributors: Wolfgang Merkt
1.0.0 (2018-05-14)
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
Name |
---|
eigen |
libopencv-dev |
Dependant Packages
Name | Repo | Deps |
---|---|---|
rtabmap_ros | github-introlab-rtabmap_ros |
Launch files
- launch/single_image_client.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_single_image_client_node]
- image_load_path
- image_save_path
- launch/continuous_detection.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_continuous_node]
- camera_name [default: /camera_rect]
- image_topic [default: image_rect]
- launch/single_image_server.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_single_image_server_node]
Services
Plugins
Recent questions tagged apriltag_ros at answers.ros.org
![]() |
apriltag_ros package from apriltag2_node repoapriltag_ros |
|
Package Summary
Tags | No category tags. |
Version | 2.1.0 |
License | MIT |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/christianrauch/apriltag2_node.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2021-08-18 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Christian Rauch
Authors
AprilTag ROS2 Node
This ROS2 node uses the AprilTag library to detect AprilTags in images and publish their pose, id and additional metadata.
For more information on AprilTag, the paper and the reference implementation: https://april.eecs.umich.edu/software/apriltag.html
Topics
Subscriptions:
The node subscribes via a image_transport::CameraSubscriber
to /apriltag/image
. The set of topic names depends on the type of image transport (parameter image_transport
) selected (raw
or compressed
):
- /apriltag/image
(raw
, type: sensor_msgs/Image
)
- /apriltag/image/compressed
(compressed
, type: sensor_msgs/CompressedImage
)
- /apriltag/camera_info
(type: sensor_msgs/CameraInfo
)
Publisher:
-
/tf
(type:tf2_msgs/TFMessage
) -
/apriltag/detections
(type:apriltag_msgs/AprilTagDetectionArray
)
The camera intrinsics K
in CameraInfo
are used to compute the marker tag pose T
from the homography H
. The image and the camera intrinsics need to have the same timestamp.
The tag poses are published on the standard TF topic /tf
with the header set to the image header and child_frame_id
set to either tag<family>:<id>
(e.g. "tag36h11:0") or the frame name selected via configuration file. Additional information about detected tags is published as AprilTagDetectionArray
message, which contains the original homography matrix, the hamming
distance and the decision_margin
of the detection.
Configuration
The node is configured via a yaml configurations file. For the complete ROS yaml parameter file syntax, see: https://github.com/ros2/rcl/tree/master/rcl_yaml_param_parser.
The file has the format:
apriltag: # namespace
apriltag: # node name
ros__parameters:
# required
image_transport: raw # image format: "raw" or "compressed" (default: raw)
family: <tag family> # tag family name: 16h5, 25h9, 36h11 (default: 36h11)
size: <tag edge size> # tag edge size in meter (default: 2.0)
z_up: true # rotate about x-axis to have Z pointing upwards (default: false)
# (optional) tuning of detection
max_hamming: 0 # maximum allowed hamming distance (corrected bits)
decimate: 1.0 # decimate resolution for quad detection
blur: 0.0 # sigma of Gaussian blur for quad detection
refine-edges: 1 # snap to strong gradients
threads: 1 # number of threads
debug: 0 # write additional debugging images to current working directory
# (optional) list of tags
tag_ids: [<id1>, <id2>, ...] # tag IDs for which to publish transform
tag_frames: [<frame1>, <frame2>, ...] # optional frame names
tag_sizes: [<size1>, <size1>, ...] # optional tag-specific edge size
The parameters family
and size
are required. family
(string) defines the tag family for the detector and must be one of 16h5
, 25h9
, 36h11
, Circle21h7
, Circle49h12
, Custom48h12
, Standard41h12
, Standard52h13
. size
(float) is the tag edge size in meters, assuming square markers.
Instead of publishing all tag poses, the list tag_ids
can be used to only publish selected tag IDs. Each tag can have an associated child frame name in tag_frames
and a tag specific size in tag_sizes
. These lists must either have the same length as tag_ids
or may be empty. In this case, a default frame name of the form tag<family>:<id>
and the default tag edge size size
will be used.
The remaining parameters are set to the their default values from the library. See apriltag.h
for a more detailed description of their function.
See tags_16h5_all.yaml for an example configuration that publishes all markers in the 16h5 family and tags_16h5_filtered.yaml for filtering tags.
The composable node can be loaded into an already running component manager with a configuration file, by passing the configuration file path to __params
:
ros2 component load /ComponentManager apriltag_ros AprilTagNode \
-r /apriltag/image:=/camera/image \
-r /apriltag/camera_info:=/camera/camera_info \
-r __params:=`ros2 pkg prefix apriltag_ros`/share/apriltag_ros/cfg/tags_16h5_all.yaml
A component manager can be started via:
ros2 run rclcpp_components component_container
Alternatively, a launch file can be used to start a component manager and load the composable node with configuration:
ros2 launch apriltag_ros tag_16h5_all.launch.py
Wiki Tutorials
Source Tutorials
Package Dependencies
Deps | Name | |
---|---|---|
1 | ament_cmake | |
1 | rclcpp | |
1 | rclcpp_components | |
2 | sensor_msgs | |
2 | tf2_msgs | |
1 | apriltag_msgs | |
3 | apriltag | |
1 | image_transport | |
3 | cv_bridge |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged apriltag_ros at answers.ros.org
![]() |
apriltag_ros package from apriltag_ros repoapriltag_ros |
|
Package Summary
Tags | No category tags. |
Version | 2.1.0 |
License | MIT |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/christianrauch/apriltag_ros.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2021-08-18 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Christian Rauch
Authors
AprilTag ROS2 Node
This ROS2 node uses the AprilTag library to detect AprilTags in images and publish their pose, id and additional metadata.
For more information on AprilTag, the paper and the reference implementation: https://april.eecs.umich.edu/software/apriltag.html
Topics
Subscriptions:
The node subscribes via a image_transport::CameraSubscriber
to /apriltag/image
. The set of topic names depends on the type of image transport (parameter image_transport
) selected (raw
or compressed
):
- /apriltag/image
(raw
, type: sensor_msgs/Image
)
- /apriltag/image/compressed
(compressed
, type: sensor_msgs/CompressedImage
)
- /apriltag/camera_info
(type: sensor_msgs/CameraInfo
)
Publisher:
-
/tf
(type:tf2_msgs/TFMessage
) -
/apriltag/detections
(type:apriltag_msgs/AprilTagDetectionArray
)
The camera intrinsics K
in CameraInfo
are used to compute the marker tag pose T
from the homography H
. The image and the camera intrinsics need to have the same timestamp.
The tag poses are published on the standard TF topic /tf
with the header set to the image header and child_frame_id
set to either tag<family>:<id>
(e.g. "tag36h11:0") or the frame name selected via configuration file. Additional information about detected tags is published as AprilTagDetectionArray
message, which contains the original homography matrix, the hamming
distance and the decision_margin
of the detection.
Configuration
The node is configured via a yaml configurations file. For the complete ROS yaml parameter file syntax, see: https://github.com/ros2/rcl/tree/master/rcl_yaml_param_parser.
The file has the format:
apriltag: # namespace
apriltag: # node name
ros__parameters:
# required
image_transport: raw # image format: "raw" or "compressed" (default: raw)
family: <tag family> # tag family name: 16h5, 25h9, 36h11 (default: 36h11)
size: <tag edge size> # tag edge size in meter (default: 2.0)
z_up: true # rotate about x-axis to have Z pointing upwards (default: false)
# (optional) tuning of detection
max_hamming: 0 # maximum allowed hamming distance (corrected bits)
decimate: 1.0 # decimate resolution for quad detection
blur: 0.0 # sigma of Gaussian blur for quad detection
refine-edges: 1 # snap to strong gradients
threads: 1 # number of threads
debug: 0 # write additional debugging images to current working directory
# (optional) list of tags
tag_ids: [<id1>, <id2>, ...] # tag IDs for which to publish transform
tag_frames: [<frame1>, <frame2>, ...] # optional frame names
tag_sizes: [<size1>, <size1>, ...] # optional tag-specific edge size
The parameters family
and size
are required. family
(string) defines the tag family for the detector and must be one of 16h5
, 25h9
, 36h11
, Circle21h7
, Circle49h12
, Custom48h12
, Standard41h12
, Standard52h13
. size
(float) is the tag edge size in meters, assuming square markers.
Instead of publishing all tag poses, the list tag_ids
can be used to only publish selected tag IDs. Each tag can have an associated child frame name in tag_frames
and a tag specific size in tag_sizes
. These lists must either have the same length as tag_ids
or may be empty. In this case, a default frame name of the form tag<family>:<id>
and the default tag edge size size
will be used.
The remaining parameters are set to the their default values from the library. See apriltag.h
for a more detailed description of their function.
See tags_16h5_all.yaml for an example configuration that publishes all markers in the 16h5 family and tags_16h5_filtered.yaml for filtering tags.
The composable node can be loaded into an already running component manager with a configuration file, by passing the configuration file path to __params
:
ros2 component load /ComponentManager apriltag_ros AprilTagNode \
-r /apriltag/image:=/camera/image \
-r /apriltag/camera_info:=/camera/camera_info \
-r __params:=`ros2 pkg prefix apriltag_ros`/share/apriltag_ros/cfg/tags_16h5_all.yaml
A component manager can be started via:
ros2 run rclcpp_components component_container
Alternatively, a launch file can be used to start a component manager and load the composable node with configuration:
ros2 launch apriltag_ros tag_16h5_all.launch.py
Wiki Tutorials
Source Tutorials
Package Dependencies
Deps | Name | |
---|---|---|
1 | ament_cmake | |
1 | rclcpp | |
1 | rclcpp_components | |
2 | sensor_msgs | |
2 | tf2_msgs | |
1 | apriltag_msgs | |
3 | apriltag | |
1 | image_transport | |
3 | cv_bridge |
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged apriltag_ros at answers.ros.org
![]() |
apriltag_ros package from apriltags2_ros repoapriltag_ros |
|
Package Summary
Tags | No category tags. |
Version | 3.2.1 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/dmalyuta/apriltags2_ros.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2022-04-08 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Danylo Malyuta
- Wolfgang Merkt
Authors
- Danylo Malyuta
Changelog for package apriltag_ros
3.2.1 (2022-04-05)
- Fixed propagation of apriltag and Eigen headers and libraries (#124)
- Drop old C++11 as it breaks with new log4cxx.
- Contributors: Jochen Sprickerhof, Remo Diethelm, Wolfgang Merkt
3.2.0 (2022-03-10)
- Add transport hint option (#108)
- Move to using the apriltag CMake target (#104)
- Set the tag\'s parent frame to the camera optical frame (#101)
- Fix bug in K matrix in single_image_client (#103)
- Add configurable max_hamming_distance for the AprilTag Detector (#93)
- Introduce lazy processing for ContinuousDetector (#80)
- Contributors: Akshay Prasad, Amal Nanavati, Christian Rauch, Hongzhuo Liang, Wolfgang Merkt
3.1.2 (2020-07-15)
- Add support for tagCircle21h7, tagCircle49h12 (#69)
- Add support for tagCustom48h12 (#65)
- Contributors: Anthony Biviano, Kyle Saltmarsh, Wolfgang Merkt, kai wu
3.1.1 (2019-10-07)
- Add support for tagStandard41h12 and tagStandard52h13 (#63, #59).
- Add gray image input support (#58).
- Contributors: Alexander Reimann, Moritz Zimmermann, Samuel Bachmann, Wolfgang Merkt
3.1.0 (2019-05-25)
- Prepare for release (3.1) and fix catkin_lint errors
- Upgrade to AprilTag 3, fix installation, and performance improvements (#43) Upgrade to AprilTag 3, fix installation, and performance improvements
- Rename package to apriltag_ros
- Contributors: Wolfgang Merkt
1.0.0 (2018-05-14)
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
Name |
---|
eigen |
libopencv-dev |
Dependant Packages
Launch files
- launch/single_image_client.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_single_image_client_node]
- image_load_path
- image_save_path
- launch/continuous_detection.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_continuous_node]
- camera_name [default: /camera_rect]
- image_topic [default: image_rect]
- launch/single_image_server.launch
-
- launch_prefix [default: ]
- node_namespace [default: apriltag_ros_single_image_server_node]