-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Getting Started with RealSense D457 #20
Comments
Update: I think I've worked it out. If I set |
Yes, you need to set the I expect that the data would look very bad using a simulated robot and real camera, I have never tried that, but the fact that you got something out of it is a positive sign that you are calling the services correctly. One important note to get the best possible results is to extrinsically calibrate your camera relative to the tool of your camera (hand-eye calibration). Extrinsic calibration will tell you precisely where the camera is mounted on the robot. You can use the industrial calibration library to do this. With a good enough estimate you should be able to see results that resemble the actual geometry of the object you are scanning, but you will see better results after a calibration has been performed. |
Good to know, thanks. Is there a recommended way to link up And can you give me more detail on how to view the mesh that's being generated in RViz? Which visualization type works for it, and what topic should it subscribe to? |
The Realsense driver optionally publishes its own TF tree to define frames relevant to the camera, and those frames are generally not connected to any other TF tree. You can work around this issue in a few ways:
I believe the mesh is of type |
Oop, nevermind. I forgot to update the |
I'm trying to get started with a RealSense D457, using Ros2 Humble on Ubuntu 22.04. I'm currently running a simulated robot on my computer, which is publishing joint positions, with the RealSense just sitting on my desk. Here's what I'm running:
ros2 launch realsense2_camera rs_pointcloud_launch.py align_depth.enable:=true
(I can see depth and RGB data visually in RVIZ)ros2 launch industrial_reconstruction reconstruction.launch.xml depth_image_topic:=/camera/camera/aligned_depth_to_color/image_raw color_image_topic:=/camera/camera/color/image_raw camera_info_topic:=/camera/camera/color/camera_info
(I verified that the published data matches between the twocamera_info
topics).ros2 service call /start_reconstruction industrial_reconstruction_msgs/srv/StartReconstruction "tracking_frame: 'base_link' relative_frame: 'world' translation_distance: 0.0 rotational_distance: 0.0 live: true tsdf_params: voxel_length: 0.02 sdf_trunc: 0.04 min_box_values: {x: 0.0, y: 0.0, z: 0.0} max_box_values: {x: 0.0, y: 0.0, z: 0.0} rgbd_params: {depth_scale: 1000.0, depth_trunc: 0.75, convert_rgb_to_intensity: false}"
After I run this service call, I seeStart Reconstruction
in the terminal where I launch Industrial Reconstructionros2 service call /stop_reconstruction industrial_reconstruction_msgs/srv/StopReconstruction "archive_directory: '/home/jonterry/Desktop/archive' mesh_filepath: '/home/jonterry/Desktop/results_mesh.ply' normal_filters: [{ normal_direction: {x: 0.0, y: 0.0, z: 1.0}, angle: 90}] min_num_faces: 1000"
After running this service call, I get errors in the launch terminal, where I think the root issue is:[Open3D WARNING] Write PLY failed: mesh has 0 vertices.
I think part of my issue is that I don't understand how
tracking_frame
andrelative_frame
are intended to work. It seems that if I put in any values except for what I have above, the launch window constantly givesFailed to get transform
errors.Are there specific topics that my simulated robot should be publishing to in order for the Industrial Reconstruction package to get whatever it needs?
Also, I saw on a different thread on here that, if I set
live
totrue
, I should be able to see data from the/markers
topic in RViz. What kind of visualization type should be added in RViz to see that data?The text was updated successfully, but these errors were encountered: