RGBD-SLAM remote mapping problems
Hi,
I am attempting to remotely build a map in real-time with RGBDSLAM over Wifi (if possible). I have Raspberry Pi 3 on my robot with Kinect XBOX 360 from which I am streaming RGB and depth images. On my workstation side I am trying to run RGBDSLAM on i5 CPU @ 3.10GHz, 16GB RAM with Nvidia GeForce GTX 960.
I already found and tried some of the suggestions posted here and here like trying to reduce bandwidth using monochrome images and QVGA resolution and setting subscriber_queue_size
to higher values than default.
I've noticed that when streaming compressed images I am receiving around 2,5 MiB/s (while for uncompressed it is around dobule of that - 4,1 MiB/s (mono), 5 Mib/s (color)).
But, when using a compressed image like /camera/rgb/image_mono/compressed
topic I get the following error on the robot side where openni_launch is running:
[ERROR] [1534762397.979395791]: Client [/rgbdslam] wants topic /camera/rgb/image_color/compressed to have datatype/md5sum [sensor_msgs/Image/060021388200f6f0f447d0fcd9c64743], but our version has [sensor_msgs/CompressedImage/8f7a12909da2c9d3332d540a0977563f]. Dropping connection.
I would like how to set compressed image transport properly because from my experience when using uncompressed images the lag is to big and when testing with GUI mode it stops after processing only 2 frames. Screenshot.
My objective is actually to run RGBDSLAM without GUI using rosservices.
I followed these steps after running a modified rgbdslam.launch file:
First I run:
rosservice call /rgbdslam/ros_ui_b pause false
[ INFO] [1534763725.680669692]: Got Service Request. Command: pause. Value: False
Secondly, to send point clouds to rviz:
rosservice call /rgbdslam/ros_ui send_all
[ INFO] [1534763732.347345683]: Got Service Request. Command: send_all
In rviz I tried to set subscribing topic to all of rgbdslam published topics /rgbdslam/online_clouds
, rgbdslam/aggregate_clouds
but only after setting it to /rgbdslam/batch_cloud
I get he following:
[ INFO] [1534763774.913977580]: Got Service Request. Command: send_all
[ INFO] [1534763774.914082722]: Sending out all clouds
I would like to visualize online mapping, but there is no point clouds Rviz. (except when subscribing to /camera/depth_registered_points)
When I try to call:
rosservice call /rgbdslam/ros_ui_s save_cloud /tmp/mycloud.pcd
I get:
[ INFO] [1534763835.047313752]: Got Service Request. Command: save_cloud. Value: /tmp/mycloud.pcd
[ WARN] [1534763835.047461813]: Cannot save empty graph. Aborted
Is there anyone who had the similar issues and found a way to resolve them? Any suggestions would be much appreciated. Thank you!
I'm running Ubuntu 16.04.4 LTS on both desktop and RPI with ROS Kinetic.