AprilRobotics / apriltag_ros

A ROS wrapper of the AprilTag 3 visual fiducial detector
Other
358 stars 338 forks source link

ROS2 april-tag #132

Closed trentatsa closed 2 years ago

trentatsa commented 2 years ago

If there is a plan to release an apriltag-ros package for ROS2, will that be anytime soon ?

wxmerkt commented 2 years ago

Hi @trentatsa - please take a look at #76 where there's a link to https://github.com/christianrauch/apriltag_ros

trentatsa commented 2 years ago

Hi @wxmerkt ,unfortunately that package doesn't have all the features such as bundle tags etc etc. Will there be no official release by AprilRobotics ?

wxmerkt commented 2 years ago

This package right now is community supported. I'll let @christian-rauch comment on the ROS2 side of things. In either case, support would likely have to be provided by the community - happy to look at any PR to add this functionality

There is also a port in #114 - perhaps you could test it and give feedback on the PR?

lukeschmitt-tr commented 2 years ago

The port in #114 works as an almost drop-in replacement for my organization's purposes. For context, we primarily use the single image detector node and the single image tag detection service.

trentatsa commented 2 years ago

Hi @LSinterbotix and @wxmerkt, thanks for the suggestion. @wep21 great work on the port. So I have tested out the port, seem like single tag server/ client works perfectly however the continuous detector node has a bug. It detects the tag, publishes the detection but then the node dies. Maybe @wep21 can check this ?

wep21 commented 2 years ago

@trentatsa Could you tell me how to reproduce the node dying? I will check that.

trentatsa commented 2 years ago

Hi @wep21, no problem, appreciate the help. Running ROS Galactic on Jetpack 5.1 on Jetson Xavier which is based on Ubuntu 20.04. Going to give it a bash on generic PC with base Ubuntu 20.04 on it. All parameters are default as found in your repository. Let me know if you need any other info!

wep21 commented 2 years ago

@trentatsa I'm sorry, but I can't reproduce the issue. I tested with the following commands.

ros2 launch apriltag_ros continuous_detection.launch.xml
ros2 run image_publisher image_publisher_node /home/daisuke/Downloads/apriltagrobots_overlay.jpg --ros-args -r image_raw:=image_rect -r __ns:=/camera_rect

I added some modifications to remove conflicts with master branch. Could you pull them and try it with the commands above? If there are any errors when the node die, could you share the error messages?

trentatsa commented 2 years ago

@wep21 so I have tested it and it seems that its a platform thing (Jetson Xavier Nx). Works perfectly on a normal PC. I think it might be an opencv thing as Jetson dont use generic Ubuntu opencv. Will do some digging.

orjano-max commented 1 year ago

@trentatsa Did you find any solution to this compatibility issue on the Jetson Xavier? I am currently trying to run it on a Jetson AGX Xavier running Jetpack 5.0.2 and ROS2 Foxy. Experiencing a similar issue where i run:

 ros2 launch apriltag_ros tag_realsense.launch.py

And once the tag appears in the image screen the node crashes and i get this error:

[component_container-1] what(): OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/matrix.cpp:250: error: (-215:Assertion failed) s >= 0 in function 'setSize' [component_container-1] [ERROR] [component_container-1]: process has died [pid 34486, exit code -6, cmd '/opt/ros/foxy/lib/rclcpp_components/component_container --ros-args -r __node:=tag_container -r __ns:=/apriltag']

wxmerkt commented 1 year ago

Are you using @christian-rauch's apriltag_ros for ros2? If so it might be better to post in the corresponding repository

trentatsa commented 1 year ago

@orjano-max, I did find a fix.

Comment out the following lines in continuous_detector.cpp

// Publish the camera image overlaid by outlines of the detected tags and // their payload values //if (draw_tag_detectionsimage) { // tagdetector->drawDetections(cvimage); // tag_detections_imagepublisher.publish(cvimage->toImageMsg()); //}

orjano-max commented 1 year ago

@wxmerkt I will, thanks for the heads up. @trentatsa Thank you for the response, i realized i did not use the same version of the apriltag package. Fixed the issue by building vision_opencv from source, more info: https://github.com/christianrauch/apriltag_ros/issues/9#issuecomment-1429778790