ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Astra Pro with ROS & rtabmap

asked 2017-02-06 02:08:48 -0500

enthusiast-robotics gravatar image

updated 2017-02-06 19:55:46 -0500


Has anyone been able to use the Astra Pro camera with ROS Kinetic and rtabmap? I was able to get the Astra Pro camera working with rviz (RGB image stream + Depth) using the usb_cam node and the Astra SDK.

However, I keep getting a strange error when using rtabmap_ros. I described the error in the following link:

Has anyone been able to do so, and if so, would you mind providing some guidance on the topic?

Thank you!

EDIT: Attached important information from the described link:

I am using Ubuntu 16.04 and Kinetic ROS.

I am using an Astra Pro Camera. Since RGB is not supported for OpenNi for the Pro version, I am using the Astra SDK for the Depth, and the usb_cam_node for the RGB camera:

I installed rtabmap first from the binaries and did not work. Then I deleted everything and installed from Source and I still get the same error. I made sure to change the topics for the rtabmap launch, but I am getting the following error:

/rtabmap/rgbd_odometry subscribed to (approx sync): /usb_cam/image_raw, /camera/depth_registered/image_raw,
/usb_cam/camera_info terminate called after throwing an instance of 'UException' what(): [FATAL] (2017-02-06 16:37:20.365) CameraModel.cpp:77::CameraModel() Condition (fx > 0.0) not met! [fx=0.000000]

Followed by the following:

[ WARN] [1486366640.733577972]: odometry: Could not get transform from camera_link to head_camera (stamp=1486366640.510289) after 0.200000 seconds ("wait_for_transform_duration"=0.200000)! Error=". canTransform returned after 0.201911 timeout was 0.2."

I tried creating a calibration file, but it seems that if I go to Window->Preferences->Source it doesn't allow me to change any of the parameters (everything is dark).

My launch commands are as follows (none of them work):

roslaunch rtabmap_ros rgbd_mapping.launch rtabmap_args:="--delete_db_on_start" rviz:=true rtabmapviz:=false rgb_topic:=/usb_cam/image_raw depth_topic:=/camera/depth_registered/image_raw camera_info_topic:=/usb_cam/camera_info

roslaunch rtabmap_ros rgbd_mapping.launch rtabmap_args:="--delete_db_on_start" rgb_topic:=/usb_cam/image_raw depth_topic:=/camera/depth_registered/image_raw camera_info_topic:=/usb_cam/camera_info

EDIT1: It seems that the /usb_cam/camera_info topic is giving me zero for most of the values. Perhaps something to do with the Astra Pro driver that is not passing the RGB camera info to the usb_cam node?

-- header:    
seq: 528   
    secs: 1486431518
    nsecs: 934969955   
frame_id: head_camera 
height: 480 
width: 640
distortion_model: '' 
D: [] 
K: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] 
R: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] 
P: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] 
binning_x: 0 
binning_y: 0 
x_offset: 0   
y_offset: 0   
height: 0 
width: 0   
do_rectify: False
edit retag flag offensive close merge delete


Cross-posting like this (to the pkg's issue tracker) is not really nice: we run the risk of duplication of effort and reduced visibility of the discussions.

Please update this post with at least the same details as you put in the issue on the tracker.

gvdhoorn gravatar image gvdhoorn  ( 2017-02-06 02:47:27 -0500 )edit

Sorry about that! Updated the post with the same details as the issue on the tracker!

enthusiast-robotics gravatar image enthusiast-robotics  ( 2017-02-06 03:04:19 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2017-02-07 00:31:14 -0500

enthusiast-robotics gravatar image

Issue solved! Please refer to

There were two problems when setting the Astra Pro, Ubuntu 16.04, ROS Kinetic with RTABmap:

  1. There was no default RGB calibration file. Simply run the monocular calibration procedure ( ; requires a checkerboard) and obtain a .yaml file. Then edit this .yaml file to match with the camera_name(head_camera by default), and place it inside the $ROS_HOME/camera_info folder.
  2. Since Astra Pro did not seem to have direct access to the RGB camera on the Astra SDK, I used the usb_cam package to access the data ( ) However, usb_cam uses by default the name "head_camera" for the frame_id and camera_name. Simply change the frame_id to "camera_rgb_optical_frame", and remake the package.


edit flag offensive delete link more


@enthusiast-robotics Does your solution work for the Astra orbbec pro camera?

distro gravatar image distro  ( 2022-03-26 01:58:35 -0500 )edit

Hi,have you tried the solution on astra pro camera,I use the ros_astra_camera driver can successfully display the rgb,depth and ir image but it can't detect my camera in rtapmap

matrix gravatar image matrix  ( 2023-01-31 23:14:34 -0500 )edit

Question Tools

1 follower


Asked: 2017-02-06 02:08:48 -0500

Seen: 2,583 times

Last updated: Feb 07 '17