marcoesposito1988 / easy_aruco

ROS wrapper for the OpenCV integration of ArUco and ChArUco
GNU Lesser General Public License v3.0
21 stars 8 forks source link

Does aruco_ros need? #4

Open ccc1711 opened 2 years ago

ccc1711 commented 2 years ago

Do I still need aruco_ros if I use easy_aruco?

marcoesposito1988 commented 2 years ago

Hi @ccc1711,

if you just need to track the pose of a single ArUco marker or ChArUco board, easy_aruco can replace aruco_ros. It does not depend on it, it just wraps the OpenCV ArUco module.

If you need one of the more advanced functionality of the aruco_ros library, then you'll need to use that one.

ccc1711 commented 2 years ago

@marcoesposito1988 ok thanks! and why /easy_aruco_node/debug_image topic shows "No Image" in Rviz?

marcoesposito1988 commented 2 years ago

This should be because the camera_namespace launch argument is incorrect. You can use roswtf to check that the input topics of the easy_aruco node are connected to the output topics of the camera driver

ccc1711 commented 2 years ago

This should be because the camera_namespace launch argument is incorrect. You can use roswtf to check that the input topics of the easy_aruco node are connected to the output topics of the camera driver

I use the correct parameters of camera_namespace and I use roswtf to check and it shows that WARNING The following node subscriptions are unconnected: /easy_aruco_node: /camera/color/image_rect_color WARNING No tf messages

marcoesposito1988 commented 2 years ago

Could you please just start the camera driver, and post the output of rostopic list?

ccc1711 commented 2 years ago

Could you please just start the camera driver, and post the output of rostopic list? 1111 2222

marcoesposito1988 commented 2 years ago

I see. Can you try changing this line from image_rect_color to image_rect_raw? https://github.com/marcoesposito1988/easy_aruco/blob/master/src/Detector.cpp#L62

marcoesposito1988 commented 2 years ago

I see. Can you try changing this line from image_rect_color to image_rect_raw? master/src/Detector.cpp#L62

Sorry, this was incorrect. Can you post the output of rostopic info /camera/color/image_rect_color?

ccc1711 commented 2 years ago

I see. Can you try changing this line from image_rect_color to image_rect_raw? master/src/Detector.cpp#L62

Sorry, this was incorrect. Can you post the output of rostopic info /camera/color/image_rect_color?

3333

marcoesposito1988 commented 2 years ago

The camera node is supposed to publish that topic, but it isn't. Are you using a realsense? You may need to start rs_rgbd.launch https://github.com/IntelRealSense/realsense-ros/issues/1029#issuecomment-744425934 https://github.com/IntelRealSense/realsense-ros/blob/ddd6fe116859b960a59412538e91d085a368c871/realsense2_camera/launch/rs_rgbd.launch#L28

ccc1711 commented 2 years ago

The camera node is supposed to publish that topic, but it isn't. Are you using a realsense? You may need to start rs_rgbd.launch IntelRealSense/realsense-ros#1029 (comment) https://github.com/IntelRealSense/realsense-ros/blob/ddd6fe116859b960a59412538e91d085a368c871/realsense2_camera/launch/rs_rgbd.launch#L28

Thank you for solving my confusion~
i am using Realsense D435i now, and i start rs_camera.launch to start the camera driver but if i start the rs_rgbd.launch , it will fail 4444

marcoesposito1988 commented 2 years ago

it looks like you need to install rgbd_launch

ccc1711 commented 2 years ago

it looks like you need to install rgbd_launch

Thanks, it worked! I get marker_0 - marker_30 frames in tf ,and which one should I use as the tracking_marker_frame ?

marcoesposito1988 commented 2 years ago

Are you using a board? It sounds like you are using the marker tracking node with a board, and it is tracking each marker individually.

You can use any of them, but the precision would be worse than using the whole board. For that you need to use the board tracking marker with the right ID

ccc1711 commented 2 years ago

Are you using a board? It sounds like you are using the marker tracking node with a board, and it is tracking each marker individually.

You can use any of them, but the precision would be worse than using the whole board. For that you need to use the board tracking marker with the right ID

Okay~ I got it! I forgot to change the value of parameter “object_type” to “charuco_board”,and Now i has successed!
Thank you for your patience in solving my problems! Wish you a happy life~ 5555

marcoesposito1988 commented 2 years ago

Happy to hear that :smile: fingers crossed for your endeavors!

gavin112-lhy commented 1 year ago

Hi sir, I am able to recognize the board however the tf of the camera link is missing, but the board can be tracked. Is it normal? 01 And in the following second capture showing the easy_handeye calibration gui is working on sample taking, will the missing of the tf of the camera link affect the result? 02

marcoesposito1988 commented 1 year ago

Hi @gavin112-lhy,

this is because you shouldn't use the color optical frame as camera frame for the realsense, but camera_link. Please check the example launch file for the realsense in the easy_handeye docs

waliwali1111 commented 4 months ago

Hi @gavin112-lhy , I also want to use charuco for hand-eye calibration, but I don’t know how to combine it with easy_handeye. Can you give me some advice?