introlab / rtabmap_ros Goto Github PK
View Code? Open in Web Editor NEWRTAB-Map's ROS package.
Home Page: http://wiki.ros.org/rtabmap_ros
License: BSD 3-Clause "New" or "Revised" License
RTAB-Map's ROS package.
Home Page: http://wiki.ros.org/rtabmap_ros
License: BSD 3-Clause "New" or "Revised" License
I'm building from source on Arch Linux. At step 2 of installation guide my make -j4
fails because of toro3d
compilation issues. Basically all starts from a no match from 'operator<<'
problem:
[ 10%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/toro3d/treeoptimizer3_iteration.cpp.o
[ 10%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/toro3d/posegraph3.cpp.o
[ 11%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/toro3d/treeoptimizer3.cpp.o
[ 11%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/Graph.cpp.o
In file included from /home/luke/Download/rtabmap/corelib/src/toro3d/posegraph.hh:270:0,
from /home/luke/Download/rtabmap/corelib/src/toro3d/posegraph3.hh:46,
from /home/luke/Download/rtabmap/corelib/src/toro3d/posegraph3.cpp:42:
/home/luke/Download/rtabmap/corelib/src/toro3d/posegraph.hxx: In member function ‘bool AISNavigation::TreePoseGraph<Ops>::sanityCheck()’:
/home/luke/Download/rtabmap/corelib/src/toro3d/posegraph.hxx:674:46: error: no match for ‘operator<<’ (operand types are ‘std::basic_ostream<char>’ and ‘std::ostream {aka std::basic_ostream<char>}’)
std::cerr << "wrong direction of the edges" << std::cerr;
^
/home/luke/Download/rtabmap/corelib/src/toro3d/posegraph.hxx:674:46: note: candidate: operator<<(int, int) <built-in>
/home/luke/Download/rtabmap/corelib/src/toro3d/posegraph.hxx:674:46: note: no known conversion for argument 2 from ‘std::ostream {aka std::basic_ostream<char>}’ to ‘int’
A similar issue was reported here, but I already tried Debug mode as suggested (with no luck) and I am able to compile TORO in standalone.
Version 0.7 of the binaries on Hydro:
/opt/ros/hydro/bin$ ./rtabmap
[ INFO] (2015-01-09 13:31:18.237) main.cpp:46::main() Program started...
Illegal instruction (core dumped)
Output on valgrind:
valgrind: Unrecognised instruction at address 0x4f58511.
==3578== at 0x4F58511: rtabmap::Transform::getIdentity() (in /opt/ros/hydro/lib/rtabmap-0.7/librtabmap_core.so)
==3578== by 0x534E1F7: rtabmap::MainWindow::MainWindow(rtabmap::PreferencesDialog*, QWidget*) (in /opt/ros/hydro/lib/rtabmap-0.7/librtabmap_gui.so)
==3578== by 0x402BD2: main (in /opt/ros/hydro/bin/rtabmap)
==3578== Your program just tried to execute an instruction that Valgrind
==3578== did not recognise. There are two possible reasons for this.
==3578== 1. Your program has a bug and erroneously jumped to a non-code
==3578== location. If you are running Memcheck and you just saw a
==3578== warning about a bad jump, it's probably your program's fault.
==3578== 2. The instruction is legitimate but Valgrind doesn't handle it,
==3578== i.e. it's Valgrind's fault. If you think this is the case or
==3578== you are not sure, please let us know and we'll try to fix it.
==3578== Either way, Valgrind will now raise a SIGILL signal which will
==3578== probably kill your program.
==3578==
==3578== Process terminating with default action of signal 4 (SIGILL)
==3578== Illegal opcode at address 0x4F58511
==3578== at 0x4F58511: rtabmap::Transform::getIdentity() (in /opt/ros/hydro/lib/rtabmap-0.7/librtabmap_core.so)
==3578== by 0x534E1F7: rtabmap::MainWindow::MainWindow(rtabmap::PreferencesDialog*, QWidget*) (in /opt/ros/hydro/lib/rtabmap-0.7/librtabmap_gui.so)
==3578== by 0x402BD2: main (in /opt/ros/hydro/bin/rtabmap)
==3578==
==3578== HEAP SUMMARY:
==3578== in use at exit: 2,462,679 bytes in 16,060 blocks
==3578== total heap usage: 66,941 allocs, 50,881 frees, 1,382,862,474 bytes allocated
==3578==
==3578== LEAK SUMMARY:
==3578== definitely lost: 10,775 bytes in 12 blocks
==3578== indirectly lost: 11,568 bytes in 362 blocks
==3578== possibly lost: 808,227 bytes in 3,785 blocks
==3578== still reachable: 1,632,109 bytes in 11,901 blocks
==3578== suppressed: 0 bytes in 0 blocks
==3578== Rerun with --leak-check=full to see details of leaked memory
==3578==
==3578== For counts of detected and suppressed errors, rerun with: -v
==3578== ERROR SUMMARY: 22 errors from 6 contexts (suppressed: 2 from 2)
Should Nodelets not use nodelet_error not ros_error
hii
i am using zed stereo camera for stereo odometery.
The node for this stereo camera is https://github.com/Myzhar/ros_simple_zed_cuda_driver/blob/develop/src/zed_simple_camera_node.cpp
In this right hand side of image shows the list of topic published from camera.On the left side shows the launch file which i used for running stereo odometery.
After running this i am getting this error
"Invalid argument passed to lookupTransform argument source_frame in tf2 frame_ids cannot be empty "
.
My rqt_graph and tf is like this.
I am not able to understand the error need help.
Hi @matlabbe,
First of all, thanks again for making RTAB-Map open source, it's a great piece of software :)!
I am playing around with the map assembler, and I was wondering whether it is possible to assemble the map data as it is implemented already, but on top of that merge the point cloud acquired by the Kinect.
I am thinking about concatenating the two point clouds, in another ROS node, but I am not sure whether there would be an easier way directly in the map assembler.
Thanks very much,
Tobias
Version 0.10.12
Hello,
i am trying to run Rtabmap (concretly the demo launch file of stereo outdoor adding some modifications to it) with 2 cameras calibrated and not synchronized. The node stereo_image _proc work good and i can view the PointCloud2 output. When i run the launch file, rviz open but i cant see point clouds output of Rtabmap in it. In the launch file I only add the aprox sync parameter (in True value) in the nodes that have this parameter and I add too the parameter "frame_id" with the value "camera" because in this moment I dont have a URDF file of the final version of mi robot, in this moment, I only need to try the Rtabmap with the camera. (I suppose that the "frame_id" "camera" is a default parameter in Ros)
I believe that the problem is between tf and "frame_id". Can you help me, what could be happening?
How can i to run Rtabmap with a correct "frame_id" or a good tf configuration?
Thanks in advance.
Best regards.
The first binary release 0.7.3 on ROS has some issues. They are now fixed in 0.7.4, but until this new release is out, here some workarounds:
Errors and fixes (example for hydro):
Shared library not found:
error while loading shared libraries: librtabmap_core.so: cannot open shared object file: No such file or directory
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ros/hydro/lib/rtabmap-0.7
Plugins error:
Skipping XML Document "/opt/ros/hydro/share/rtabmap_ros/nodelet_plugins.xml" which had no Root Element. This likely means the XML is malformed or missing.
Skipping XML Document "/opt/ros/hydro/share/rtabmap_ros/plugin_description.xml" which had no Root Element. This likely means the XML is malformed or missing.
$ wget https://raw.githubusercontent.com/introlab/rtabmap_ros/master/nodelet_plugins.xml https://raw.githubusercontent.com/introlab/rtabmap_ros/master/plugin_description.xml .
$ sudo mv nodelet_plugins.xml plugin_description.xml /opt/ros/hydro/share/rtabmap_ros/.
image_transport error:
$ sudo apt-get install ros-hydro-image-transport-plugins
I've installed rtabmap_ros using apt-get.
After that I tried to launch the mapping, but I got this error:
ERROR: cannot launch node of type [rtabmap_ros/rgbd_odometry]: can't locate node [rgbd_odometry] in package [rtabmap_ros]
ERROR: cannot launch node of type [rtabmap_ros/rtabmap]: can't locate node [rtabmap] in package [rtabmap_ros]
ERROR: cannot launch node of type [rtabmap_ros/rtabmapviz]: can't locate node [rtabmapviz] in package [rtabmap_ros]
Here is the full story:
ilya@workstation:~/catkin_ws$ sudo apt-get install ros-hydro-rtabmap-ros
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
python-aptdaemon python-defer aptdaemon xul-ext-ubufox
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
ros-hydro-rtabmap
The following NEW packages will be installed:
ros-hydro-rtabmap ros-hydro-rtabmap-ros
0 upgraded, 2 newly installed, 0 to remove and 11 not upgraded.
Need to get 0 B/5,573 kB of archives.
After this operation, 15.2 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
Selecting previously unselected package ros-hydro-rtabmap.
(Reading database ... 213152 files and directories currently installed.)
Unpacking ros-hydro-rtabmap (from .../ros-hydro-rtabmap_0.8.3-0precise-20150209-0138-+0000_i386.deb) ...
Selecting previously unselected package ros-hydro-rtabmap-ros.
Unpacking ros-hydro-rtabmap-ros (from .../ros-hydro-rtabmap-ros_0.8.3-0precise-20150214-0413-+0000_i386.deb) ...
Setting up ros-hydro-rtabmap (0.8.3-0precise-20150209-0138-+0000) ...
Setting up ros-hydro-rtabmap-ros (0.8.3-0precise-20150214-0413-+0000) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
ilya@workstation:~/catkin_ws$ roslaunch rtabmap_ros rgbd_mapping.launch
... logging to /home/ilya/.ros/log/8ec9a150-d38d-11e4-a2a9-00248c31f50c/roslaunch-workstation-5090.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://workstation:40384/
SUMMARY
========
PARAMETERS
* /rosdistro
* /rosversion
* /rtabmap/rtabmap/LccBow/InlierDistance
* /rtabmap/rtabmap/LccBow/MinInliers
* /rtabmap/rtabmap/subscribe_depth
* /rtabmap/rtabmapviz/subscribe_depth
* /rtabmap/rtabmapviz/subscribe_odom_info
* /rtabmap/visual_odometry/Odom/FeatureType
* /rtabmap/visual_odometry/Odom/FillInfoData
* /rtabmap/visual_odometry/Odom/InlierDistance
* /rtabmap/visual_odometry/Odom/MaxDepth
* /rtabmap/visual_odometry/Odom/MinInliers
* /rtabmap/visual_odometry/Odom/Strategy
* /rtabmap/visual_odometry/OdomBow/LocalHistorySize
* /rtabmap/visual_odometry/OdomBow/NNType
NODES
/rtabmap/
rtabmap (rtabmap_ros/rtabmap)
rtabmapviz (rtabmap_ros/rtabmapviz)
visual_odometry (rtabmap_ros/rgbd_odometry)
/
base_to_camera_tf (tf/static_transform_publisher)
auto-starting new master
process[master]: started with pid [5104]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 8ec9a150-d38d-11e4-a2a9-00248c31f50c
process[rosout-1]: started with pid [5117]
started core service [/rosout]
process[base_to_camera_tf-2]: started with pid [5129]
ERROR: cannot launch node of type [rtabmap_ros/rgbd_odometry]: can't locate node [rgbd_odometry] in package [rtabmap_ros]
ERROR: cannot launch node of type [rtabmap_ros/rtabmap]: can't locate node [rtabmap] in package [rtabmap_ros]
ERROR: cannot launch node of type [rtabmap_ros/rtabmapviz]: can't locate node [rtabmapviz] in package [rtabmap_ros]
Hi,
I'm trying to build rtabmap from source, and I get the following errors when making:
[ 87%] Building CXX object examples/BOWMapping/CMakeFiles/bow_mapping.dir/main.cpp.o
../../../bin/librtabmap_core.so.0.10.6: undefined reference to `EdgeSE2Switchable::EdgeSE2Switchable()'
../../../bin/librtabmap_core.so.0.10.6: undefined reference to `EdgeSwitchPrior::EdgeSwitchPrior()'
../../../bin/librtabmap_core.so.0.10.6: undefined reference to `VertexSwitchLinear::VertexSwitchLinear()'
../../../bin/librtabmap_core.so.0.10.6: undefined reference to `EdgeSE3Switchable::EdgeSE3Switchable()'
collect2: error: ld returned 1 exit status
make[2]: *** [../bin/rtabmap-console] Error 1
make[1]: *** [tools/ConsoleApp/CMakeFiles/consoleApp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
(It also has the same error when doing the linking on other files, I just included the first).
I got as far as figuring out that these are defined in corelib/src/vertigo/g2o/edge_se2Switchable.cpp, and referenced in Graph.cpp. Graph.cpp does have #include "vertigo/g2o/edge_se2Switchable.h"
in it.
I suspect edge_se2Switchable.cpp needs to be added to a CMakeLists somewhere, but don't know enough about how those work to know where. Can anyone help?
I am trying to get rtabmap_ros working with the Structure Sensor. Unfortunately the Structure Sensor only has IR+Depth output -- no RGB-D. I saw on the rtabmap release notes (https://github.com/introlab/rtabmap/releases) that it can now use an IR+Depth for the Kinect One. Is there a way to configure rtabmap_ros to use just IR?
I got the following backtrace following the instructions in the debugging issue.
Program received signal SIGBUS, Bus error.
[Switching to Thread 0xdc2b1e10 (LWP 3952)]
0xf69a3232 in rtabmap::uncompressData(unsigned char const*, unsigned long) ()
---Type <return> to continue, or q <return> to quit---
from /opt/ros/indigo/lib/arm-linux-gnueabihf/librtabmap_core.so.0.10
(gdb)
(gdb) bt
#0 0xf69a3232 in rtabmap::uncompressData(unsigned char const*, unsigned long)
() from /opt/ros/indigo/lib/arm-linux-gnueabihf/librtabmap_core.so.0.10
#1 0xf69a358e in rtabmap::uncompressData(cv::Mat const&) ()
from /opt/ros/indigo/lib/arm-linux-gnueabihf/librtabmap_core.so.0.10
#2 0xf69a37f4 in rtabmap::CompressionThread::mainLoop() ()
from /opt/ros/indigo/lib/arm-linux-gnueabihf/librtabmap_core.so.0.10
#3 0xf680b1e4 in UThread::ThreadMain() ()
from /opt/ros/indigo/lib/arm-linux-gnueabihf/librtabmap_utilite.so.0.10
#4 0xf680b402 in UThreadC<void>::ThreadMainHandler(UThreadC<void>::Instance*)
() from /opt/ros/indigo/lib/arm-linux-gnueabihf/librtabmap_utilite.so.0.10
#5 0xf6dfefbc in start_thread (arg=0xdc2b1e10) at pthread_create.c:314
#6 0xf667120c in ?? ()
at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:92
from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb)
Not sure what other information I could provide.
Hello,
When installing of fresh system, rtabmap_ros complains about missing libraries:
libcostmap_2d.so: cannot open shared object file: No such file or directory
libopencv_nonfree.so.2.4: cannot open shared object file: No such file or directory
as well libg2o, libfreenect...
it can be easily fix installing required packages, but
it would be nice to have notices and updatex package.xml dependency list.
First,i run sudo apt-get install ros-indigo-rtabmap-ros. but it fail,
it said can not install two part :ros-indigo-costmap-2d and ros-indigo-pcl-ros
so, i try sudo apt-get install ros-indigo-rtabmap, its seem work successful!
i run rtabmap inTerminal and try to select kinect2, but it cant be selected.like this
i already install the libfreenect2 and run it successful before!!
what is this error????
Hello,
I wish to do RGBD slam navigation using turtle bot as explained in Here. How ever when i try to execute command
"roslaunch rtabmap_ros demo_turtlebot_mapping.launch"
I get following message:
[ INFO] [1454008734.671710371]: No matching device found.... waiting for devices. Reason: std::string openni2_wrapper::OpenNI2Driver::resolveDeviceURI(const string&) @ /tmp/buildd/ros-indigo-openni2-camera-0.2.5-0trusty-20151130-2131/src/openni2_driver.cpp @ 631 : Invalid device number 1, there are 0 devices connected.
[ WARN] [1454008735.034947191]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: Could not find a connection between 'map' and 'base_footprint' because they are not part of the same tree.Tf has two or more unconnected trees.. canTransform returned after 0.100916 timeout was 0.1.
and after this when i try to execute
" roslaunch rtabmap_ros demo_turtlebot_rviz.launch"
i get following results:
can you plz help i am new to ROS.
Hi Mathieu,
After compiling RTABMap on my Odroid, #26 on RTABMAP issues, rtabmap_ros is refusing to compile by the skin of its teeth.
After it progresses to 96%, I got a similar error to http://official-rtab-map-forum.206.s1.nabble.com/Compiling-in-ROS-Indigo-with-PCL-1-7-2-Undefined-reference-to-td386.html , with the undefined references to pcl::search::kdtree and flann, etc.
Now I have pcl-1.7.2 installed from source, as well as the libpcl-1.7-all binary. The rtabmap (standalone) is linked to 1.7.2, as I had mentioned in my #26 issue with Eigen Vectorization. I am not sure what rtabmap_ros is linking to.
I tried to follow what you suggested, installing the (hydro) pcl_conversions and perception_pcl by source. The C++ compiler reports an internal error compiling perception_pcl, after consuming all 2Gb of RAM and 1Gb SWAP.
This forces me to abandon compiling perception_pcl from source. Do you know if there is another workaround to this?
I am using bluefox camera. I am getting following topic after launching the stereo node of the following driver https://github.com/KumarRobotics/bluefox2
/rosout
/rosout_agg
/stereo/left/camera_info
/stereo/left/image_raw
/stereo/left/image_raw/compressed
/stereo/left/image_raw/compressed/parameter_descriptions
/stereo/left/image_raw/compressed/parameter_updates
/stereo/left/image_raw/compressedDepth
/stereo/left/image_raw/compressedDepth/parameter_descriptions
/stereo/left/image_raw/compressedDepth/parameter_updates
/stereo/left/image_raw/theora
/stereo/left/image_raw/theora/parameter_descriptions
/stereo/left/image_raw/theora/parameter_updates
/stereo/parameter_descriptions
/stereo/parameter_updates
/stereo/right/camera_info
/stereo/right/image_raw
/stereo/right/image_raw/compressed
/stereo/right/image_raw/compressed/parameter_descriptions
/stereo/right/image_raw/compressed/parameter_updates
/stereo/right/image_raw/compressedDepth
/stereo/right/image_raw/compressedDepth/parameter_descriptions
/stereo/right/image_raw/compressedDepth/parameter_updates
/stereo/right/image_raw/theora
/stereo/right/image_raw/theora/parameter_descriptions
/stereo/right/image_raw/theora/parameter_updates
So I update my launch file demo_stereo_outdoor.launch
<launch>
<param name="use_sim_time" type="bool" value="True"/>
<!-- Just to uncompress images for stereo_image_rect -->
<node name="republish_left" type="republish" pkg="image_transport" args="compressed in:=/stereo_camera/left/image_raw raw out:=/stereo_camera/left/image_raw" />
<node name="republish_right" type="republish" pkg="image_transport" args="compressed in:=/stereo_camera/right/image_raw raw out:=/stereo_camera/right/image_raw" />
<!-- Run the ROS package stereo_image_proc for image rectification-->
<group ns="/stereo" >
<node pkg="nodelet" type="nodelet" name="stereo_nodelet" args="manager"/>
<node pkg="stereo_image_proc" type="stereo_image_proc" name="stereo_image_proc">
<remap from="left/image_raw" to="left/image_raw"/>
<remap from="left/camera_info" to="left/camera_info"/>
<remap from="right/image_raw" to="right/image_raw"/>
<remap from="right/camera_info" to="right/camera_info"/>
</node>
</group>
<!-- STEREO ODOMETRY -->
<node pkg="rtabmap_ros" type="stereo_odometry" name="stereo_odometry" output="screen">
<remap from="left/image_rect" to="/stereo/left/image_rect"/>
<remap from="right/image_rect" to="/stereo/right/image_rect"/>
<remap from="left/camera_info" to="/stereo/left/camera_info"/>
<remap from="right/camera_info" to="/stereo/right/camera_info"/>
<remap from="odom" to="/stereo/odometry"/>
<param name="frame_id" type="string" value="base_footprint"/>
<param name="odom_frame_id" type="string" value="odom"/>
<param name="Odom/InlierDistance" type="string" value="0.1"/>
<param name="Odom/MinInliers" type="string" value="10"/>
<param name="Odom/RoiRatios" type="string" value="0.03 0.03 0.04 0.04"/>
<param name="Odom/MaxDepth" type="string" value="10"/>
<param name="GFTT/MaxCorners" type="string" value="500"/>
<param name="GFTT/MinDistance" type="string" value="5"/>
</node>
<group ns="rtabmap">
<!-- Visual SLAM -->
<!-- args: "delete_db_on_start" and "udebug" -->
<node name="rtabmap" pkg="rtabmap_ros" type="rtabmap" output="screen" args="--delete_db_on_start">
<param name="frame_id" type="string" value="base_footprint"/>
<param name="subscribe_stereo" type="bool" value="true"/>
<param name="subscribe_depth" type="bool" value="false"/>
<remap from="left/image_rect" to="/stereo/left/image_rect_color"/>
<remap from="right/image_rect" to="/stereo/right/image_rect"/>
<remap from="left/camera_info" to="/stereo/left/camera_info"/>
<remap from="right/camera_info" to="/stereo_camera/right/camera_info"/>
<remap from="odom" to="/stereo_odometer/odometry"/>
<param name="queue_size" type="int" value="30"/>
<!-- RTAB-Map's parameters -->
<param name="Rtabmap/TimeThr" type="string" value="700"/>
<param name="Rtabmap/DetectionRate" type="string" value="1"/>
<param name="Kp/WordsPerImage" type="string" value="200"/>
<param name="Kp/RoiRatios" type="string" value="0.03 0.03 0.04 0.04"/>
<param name="SURF/HessianThreshold" type="string" value="1000"/>
<param name="LccBow/MaxDepth" type="string" value="10"/>
<param name="LccBow/MinInliers" type="string" value="10"/>
<param name="LccBow/InlierDistance" type="string" value="0.02"/>
<param name="LccReextract/Activated" type="string" value="true"/>
<param name="LccReextract/MaxWords" type="string" value="400"/>
<!-- Disable graph optimization because we use map_optimizer node below -->
<param name="RGBD/ToroIterations" type="string" value="0"/>
</node>
<!-- Optimizing outside rtabmap node makes it able to optimize always the global map -->
<node pkg="rtabmap_ros" type="map_optimizer" name="map_optimizer"/>
</group>
<!-- RVIZ -->
<node pkg="rviz" type="rviz" name="rviz" args="-d $(find rtabmap_ros)/launch/config/stereo_outdoor_demo.rviz"/>
</launch>
But I am getting a warning [ WARN] [1435577740.009374989]: "base_footprint" passed to lookupTransform argument target_frame does not exist.
and getting nothing on RVIZ
please help me solve the problem.
Hello,
As instructed in the tutorial Mapping and Navigation with Turtlebot after mapping "$ roslaunch rtabmap_ros demo_turtlebot_mapping.launch args:="--delete_db_on_start" rgbd_odometry:=true"
for localization when i try to execute the command " $ roslaunch rtabmap_ros demo_turtlebot_mapping.launch localization:=true" .
i get following error:
[ INFO] [1454339969.590369016]: rtabmap 0.10.10 started...
[ INFO] [1454339970.864339986]: Stopping device RGB and Depth stream flush.
[ WARN] [1454339972.332150185]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: Could not find a connection between 'map' and 'base_footprint' because they are not part of the same tree.Tf has two or more unconnected trees.. canTransform returned after 0.100846 timeout was 0.1.
[ WARN] [1454339974.865176406]: rtabmap: Could not get transform from odom to base_footprint after 0.100000 second!
[ WARN] [1454339974.995544194]: rtabmap: Could not get transform from odom to base_footprint after 0.100000 second!
and this goes on....
what's the issue? please guide me i am new to ROS.
Thank you
Hello. Could you help me to solve this problem?
user@toysharvester:~/robotcontrolsystem$ catkin_make
Base path: /home/user/robotcontrolsystem
Source space: /home/user/robotcontrolsystem/src
Build space: /home/user/robotcontrolsystem/build
Devel space: /home/user/robotcontrolsystem/devel
Install space: /home/user/robotcontrolsystem/install
####
#### Running command: "make cmake_check_build_system" in "/home/user/robotcontrolsystem/build"
####
####
#### Running command: "make -j4 -l4" in "/home/user/robotcontrolsystem/build"
####
[ 0%] [ 0%] [ 0%] Built target std_msgs_generate_messages_py
Built target std_msgs_generate_messages_cpp
Built target std_msgs_generate_messages_lisp
[ 0%] Built target nav_msgs_generate_messages_cpp
[ 0%] [ 0%] Built target nav_msgs_generate_messages_py
Built target nav_msgs_generate_messages_lisp
[ 1%] [ 3%] Built target msg_spd_side_generate_messages_lisp
Built target msg_spd_side_generate_messages_py
[ 3%] Built target msg_spd_side_generate_messages_cpp
[ 7%] Built target ardsrv
[ 10%] Built target ermain
[ 13%] Built target ermanctl
[ 15%] [ 18%] [ 18%] Built target msg_pllcmd_generate_messages_py
Built target ersenfield
Built target msg_pllcmd_generate_messages_cpp
[ 19%] Built target msg_pllcmd_generate_messages_lisp
[ 19%] [ 19%] Built target geometry_msgs_generate_messages_lisp
Built target sensor_msgs_generate_messages_lisp
[ 20%] [ 21%] Built target odom_calc
Built target rtabmap_ros_gencfg
[ 21%] [ 21%] Built target geometry_msgs_generate_messages_cpp
Built target sensor_msgs_generate_messages_cpp
[ 21%] [ 21%] Built target sensor_msgs_generate_messages_py
Built target geometry_msgs_generate_messages_py
[ 22%] Built target msg_ans_generate_messages_lisp
[ 23%] Built target msg_ans_generate_messages_cpp
[ 25%] Built target msg_ans_generate_messages_py
[ 26%] Built target msg_rsaction_generate_messages_cpp
[ 28%] Built target msg_rsaction_generate_messages_py
[ 30%] Built target msg_rsaction_generate_messages_lisp
[ 31%] Built target msg_senfield_generate_messages_cpp
[ 34%] Built target msg_senfield_generate_messages_py
[ 35%] [ 35%] Built target msg_senfield_generate_messages_lisp
Built target msg_spd_side_generate_messages
[ 35%] Built target msg_pllcmd_generate_messages
[ 57%] [ 58%] Built target rtabmap_ros_generate_messages_cpp
Built target rtabmap_ros_generate_messages_lisp
[ 71%] Built target rtabmap_ros_generate_messages_py
[ 71%] Built target msg_ans_generate_messages
[ 71%] Built target msg_rsaction_generate_messages
[ 71%] Built target msg_senfield_generate_messages
[ 71%] Built target rtabmap_ros_generate_messages
[ 71%] Built target camera
[ 88%] Built target rtabmap_ros
[ 89%] [ 90%] Built target data_player
[ 91%] Built target grid_map_assembler
Building CXX object rtabmap_ros/CMakeFiles/map_assembler.dir/src/MapAssemblerNode.cpp.o
[ 92%] Built target data_recorder
Scanning dependencies of target rgbd_odometry
[ 92%] [ 92%] Built target odom_msg_to_tf
Built target map_optimizer
Scanning dependencies of target rtabmap
Scanning dependencies of target rtabmapviz
[ 93%] Building CXX object rtabmap_ros/CMakeFiles/rgbd_odometry.dir/src/RGBDOdometryNode.cpp.o
[ 94%] Building CXX object rtabmap_ros/CMakeFiles/rtabmap.dir/src/CoreNode.cpp.o
[ 95%] Building CXX object rtabmap_ros/CMakeFiles/rtabmapviz.dir/src/GuiNode.cpp.o
[ 96%] Building CXX object rtabmap_ros/CMakeFiles/rtabmap.dir/src/CoreWrapper.cpp.o
[ 97%] Building CXX object rtabmap_ros/CMakeFiles/rtabmapviz.dir/src/GuiWrapper.cpp.o
Linking CXX executable /home/user/robotcontrolsystem/devel/lib/rtabmap_ros/rgbd_odometry
[ 97%] Built target rgbd_odometry
[ 98%] Building CXX object rtabmap_ros/CMakeFiles/rtabmapviz.dir/src/PreferencesDialogROS.cpp.o
Linking CXX executable /home/user/robotcontrolsystem/devel/lib/rtabmap_ros/map_assembler
Scanning dependencies of target stereo_odometry
[100%] Building CXX object rtabmap_ros/CMakeFiles/stereo_odometry.dir/src/StereoOdometryNode.cpp.o
[100%] Built target map_assembler
/home/user/robotcontrolsystem/src/rtabmap_ros/src/CoreWrapper.cpp:2736:1: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
Linking CXX executable /home/user/robotcontrolsystem/devel/lib/rtabmap_ros/stereo_odometry
[100%] Built target stereo_odometry
Linking CXX executable /home/user/robotcontrolsystem/devel/lib/rtabmap_ros/rtabmapviz
[100%] Built target rtabmapviz
The bug is not reproducible, so it is likely a hardware or OS problem.
make[2]: *** [rtabmap_ros/CMakeFiles/rtabmap.dir/src/CoreWrapper.cpp.o] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/rtabmap.dir/all] Error 2
make: *** [all] Error 2
Invoking "make" failed
user@toysharvester:~/robotcontrolsystem$
Catkin workspace location is ~/robotcontrolsystem
Hello,
I'm running Ubuntu 12.04, Ros Hydro, I have rtabmap_ros compiled from source (as per instructions).
I am using a stereo camera with (I think) the Stereo B configuration. I have modified the demo_stereo_outdoor.launch file accordingly, by removing the node republishing, remapping to stereo_camera namespace, and set use_sim_time to false. The rtabmap node is running when I launch this file. I also changed base_footprint to base_link.
I also set up a tf broadcaster between base_link frame and camera, and set it to a constant value (0 translation), since I am holding the camera. Now the issue is that all my rtabmap/cloud_map, rtabmap/map rtabmap/path ... (blah blah blah) topics are empty when I echo them. In rviz, my camera frame is moving around with respect to the map frame, but I cannot view the map, the path, or any clouds (optimized or not).
I think the issue could be arising from the following -
Also, another glitch that is occurring (but should not make a difference), is that I am supplying the camera frame id, which is an optical frame, but pointcloud frames are defined with a different orientation.
Thanks!
I'm currently using the following workflow:
Zed Camera
Zed Ros Wrapper
Depth Image Proc
RTABMAP_ROS::RGBD_Mapping.launch
While I keep getting a ton of great features, the tracking constantly loses all features for a second and returns to normal.
I implemented the Odom/ResetOdometery parameter to avoid complete loss of tracking if it loses features for more than two seconds- while that does help in avoiding a complete halt it definitely doesn't solve the flickering issue.
My initial thought is that its due to the Zed Ros Wrapper being CPU bound, but I can't seem to get the CUDA GPU ZED wrapper working properly.
Any thoughts or suggestions?
It'd also be great if someone has some advice on fusing IMU data with RGB-D Odometry
Hi, I have compiled rtabmap and rtabmap_ros from source according to the instructions on rtabmap github link.
I'm on RPi 2 and Lubuntu 14.04 LTS.
First I ran this command:
$ roslaunch openni2_launch openni2.launch depth_registration:=true
It seems to run fine. Then in a new terminal tab, I ran this command:
$ roslaunch openni2_launch openni2.launch depth_registration:=true
and it gives the following output along with the error mentioned in the title:
... logging to /home/ubuntu/.ros/log/e5302dea-24fd-11e5-bdf0-801f02d322c9/roslaunch-ubuntu-6520.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://ubuntu:57461/
PARAMETERS
NODES
/rtabmap/
rgbd_odometry (rtabmap_ros/rgbd_odometry)
rtabmap (rtabmap_ros/rtabmap)
ROS_MASTER_URI=http://localhost:11311
core service [/rosout] found
process[rtabmap/rgbd_odometry-1]: started with pid [6538]
process[rtabmap/rtabmap-2]: started with pid [6539]
[rtabmap/rgbd_odometry-1] process has died [pid 6538, exit code -11, cmd /home/ubuntu/catkin_ws/devel/lib/rtabmap_ros/rgbd_odometry rgb/image:=/camera/rgb/image_rect_color depth/image:=/camera/depth_registered/image_raw rgb/camera_info:=/camera/rgb/camera_info __name:=rgbd_odometry _log:=/home/ubuntu/.ros/log/e5302dea-24fd-11e5-bdf0-801f02d322c9/rtabmap-rgbd_odometry-1.log].
log file: /home/ubuntu/.ros/log/e5302dea-24fd-11e5-bdf0-801f02d322c9/rtabmap-rgbd_odometry-1.log
[rtabmap/rtabmap-2] process has died [pid 6539, exit code -11, cmd /home/ubuntu/catkin_ws/devel/lib/rtabmap_ros/rtabmap --delete_db_on_start rgb/image:=/camera/rgb/image_rect_color depth/image:=/camera/depth_registered/image_raw rgb/camera_info:=/camera/rgb/camera_info __name:=rtabmap _log:=/home/ubuntu/.ros/log/e5302dea-24fd-11e5-bdf0-801f02d322c9/rtabmap-rtabmap-2.log].
log file: /home/ubuntu/.ros/log/e5302dea-24fd-11e5-bdf0-801f02d322c9/rtabmap-rtabmap-2.log
all processes on machine have died, roslaunch will exit
shutting down processing monitor...
... shutting down processing monitor complete
done
I install the RTAB-Map according to these steps:
https://github.com/introlab/rtabmap_ros#rtabmap_ros
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake -DCMAKE_INSTALL_PREFIX=~/catkin_ws/devel .. [<---double dots included]
$ make -j4
$ make install
but when I run $ make -j4 the compilation starts to run into problem with error message such as follows:
siat@ThinkPad-siat:~/rtabmap/build$ make -j4
[ 7%] Built target rtabmap_utilite
[ 7%] Built target uresourcegenerator
[ 8%] Built target imagesJoiner
[ 9%] Built target extractObject
[ 10%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/CameraThread.cpp.o
[ 10%] [ 11%] [ 12%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/CameraRGBD.cpp.o
Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/VisualWord.cpp.o
Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/EpipolarGeometry.cpp.o
In file included from /usr/include/ni/XnOS.h:27:0,
from /usr/include/pcl-1.7/pcl/io/openni_camera/openni.h:47,
from /usr/include/pcl-1.7/pcl/io/openni_camera/openni_depth_image.h:44,
from /home/siat/rtabmap/corelib/src/../include/rtabmap/core/CameraRGBD.h:37,
from /home/siat/rtabmap/corelib/src/CameraRGBD.cpp:28:
/usr/include/ni/XnPlatform.h:73:3: error: #error OpenNI Platform Abstraction Layer - Unsupported Platform!
#error OpenNI Platform Abstraction Layer - Unsupported Platform!
^
.
.
.
In file included from /usr/include/pcl-1.7/pcl/io/openni_camera/openni.h:50:0,
from /usr/include/pcl-1.7/pcl/io/openni_camera/openni_depth_image.h:44,
from /home/siat/rtabmap/corelib/src/../include/rtabmap/core/CameraRGBD.h:37,
from /home/siat/rtabmap/corelib/src/CameraThread.cpp:31:
/usr/include/ni/XnCppWrapper.h:10045:76: error: macro "XN_VALIDATE_NEW" passed 4 arguments, but takes just 2
XN_VALIDATE_NEW(pTrans, StateChangedCallbackTranslator, handler, pCookie);
^
/usr/include/ni/XnCppWrapper.h:10104:75: error: macro "XN_VALIDATE_NEW" passed 4 arguments, but takes just 2
XN_VALIDATE_NEW(pTrans, StateChangedCallbackTranslator, handler, pCookie);
^
[ 13%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/VWDictionary.cpp.o
In file included from /usr/include/ni/XnStatusCodes.h:27:0,
from /usr/include/ni/XnMacros.h:27,
from /usr/include/ni/XnOS.h:28,
from /usr/include/pcl-1.7/pcl/io/openni_camera/openni.h:47,
from /usr/include/pcl-1.7/pcl/io/openni_camera/openni_depth_image.h:44,
from /home/siat/rtabmap/corelib/src/../include/rtabmap/core/CameraRGBD.h:37,
from /home/siat/rtabmap/corelib/src/CameraRGBD.cpp:28:
/usr/include/ni/XnStatus.h:33:9: error: ‘XnUInt32’ does not name a type
typedef XnUInt32 XnStatus;
^
Could anyone help me? I have no idea what's wrong with it.
Hello,
I noticed that the node data_recorder is no longer built into the package rtabmap_ros but is still mentioned in the wiki page. Could you please update the wiki page to reflect the latest version of the package?
I found the launch file that illustrates data recording and was able to use it with no issue.
Thank you very much for sharing rtabmap with the ROS community!
Best Regards,
Audren
Version of product:
Ubuntu 14.04
ROS Indigo
Hi! Yesterday I just came across rtabmap and installed it using sudo apt-get install. But since I am adapting this wonderful project into my research, I really need to look into the code, and so I decided to install from source instead. That's why I did the following:
$ sudo apt-get remove ros-indigo-rtabmap ros-indigo-rtabmap-ros
$ sudo purge rtabmap // just to make sure there is no confusion in the directories when compiling again from source
$ sudo apt-get update
And I followed the rest of the installation as indicated in the tutorial. But here is what I received after giving the command
~/indigo_ws$ catkin_make
Base path: /home/charly/indigo_ws
Source space: /home/charly/indigo_ws/src
Build space: /home/charly/indigo_ws/build
Devel space: /home/charly/indigo_ws/devel
Install space: /home/charly/indigo_ws/install
-- Using CATKIN_DEVEL_PREFIX: /home/charly/indigo_ws/devel
-- Using CMAKE_PREFIX_PATH: /home/charly/indigo_ws/devel;/opt/ros/indigo
-- This workspace overlays: /home/charly/indigo_ws/devel;/opt/ros/indigo
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/charly/indigo_ws/build/test_results
-- Found gtest sources under '/usr/src/gtest': gtests will be built
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.6.11
-- BUILD_SHARED_LIBS is on
/opt/ros/indigo/share/catkin/cmake/em/order_packages.cmake.em:23: error: <type 'exceptions.RuntimeError'>: Multiple packages found with the same name "rtabmap":
rtabmap
share/rtabmap
Traceback (most recent call last):
File "/usr/bin/empy", line 3276, in
if name == 'main': main()
File "/usr/bin/empy", line 3274, in main
invoke(sys.argv[1:])
File "/usr/bin/empy", line 3257, in invoke
interpreter.wrap(interpreter.file, (file, name))
File "/usr/bin/empy", line 2262, in wrap
self.fail(e)
File "/usr/bin/empy", line 2253, in wrap
callable(*args)
File "/usr/bin/empy", line 2326, in file
self.safe(scanner, done, locals)
File "/usr/bin/empy", line 2368, in safe
self.parse(scanner, locals)
File "/usr/bin/empy", line 2388, in parse
token.run(self, locals)
File "/usr/bin/empy", line 1403, in run
interpreter.execute(self.code, locals)
File "/usr/bin/empy", line 2565, in execute
exec(statements, self.globals)
File "", line 17, in
File "/usr/lib/python2.7/dist-packages/catkin_pkg/topological_order.py", line 111, in topological_order
for path, package in find_packages(space).items():
File "/usr/lib/python2.7/dist-packages/catkin_pkg/packages.py", line 93, in find_packages
raise RuntimeError('\n'.join(duplicates))
RuntimeError: Multiple packages found with the same name "rtabmap":
rtabmap
share/rtabmap
CMake Error at /opt/ros/indigo/share/catkin/cmake/safe_execute_process.cmake:11 (message):
execute_process(/home/charly/indigo_ws/build/catkin_generated/env_cached.sh
"/usr/bin/python" "/usr/bin/empy" "--raw-errors" "-F"
"/home/charly/indigo_ws/build/catkin_generated/order_packages.py" "-o"
"/home/charly/indigo_ws/build/catkin_generated/order_packages.cmake"
"/opt/ros/indigo/share/catkin/cmake/em/order_packages.cmake.em") returned
error code 1
Call Stack (most recent call first):
/opt/ros/indigo/share/catkin/cmake/em_expand.cmake:25 (safe_execute_process)
/opt/ros/indigo/share/catkin/cmake/catkin_workspace.cmake:29 (em_expand)
CMakeLists.txt:63 (catkin_workspace)
-- Configuring incomplete, errors occurred!
See also "/home/charly/indigo_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/charly/indigo_ws/build/CMakeFiles/CMakeError.log".
make: *** [cmake_check_build_system] Error 1
I am still a newbie in the debugging and found nowhere on explaining this kind of error. Though there is still a naming cliche on "rtabmap", it seems that the real problem lies in CMake Error, which I cannot drag any clue out of it. Would you kindly give me a hand on the problem? Thank you !
I have meet a problem caused by genmsg module when i run catkin_make in indigo version, the result is as follows:
Using these message generators: gencpp;genlisp;genpy
CMake Error: Could not open file for write in copy operation /home/ubuntu/catkin_ws/devel/share/rtabmap_ros/cmake/rtabmap_ros-msg-paths.cmake.tmp
CMake Error: : System Error: No such file or directory
CMake Error at /opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:215 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
rtabmap_ros/CMakeLists.txt:70 (generate_messages)
CMake Error: Could not open file for write in copy operation /home/ubuntu/catkin_ws/devel/share/rtabmap_ros/cmake/rtabmap_rosConfig.cmake.tmp
CMake Error: : System Error: No such file or directory
CMake Error at /opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:375 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
/opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:98 (_catkin_package)
rtabmap_ros/CMakeLists.txt:98 (catkin_package)
CMake Error: Could not open file for write in copy operation /home/ubuntu/catkin_ws/devel/share/rtabmap_ros/cmake/rtabmap_rosConfig-version.cmake.tmp
CMake Error: : System Error: No such file or directory
CMake Error at /opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:380 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
/opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:98 (_catkin_package)
rtabmap_ros/CMakeLists.txt:98 (catkin_package)
-- WITH costmap_2d
-- WITH octomap
-- Configuring incomplete, errors occurred!
See also "/home/ubuntu/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/ubuntu/catkin_ws/build/CMakeFiles/CMakeError.log".
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed
The problem is i can not find rtabmap_ros in my catkin_ws/devel/share/ folder, what's the matter?
Look rtabmap node for example.
On build from source, I get a string of the following errors toward the end of the build:
/home/testing/test/devel/lib/rtabmap-0.10/../../include/rtabmap-0.10/rtabmap/core/RtabmapEvent.h:197:7: note: rtabmap::RtabmapGlobalPathEvent::RtabmapGlobalPathEvent(const rtabmap::RtabmapGlobalPathEvent&)
class RtabmapGlobalPathEvent : public UEvent
^
/home/testing/test/devel/lib/rtabmap-0.10/../../include/rtabmap-0.10/rtabmap/core/RtabmapEvent.h:197:7: note: candidate expects 1 argument, 3 provided
Linking CXX executable /home/testing/test/devel/lib/rtabmap_ros/stereo_odometry
make[2]: *** [rtabmap_ros/CMakeFiles/rtabmapviz.dir/src/GuiWrapper.cpp.o] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/rtabmapviz.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[100%] Built target stereo_odometry
Linking CXX executable /home/testing/test/devel/lib/rtabmap_ros/rtabmap
[100%] Built target rtabmap
make: *** [all] Error 2
Invoking "make -j8 -l8" failed
All of rtabmap works properly, but I am unable to call rtabmapviz. When I use a launch file that is calling it, I get the following:
ERROR: cannot launch node of type [rtabmap_ros/rtabmapviz]: can't locate node [rtabmapviz] in package [rtabmap_ros]
This is done on a virtual box Trusty+Indigo with the ros binaries 0.8.12. However, the error doesn't happen when built from source.
$ apt-cache policy ros-indigo-rtabmap
ros-indigo-rtabmap:
Installed: 0.8.12-0trusty-20150511-0156-+0000
Candidate: 0.8.12-0trusty-20150511-0156-+0000
Version table:
*** 0.8.12-0trusty-20150511-0156-+0000 0
500 http://packages.ros.org/ros/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status
$ apt-cache policy ros-indigo-rtabmap-ros
ros-indigo-rtabmap-ros:
Installed: 0.8.12-0trusty-20150519-1756-+0000
Candidate: 0.8.12-0trusty-20150519-1756-+0000
Version table:
*** 0.8.12-0trusty-20150519-1756-+0000 0
500 http://packages.ros.org/ros/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status
Steps:
$ sudo apt-get install ros-indigo-rtabmap-ros
$ roslaunch rtabmap_ros demo_robot_mapping.launch rtabmapviz:=false
$ rosbag play --clock demo_mapping.bag
Output:
[ INFO] [1432488871.584604456]: rtabmap started...
[ WARN] [1432488875.750758028, 1368730004.595674059]: Could not get transform from odom to base_footprint after 1 second!
[ WARN] [1432488876.752812337, 1368730005.597336601]: Could not get transform from base_footprint to /openni_rgb_optical_frame after 1 second!
[ WARN] [1432488877.759997545, 1368730006.604998774]: Could not get transform from odom to base_footprint after 1 second!
[ WARN] [1432488878.761282139, 1368730007.605626158]: Could not get transform from base_footprint to /openni_rgb_optical_frame after 1 second!
[ WARN] [1432488879.928532277, 1368730008.773607144]: Could not get transform from odom to base_footprint after 1 second!
[ WARN] [1432488880.938088484, 1368730009.782354243]: Could not get transform from base_footprint to /openni_rgb_optical_frame after 1 second!
[ WARN] [1432488881.945127575, 1368730010.789395453]: Could not get transform from odom to base_footprint after 1 second!
[ WARN] [1432488882.948204101, 1368730011.792792205]: Could not get transform from base_footprint to /openni_rgb_optical_frame after 1 second!
[ WARN] [1432488884.028235414, 1368730012.872998900]: Could not get transform from odom to base_footprint after 1 second!
[ WARN] [1432488885.032286048, 1368730013.876501919]: Could not get transform from base_footprint to /openni_rgb_optical_frame after 1 second!
and so on...
One the buildfarms, it stays for an hour or two on the compilation of that file:
http://jenkins.ros.org:8080/job/ros-jade-rtabmap-ros_binarydeb_vivid_amd64/2/console
rtabmap is installed correctly.
when catkin_make
~~errer 1~~. /home/lligen/catkin_ws/build/rtabmap_ros/src/rviz/moc_InfoDisplay.cxx:39:27: error: ‘ros::message_traits::rtabmap_ros’ has not been declared.
~~errer 2~~./home/lligen/catkin_ws/src/rtabmap_ros/src/OdometryROS.cpp:384:91: error: invalid initialization of reference of type ‘const std::multimap<int, pcl::PointXYZ>&’ from expression of type ‘const std::map<int, pcl::PointXYZ>’ const std::multimap<int, pcl::PointXYZ> & map = ((OdometryBOW*)odometry_)->getLocalMap();
This post is about ROS1. For ROS2, see this post below #28 (comment)
Before continuing, make sure xterm
and gdb
are installed:
$ sudo apt-get install xterm gdb
Before rebuilding source or in Debug mode (B,C), launch the crashing node in gdb.
If you are using rtabmap.launch
:
roslaunch rtabmap_ros rtabmap.launch launch_prefix:="xterm -e gdb -ex run --args"
If using rtabmap
or rgbd_odometry
nodes directly in your launch file, we can add the launch-prefix
like that:
<node pkg="rtabmap_ros" type="rgbd_odometry" name="rgbd_odometry" launch-prefix="xterm -e gdb -ex run --args">
...
</node>
<node pkg="rtabmap_ros" type="rtabmap" name="rtabmap" launch-prefix="xterm -e gdb -ex run --args">
...
</node>
When the node crashes, type bt
(backtrace). If the log contains Eigen stuff, see this comment about -march=native
compilation flag problem.
If you are using the binaries (e.g., ros-indigo-rtabmap and ros-indigo-rtabmap-ros):
Uninstall them:
$ sudo apt-get remove ros-indigo-rtabmap ros-indigo-rtabmap-ros
Install rtabmap
and rtabmap_ros
from source following this instructions.
Launch rgbd_mapping.launch
$ roslaunch rtabmap_ros rgbd_mapping.launch
If the nodes are still crashing, go to B.
If A doesn't work, clean up your catkin workspace and build rtabmap in Debug mode:
Remove the binaries:
$ sudo apt-get remove ros-indigo-rtabmap ros-indigo-rtabmap-ros
Clean your catkin workspace (assuming your catkin workspace is ~/catkin_ws
, just keep src
folder):
$ cd ~/catkin_ws
$ rm -r build devel install
Build rtabmap
in debug mode (should not be cloned in catkin workspace):
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake -DCMAKE_INSTALL_PREFIX=~/catkin_ws/devel -DCMAKE_BUILD_TYPE=Debug ..
$ make -j4
$ make install
Build rtabmap_ros
in debug mode:
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make -DCMAKE_BUILD_TYPE=Debug
Source your setup.bash
$ source ~/catkin_ws/devel/setup.bash
Launch rgbd_mapping.launch
$ roslaunch rtabmap_ros rgbd_mapping.launch
Now, if rtabmap is still crashing, start the launch file with gdb to track down where it is crashing (make sure you have the latest version of rgbd_mapping.launch with launch_prefix
argument):
$ roslaunch rtabmap_ros rgbd_mapping.launch launch_prefix:="xterm -e gdb -ex run --args"
When an error comes up, you can use backtrace
(or simply bt
) command in gdb to show more info.
Open an issue here with the log of gdb for the nodes crashing and with which kind of computer you are using.
Hi,
this is more feature request. I think it would be useful to have a possibility publish map (rtabmap_ros/MapData) on change as PointCloud2(with color). But maybe I missed something and it's already possible?
I would also be grateful if you direct me to options (suggest a way) how to get the (rtabmap_ros/MapData) fused map as pointcloud.
hello @matlabbe . i was able to make the stereo example run but i only get the graph without a pointcloud. did i forget something or what could be the issue here?
this is what im seeing in rviz:
Hello,
I had followed the read me instructions on installing rtabmap_ros from source, (I am running Ubuntu 12.04 and ROS Hydro). Cmake is able to find costmap_2d - it says built target costmap_2d.
These are the errors I get - I think it is related to linking costmap when compiling librtabmap.
/home/tanmay/catkin_ws/devel/lib/librtabmap_ros.so: error: undefined reference to 'costmap_2d::CostmapLayer::useExtraBounds(double_, double_, double_, double_)'
collect2: ld returned 1 exit status
make[2]: *** [/home/tanmay/catkin_ws/devel/lib/rtabmap_ros/data_player] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/data_player.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/home/tanmay/catkin_ws/devel/lib/librtabmap_ros.so: error: undefined reference to 'costmap_2d::CostmapLayer::useExtraBounds(double_, double_, double_, double_)'
collect2: ld returned 1 exit status
make[2]: *** [/home/tanmay/catkin_ws/devel/lib/rtabmap_ros/map_assembler] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/map_assembler.dir/all] Error 2
/home/tanmay/catkin_ws/devel/lib/librtabmap_ros.so: error: undefined reference to 'costmap_2d::CostmapLayer::useExtraBounds(double_, double_, double_, double_)'
collect2: ld returned 1 exit status
make[2]: *** [/home/tanmay/catkin_ws/devel/lib/rtabmap_ros/grid_map_assembler] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/grid_map_assembler.dir/all] Error 2
/home/tanmay/catkin_ws/devel/lib/librtabmap_ros.so: error: undefined reference to 'costmap_2d::CostmapLayer::useExtraBounds(double_, double_, double_, double_)'
collect2: ld returned 1 exit status
make[2]: *** [/home/tanmay/catkin_ws/devel/lib/rtabmap_ros/map_optimizer] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/map_optimizer.dir/all] Error 2
make: *** [all] Error 2
Invoking "make" failed
I'm not sure if modifying my Cmake to explicitly include this is a good idea - any suggestions as to what I can do?
Thanks in advance!
PS - I wanted to know what value prefix takes in the package.xml file, where the plugins are being mentioned. Could this be an issue?
I am using the latest Indigo release of RTABmap on Ubuntu 14.04. I ran RTABmap from a pre-existing database and tried to use the 'Download all Clouds' command in RTABmapviz but I only got an error. I can download graphs perfectly fine.
Here is the launch file I used:
<launch>
<arg name="frame_id" default="kinect2_base" />
<node name="rtabmap" pkg="rtabmap_ros" type="rtabmap" output="screen" args="">
<param name="frame_id" type="string" value="$(arg frame_id)"/>
<remap from="proj_map" to="/map"/>
<param name="tf_prefix" type="string" value="vehicle"/>
<param name="publish_tf" type="bool" value="true"/>
<param name="Mem/IncrementalMemory" type="string" value="true"/>
</node>
<node pkg="rtabmap_ros" type="rtabmapviz" name="rtabmapviz" output="screen">
<param name="frame_id" type="string" value="$(arg frame_id)"/>
</node>
</launch>
And here is the output I get when I pause the service, download the graph data, and then download the map data:
alex@alex-laptop:~/ROS/src/launch$ roslaunch local_rtabmap.launch
... logging to /home/alex/.ros/log/cec56ca8-32f1-11e5-8da1-c48e8ff4a00b/roslaunch-alex-laptop-19663.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://alex-laptop:43979/
SUMMARY
========
PARAMETERS
* /rosdistro: indigo
* /rosversion: 1.11.13
* /rtabmap/Mem/IncrementalMemory: true
* /rtabmap/frame_id: kinect2_base
* /rtabmap/publish_tf: True
* /rtabmap/tf_prefix: vehicle
* /rtabmapviz/frame_id: kinect2_base
NODES
/
rtabmap (rtabmap_ros/rtabmap)
rtabmapviz (rtabmap_ros/rtabmapviz)
auto-starting new master
process[master]: started with pid [19675]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to cec56ca8-32f1-11e5-8da1-c48e8ff4a00b
process[rosout-1]: started with pid [19688]
started core service [/rosout]
process[rtabmap-2]: started with pid [19705]
process[rtabmapviz-3]: started with pid [19706]
[ INFO] [1437844985.221548051]: Starting node...
[ INFO] [1437844985.317657646]: rtabmap: frame_id = kinect2_base
[ INFO] [1437844985.317705186]: rtabmap: map_frame_id = map
[ INFO] [1437844985.317724247]: rtabmap: queue_size = 10
[ INFO] [1437844985.317743505]: rtabmap: tf_delay = 0.050000
[ INFO] [1437844985.335569252]: Starting node...
[ INFO] [1437844985.521916064]: rtabmapviz: Using configuration from "/home/alex/.ros/rtabmapGUI.ini"
[ INFO] [1437844985.706925858]: Setting RTAB-Map parameter "Mem/IncrementalMemory"="true"
[ INFO] [1437844986.378141088]: Reading parameters from the ROS server...
[ INFO] [1437844986.668470062]: RTAB-Map rate detection = 1.000000 Hz
[ INFO] [1437844986.668513407]: rtabmap: Using database from "/home/alex/.ros/rtabmap.db".
[ INFO] [1437844986.768564986]: Parameters read = 179
[ INFO] [1437844986.768599848]: Parameters successfully read.
[ INFO] [1437844986.820685509]:
/rtabmapviz subscribed to:
[ INFO] [1437844986.853173899]: rtabmapviz started.
[ INFO] [1437844988.820492928]: Registering Depth callback...
[ INFO] [1437844988.821466688]:
/rtabmap subscribed to:
/rgb/image,
/depth/image,
/rgb/camera_info,
/odom
[ INFO] [1437844988.821663102]: rtabmap started...
[ INFO] [1437844999.137004869]: rtabmap: paused!
[ INFO] [1437845009.742197705]: rtabmap: Getting map (global=true optimized=true graphOnly=true)...
[ INFO] [1437845013.259199502]: rtabmap: Getting map (global=true optimized=true graphOnly=false)...
[ WARN] [1437845013.739410023]: Can't call "get_map" service
[ERROR] (2015-07-25 13:23:33.744) MainWindow.cpp:1898::processRtabmapEvent3DMap() Map received with code error 1!
[rtabmap-2] process has died [pid 19705, exit code -11, cmd /opt/ros/indigo/lib/rtabmap_ros/rtabmap proj_map:=/map __name:=rtabmap __log:=/home/alex/.ros/log/cec56ca8-32f1-11e5-8da1-c48e8ff4a00b/rtabmap-2.log].
log file: /home/alex/.ros/log/cec56ca8-32f1-11e5-8da1-c48e8ff4a00b/rtabmap-2*.log
Hi, I have a problem in running this pkg.
It ran successfully in last week. However, Today It doesn't work after updating ubuntu software.
(Well, there are Nvidia bug issue after updating ubuntu software)
But, I thought It is not problem because I run it with OpenCL method of intel GPU.
Following progress is what problem I face.
The terminal show me :
beta@alpa:~$ roslaunch kinect2_bridge kinect2_bridge.launch publish_tf:=true
... logging to /home/beta/.ros/log/6e7ea4d2-38db-11e5-8524-fcf8aed93681/roslaunch-alpa-21732.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://192.168.0.15:33664/
PARAMETERS
NODES
/
kinect2 (nodelet/nodelet)
kinect2_bridge (nodelet/nodelet)
kinect2_points_xyzrgb_hd (nodelet/nodelet)
kinect2_points_xyzrgb_qhd (nodelet/nodelet)
kinect2_points_xyzrgb_sd (nodelet/nodelet)
ROS_MASTER_URI=http://192.168.0.15:11311
core service [/rosout] found
process[kinect2-1]: started with pid [21750]
[ INFO] [1438495195.108948436]: Initializing nodelet with 4 worker threads.
process[kinect2_bridge-2]: started with pid [21770]
[ INFO] [1438495195.140693280]: Loading nodelet /kinect2_bridge of type kinect2_bridge/kinect2_bridge_nodelet to manager kinect2 with the following remappings:
process[kinect2_points_xyzrgb_sd-3]: started with pid [21786]
process[kinect2_points_xyzrgb_qhd-4]: started with pid [21826]
parameter:
base_name: kinect2
sensor:
fps_limit: -1
calib_path: /home/beta/catkin_ws/src/iai_kinect2/kinect2_bridge/data/
use_png: false
jpeg_quality: 90
png_level: 1
depth_method: default
depth_device: -1
reg_method: default
reg_devive: -1
max_depth: 12
min_depth: 0.1
queue_size: 5
bilateral_filter: true
edge_aware_filter: true
publish_tf: true
base_name_tf: kinect2
worker_threads: 4
[OpenCLDepthPacketProcessor::listDevice] devices:
0: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[OpenCLDepthPacketProcessor::init] selected device: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[OpenCLDepthPacketProcessor::buildProgram] building OpenCL program...
process[kinect2_points_xyzrgb_hd-5]: started with pid [21855]
[OpenCLDepthPacketProcessor::buildProgram] OpenCL program built successfully
[OpenCLDepthPacketProcessor::buildProgram] building OpenCL program...
[OpenCLDepthPacketProcessor::buildProgram] OpenCL program built successfully
[Freenect2Impl] enumerating devices...
[Freenect2Impl] 12 usb devices connected
[Freenect2Impl] found valid Kinect v2 @4:3 with serial 029754145047
[Freenect2Impl] found 1 devices
Kinect2 devices found:
0: 029754145047 (selected)
[Freenect2DeviceImpl] opening...
[Freenect2DeviceImpl] opened
starting kinect2
[Freenect2DeviceImpl] starting...
[Freenect2DeviceImpl] ReadData0x14 response
92 bytes of raw data
0x0000: 00 00 12 00 00 00 00 00 01 00 00 00 43 c1 1f 41 2e2e2e2e2e2e2e2e2e2e2e2e432e2e41
0x0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e
0x0020: 0a 21 33 55 ef 00 17 40 00 08 00 00 10 00 00 00 2e2133552e2e2e402e2e2e2e2e2e2e2e
0x0030: 00 01 00 00 00 10 00 00 00 00 80 00 01 00 00 00 2e2e2e2e2e2e2e2e2e2e802e2e2e2e2e
0x0040: 31 33 00 00 00 05 14 0d 47 4d 46 39 31 32 2e 31 31332e2e2e2e2e2e474d463931322e31
0x0050: 58 00 00 00 00 00 00 00 07 00 00 00 582e2e2e2e2e2e2e2e2e2e2e
[Freenect2DeviceImpl] ReadStatus0x090000 response
4 bytes of raw data
0x0000: 01 26 00 00 2e262e2e
[Freenect2DeviceImpl] ReadStatus0x090000 response
4 bytes of raw data
0x0000: 03 26 00 00 2e262e2e
[Freenect2DeviceImpl] enabling usb transfer submission...
[Freenect2DeviceImpl] submitting usb transfers...
[Freenect2DeviceImpl] started
device serial: 029754145047
device firmware: 4.3.3913.0.7
[Freenect2DeviceImpl] stopping...
[Freenect2DeviceImpl] disabling usb transfer submission...
[Freenect2DeviceImpl] canceling usb transfers...
[DepthPacketStreamParser::onDataReceived] not all subsequences received 0
[DepthPacketStreamParser::onDataReceived] not all subsequences received 512
[Freenect2DeviceImpl] stopped
default ir camera parameters:
fx 365.82, fy 365.82, cx 261.954, cy 208.26
k1 0.0911889, k2 -0.271671, p1 0, p2 0, k3 0.0936603
default color camera parameters:
fx 1081.37, fy 1081.37, cx 959.5, cy 539.5
camera parameters used:
camera matrix color:
[1133.923395373093, 0, 949.3852251462348;
0, 1137.933434837629, 565.8910492688069;
0, 0, 1]
distortion coefficients color:
[-0.2164195095026075, 6.731872045007637, -0.008686524459920842, -0.03039441404873483, -58.89171124284388]
camera matrix ir:
[2390.838493523019, 0, 255.7450083441651;
0, 2229.278843545982, 211.6842679979474;
0, 0, 1]
distortion coefficients ir:
[16.26194620894292, -2761.688219848951, 0.2450612211659857, -0.004496948418098325, -7.600562335179906]
rotation:
[0.9583645909446891, 0.002431295431940966, -0.2855370372227418;
0.02268510740073345, 0.9961549079269922, 0.08462142350009744;
0.2846448607047667, -0.08757561427411331, 0.9546244366549997]
translation:
[1.574080529774825; -0.4623861872280801; -4.385956440506297]
depth shift:
-13.3542
[DepthRegistration::New] Using OpenCL registration method!
[DepthRegistration::New] Using OpenCL registration method!
[DepthRegistrationOpenCL::listDevice] devices:
0: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[DepthRegistrationOpenCL::init] selected device: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[DepthRegistrationOpenCL::listDevice] devices:
0: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[DepthRegistrationOpenCL::init] selected device: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[kinect2_bridge] waiting for clients to connect
and
[ INFO] [1438496189.893945590]: Odom: quality=0, std dev=0.000000m, update time=0.031826s
[ INFO] [1438496189.926260029]: Odom: quality=0, std dev=0.000000m, update time=0.028664s
[ INFO] [1438496189.966557442]: Odom: quality=0, std dev=0.000000m, update time=0.031023s
[ INFO] [1438496190.004746849]: Odom: quality=0, std dev=0.000000m, update time=0.034221s
[ INFO] [1438496190.038229040]: Odom: quality=0, std dev=0.000000m, update time=0.031758s
[ INFO] [1438496190.077097860]: Odom: quality=0, std dev=0.000000m, update time=0.033900s
[ INFO] [1438496190.110425978]: Odom: quality=0, std dev=0.000000m, update time=0.032299s
^C[ INFO] [1438496190.141507145]: Odom: quality=0, std dev=0.000000m, update time=0.030088s
[ WARN] [1438496190.149635015]: Could not get transform from odom to kinect2_base_link after 1 second!
[rtabmap/rtabmapviz-4] killing on exit
[rtabmap/rtabmap-3] killing on exit
[rtabmap/visual_odometry-2] killing on exit
[kinect2_base_link-1] killing on exit
[ERROR](2015-08-02 15:16:30.293) Rtabmap.cpp:874::process() RGB-D SLAM mode is enabled and no odometry is provided. Image 1793 is ignored!
rtabmap: Saving database/long-term memory... (located at /home/beta/.ros/rtabmap.db)
[ WARN] [1438496191.175695063]: Could not get transform from odom to kinect2_base_link after 1 second!
[ INFO] [1438496191.175920443]: rtabmapviz: All done! Closing...
shutting down processing monitor...
... shutting down processing monitor complete
done
Do I need to reinstall ubuntu? or How can I fix it?
Hi there,
Tried to install the binary which version is 0.7, all the workarounds described in issue 3 suits well, however got 'illegal instruction(core dumped)" error when try to roslaunch.
The box runs Ubuntu 12.04 LTS, using Ros-Hydro, however installed OpenNI 1.x and SensorKinect driver. Judging from that rtabmap links against OpenNI 2.x by default, is it possible to build from source using the existed OpenNI 1.x and how? Now I find the CMakelists.txt tries to search OpenNI2.
Also, is it possible to use OpenNI 2.x under Ubuntu 12.04, rumors in the internet say it just works for Windows not Linux, is that true?
Thanks in advance in @matlabbe
Hi!
Thank you guys for this awesome work. About one month ago, RTABMap can be fully compiled and run like a charm under both ROS Hydro and Indigo installed on both computers that I'm using. However, the compilation starts to run into problem lately with error message such as follows:
CMake Error at rtabmap_ros/CMakeLists.txt:20 (find_package):
Could not find a configuration file for package "RTABMap" that is
compatible with requested version "0.10.4".
The following configuration files were considered but not accepted:
/home/beebot/hydroBeebot_ws/devel/lib/rtabmap-0.9/RTABMapConfig.cmake, version: 0.9.0
Well, basically the entire compilation message looks like this:
Base path: /home/beebot/hydroBeebot_ws
Source space: /home/beebot/hydroBeebot_ws/src
Build space: /home/beebot/hydroBeebot_ws/build
Devel space: /home/beebot/hydroBeebot_ws/devel
Install space: /home/beebot/hydroBeebot_ws/install
####
#### Running command: "make cmake_check_build_system" in "/home/beebot/hydroBeebot_ws/build"
####
-- Using CATKIN_DEVEL_PREFIX: /home/beebot/hydroBeebot_ws/devel
-- Using CMAKE_PREFIX_PATH: /home/beebot/hydroBeebot_ws/devel;/opt/ros/hydro
-- This workspace overlays: /home/beebot/hydroBeebot_ws/devel;/opt/ros/hydro
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Python version: 2.7
-- Using Debian Python package layout
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/beebot/hydroBeebot_ws/build/test_results
-- Found gtest sources under '/usr/src/gtest': gtests will be built
-- catkin 0.5.90
-- BUILD_SHARED_LIBS is on
WARNING: Package "libg2o" does not follow the version conventions. It should not contain leading zeros (unless the number is 0).
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~ traversing 6 packages in topological order:
-- ~~ - mobile_safeguard_primitive
-- ~~ - simulation_tobot
-- ~~ - teleop_twist_keyboard
-- ~~ - my_pcl_tutorial
-- ~~ - tobotdrivers
-- ~~ - rtabmap_ros
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ processing catkin package: 'mobile_safeguard_primitive'
-- ==> add_subdirectory(NTU_BeeBot/mobile_safeguard_primitive)
-- +++ processing catkin package: 'simulation_tobot'
-- ==> add_subdirectory(NTU_BeeBot/simulation_tobot)
-- Using these message generators: gencpp;genlisp;genpy
-- simulation_tobot: 0 messages, 1 services
-- +++ processing catkin package: 'teleop_twist_keyboard'
-- ==> add_subdirectory(NTU_BeeBot/teleop_tobot)
-- Using these message generators: gencpp;genlisp;genpy
-- teleop_twist_keyboard: 0 messages, 3 services
-- +++ processing catkin package: 'my_pcl_tutorial'
-- ==> add_subdirectory(my_pcl_tutorial)
-- Using these message generators: gencpp;genlisp;genpy
-- +++ processing catkin package: 'tobotdrivers'
-- ==> add_subdirectory(NTU_BeeBot/Tobotdriver)
-- Using these message generators: gencpp;genlisp;genpy
-- tobotdrivers: 0 messages, 1 services
-- +++ processing catkin package: 'rtabmap_ros'
-- ==> add_subdirectory(rtabmap_ros)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at rtabmap_ros/CMakeLists.txt:16 (find_package):
Could not find module Findoctomap_ros.cmake or a configuration file for
package octomap_ros.
Adjust CMAKE_MODULE_PATH to find Findoctomap_ros.cmake or set
octomap_ros_DIR to the directory containing a CMake configuration file for
octomap_ros. The file will have one of the following names:
octomap_rosConfig.cmake
octomap_ros-config.cmake
CMake Error at rtabmap_ros/CMakeLists.txt:20 (find_package):
Could not find a configuration file for package "RTABMap" that is
compatible with requested version "0.10.4".
The following configuration files were considered but not accepted:
/home/beebot/hydroBeebot_ws/devel/lib/rtabmap-0.9/RTABMapConfig.cmake, version: 0.9.0
-- rtabmap_ros: 7 messages, 6 services
-- WITH costmap_2d
-- Configuring incomplete, errors occurred!
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed
Although I have updated to the newest version of both the rtabmap library and the rtabmap_ros package, the problem persists. Is it possible to update to the newest version of 0.10? Or the error is due to other causes? Thank you in advance !
Hi, when I followed section to install, I meet some problem in last .
I installed 'RTAB-Map standalone libraries' in ' catkin_ws/devel ' folder
And, finally did git clone in catkin_ws .
But, When I typed $ catkine_make ( I didn't check out from 'catkin_ws')
I got this error
beta@alpa:$ cd catkin_ws//catkin_ws$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
beta@alpa:
Cloning into 'src/rtabmap_ros'...
remote: Counting objects: 3329, done.
remote: Compressing objects: 100% (45/45), done.
remote: Total 3329 (delta 18), reused 0 (delta 0), pack-reused 3284
Receiving objects: 100% (3329/3329), 2.24 MiB | 566.00 KiB/s, done.
Resolving deltas: 100% (2434/2434), done.
Checking connectivity... done.
beta@alpa:~/catkin_ws$ catkin_make
Base path: /home/beta/catkin_ws
Source space: /home/beta/catkin_ws/src
Build space: /home/beta/catkin_ws/build
Devel space: /home/beta/catkin_ws/devel
Install space: /home/beta/catkin_ws/install
-- Using CATKIN_DEVEL_PREFIX: /home/beta/catkin_ws/devel
-- Using CMAKE_PREFIX_PATH: /home/beta/catkin_ws/devel;/opt/ros/indigo
-- This workspace overlays: /home/beta/catkin_ws/devel;/opt/ros/indigo
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/beta/catkin_ws/build/test_results
-- Found gtest sources under '/usr/src/gtest': gtests will be built
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.6.14
-- BUILD_SHARED_LIBS is on
/opt/ros/indigo/share/catkin/cmake/em/order_packages.cmake.em:23: error: <type 'exceptions.RuntimeError'>: Multiple packages found with the same name "rtabmap":
-- Configuring incomplete, errors occurred!
See also "/home/beta/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/beta/catkin_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed
what is this error??? I looked for this issue: #11
because I thought It is similar . but , I think it isn't
Please, give me a answer
In the page rtabmap_ros/Tutorials/RemoteMapping of ros wiki http://wiki.ros.org/rtabmap_ros/Tutorials/RemoteMapping
In order to use the turoial with iai_kinect2
<!-- Use same nodelet used by Freenect/OpenNI -->
<group ns="camera">
<node pkg="nodelet" type="nodelet" name="data_throttle" args="load rtabmap_ros/data_throttle camera_nodelet_manager" output="screen">
<param name="rate" type="double" value="$(arg rate)"/>
camera_nodelet_manager
can be changed to iai_kinect2's nodelet manager, which is the base_name
argument in its own launch. In that case topics to remap would be"/$(arg namespace)/$(arg base_name)/$(arg resolution)/...
Just wanted to put it there if anyone is using iai_kinect2 and was wondering about the throttling.
I am working on a custom version of the grid map assembler node found in rtabmap_ros and I am wondering if there is any preferred method to do so.
I can just modify the current node but that would end up being a fork of the rtabmap_ros project, which I prefer not to do. I was thinking about making the node its own project but I noticed that the line #include "rtabmap_ros/MsgConversion.h"
fails because the header file is only found in the rtabmap_ros source files and not in the build directory.
Any help would be appreciated.
I've tried to launch mapping:
$ roslaunch rtabmap_ros rgbd_mapping.launch
... logging to /home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/roslaunch-workstation-5728.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://workstation:53964/
SUMMARY
========
PARAMETERS
* /rosdistro
* /rosversion
* /rtabmap/rtabmap/LccBow/InlierDistance
* /rtabmap/rtabmap/LccBow/MinInliers
* /rtabmap/rtabmap/subscribe_depth
* /rtabmap/rtabmapviz/subscribe_depth
* /rtabmap/rtabmapviz/subscribe_odom_info
* /rtabmap/visual_odometry/Odom/FeatureType
* /rtabmap/visual_odometry/Odom/FillInfoData
* /rtabmap/visual_odometry/Odom/InlierDistance
* /rtabmap/visual_odometry/Odom/MaxDepth
* /rtabmap/visual_odometry/Odom/MinInliers
* /rtabmap/visual_odometry/Odom/Strategy
* /rtabmap/visual_odometry/OdomBow/LocalHistorySize
* /rtabmap/visual_odometry/OdomBow/NNType
NODES
/rtabmap/
rtabmap (rtabmap_ros/rtabmap)
rtabmapviz (rtabmap_ros/rtabmapviz)
visual_odometry (rtabmap_ros/rgbd_odometry)
/
base_to_camera_tf (tf/static_transform_publisher)
ROS_MASTER_URI=http://localhost:11311
core service [/rosout] found
process[base_to_camera_tf-1]: started with pid [5746]
process[rtabmap/visual_odometry-2]: started with pid [5757]
process[rtabmap/rtabmap-3]: started with pid [5758]
process[rtabmap/rtabmapviz-4]: started with pid [5759]
[ INFO] [1427366017.888529423]: Starting node...
[rtabmap/visual_odometry-2] process has died [pid 5757, exit code -4,
cmd /opt/ros/hydro/lib/rtabmap_ros/rgbd_odometry
rgb/image:=/camera/rgb/image_rect_color
depth/image:=/camera/depth_registered/image_raw rgb/camera_info:=/camera/depth_registered/camera_info
__name:=visual_odometry
__log:=/home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/rtabmap-visual_odometry-2.log].
log file: /home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/rtabmap-visual_odometry-2*.log
[ INFO] [1427366018.000439385]: Starting node...
[rtabmap/rtabmap-3] process has died [pid 5758, exit code -4, cmd /opt/ros/hydro/lib/rtabmap_ros/rtabmap
--delete_db_on_start
rgb/image:=/camera/rgb/image_rect_color
depth/image:=/camera/depth_registered/image_raw
rgb/camera_info:=/camera/depth_registered/camera_info
__name:=rtabmap
__log:=/home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/rtabmap-rtabmap-3.log].
log file: /home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/rtabmap-rtabmap-3*.log
[ INFO] [1427366018.090905738]: rtabmapviz:
Using configuration from "/opt/ros/hydro/share/rtabmap_ros/launch/config/rgbd_gui.ini"
[rtabmap/rtabmapviz-4] process has died [pid 5759, exit code -4,
cmd /opt/ros/hydro/lib/rtabmap_ros/rtabmapviz
-d /opt/ros/hydro/share/rtabmap_ros/launch/config/rgbd_gui.ini
rgb/image:=/camera/rgb/image_rect_color
depth/image:=/camera/depth_registered/image_raw rgb/camera_info:=/camera/depth_registered/camera_info
__name:=rtabmapviz
__log:=/home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/rtabmap-rtabmapviz-4.log].
log file: /home/ilya/.ros/log/7397259a-d3a3-11e4-afe3-00248c31f50c/rtabmap-rtabmapviz-4*.log
I think that topic names have changed in the current version of the Kinect2 for ROS and "rgbd_mapping_kinect2.launch" is not longer working . Could you update this launchfile?
Thanks :)
Current implementation extracts something like this (green=ground, red=obstacle + global/local costmaps from move_base):
Given the missing green "ground" features and further on below-normal "obstacle" features, surely there is some math magic which could project forward the obstacle to the furtherest known good ground feature.
Does segmentFlatObstacles
in util3d_mapping have something which can help here?
Would this approach then fall apart when it comes to "clearing" by lasers which go straight over the hole?
Alternatively, maybe the way to go for hazardous environments like this is to have a fully prohibited local costmap. Which is then cleaned by "ground" points, holes and obstacles remain. However works against recovery strategies...
Hello,
I 've installed the stand-alone rtabmap package to my workspace's devel folder as it says in the instructions. The source is somewhere else (as the instructions say). But when I am buildingthe package, I get this:
[ 45%] Generating Java gradle project from rtabmap_ros
Traceback (most recent call last):
File "/opt/ros/indigo/share/genjava/cmake/../../../lib/genjava/genjava_gradle_project.py", line 14, in <module>
genjava.main(sys.argv)
File "/opt/ros/indigo/lib/python2.7/dist-packages/genjava/genjava_main.py", line 82, in main
gradle_project.create(args.package, args.output_dir)
File "/opt/ros/indigo/lib/python2.7/dist-packages/genjava/gradle_project.py", line 152, in create
raise IOError("could not find %s on the ros package path" % msg_pkg_name)
IOError: could not find rtabmap_ros on the ros package path
make[2]: *** [java/rtabmap_ros/build.gradle] Error 1
make[1]: *** [CMakeFiles/rtabmap_ros_generate_messages_java.dir/all] Error 2
make: *** [all] Error 2
Here is the workspace configuration:
-------------------------------------------------------------------
Profile: default
Extending: [cached] /opt/ros/indigo
Workspace: /home/oakyildiz/deps_workspace
Source Space: [exists] /home/oakyildiz/deps_workspace/src
Build Space: [exists] /home/oakyildiz/deps_workspace/build
Devel Space: [exists] /home/oakyildiz/deps_workspace/devel
Install Space: [exists] /home/oakyildiz/deps_workspace/install
DESTDIR: None
-------------------------------------------------------------------
Isolate Develspaces: False
Install Packages: True
Isolate Installs: False
-------------------------------------------------------------------
Additional CMake Args: None
Additional Make Args: None
Additional catkin Make Args: None
Internal Make Job Server: True
-------------------------------------------------------------------
Whitelisted Packages: None
Blacklisted Packages: None
-------------------------------------------------------------------
Workspace configuration appears valid.
And here is the cmake configuration of rtabmap
-- checking for module 'openni-dev'
-- package 'openni-dev' not found
-- checking for module 'openni-dev'
-- package 'openni-dev' not found
-- checking for module 'openni-dev'
-- package 'openni-dev' not found
-- Found OpenCV: /usr/local/include/opencv;/usr/local/include
-- Found PCL: /usr/include/pcl-1.7;/usr/include/eigen3;/usr/include;/usr/include/ni;/usr/include/vtk-5.8
-- Found ZLIB: /usr/include
-- Found Freenect: /usr/include
-- Found freenect2: /usr/local/include
-- Found OpenNI2: /usr/include/openni2
-- Found DC1394: /usr/include/dc1394
-- Found g2o: /usr/local/include;/usr/include/suitesparse
-- GTSAM include directory: /usr/local/lib/cmake/GTSAM/../../../include;/usr/include;/usr/local/include/gtsam/3rdparty/Eigen/
-- Found cvsba: /usr/local/include
-- Found Pthreads
-- --------------------------------------------
-- Info :
-- CMAKE_INSTALL_PREFIX = /home/oakyildiz/deps_workspace/devel
-- CMAKE_BUILD_TYPE = Release
-- BUILD_SHARED_LIBS = ON
-- With OpenCV 2 nonfree module (SIFT/SURF) = YES
-- With Freenect = YES
-- With OpenNI2 = YES
-- With Freenect2 = YES
-- With dc1394 = YES
-- With FlyCapture2/Triclops = NO (Point Grey SDK not found)
-- With g2o = YES
-- With GTSAM = YES
-- With cvsba = YES
-- With Qt = YES (version 5)
-- --------------------------------------------
-- Configuring done
-- Generating done
-- Build files have been written to: /home/oakyildiz/opt/rtabmap_standalone/build
Why is the make looking for the package it is installing?
(I also get segfault when I try to run the rtabmap executable in the source folder:
==2880== Process terminating with default action of signal 11 (SIGSEGV)
==2880== Bad permissions for mapped region at address 0x65B6C30
==2880== at 0x490D1DFC: ??? (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==2880== by 0x4010139: call_init.part.0 (dl-init.c:78)
==2880== by 0x4010222: call_init (dl-init.c:36)
==2880== by 0x4010222: _dl_init (dl-init.c:126)
==2880== by 0x4001309: ??? (in /lib/x86_64-linux-gnu/ld-2.19.so)
But it's linked against Qt5. Is that expected?
Error:
[FATAL] (2014-12-01 13:39:48.784) SensorData.cpp:119::SensorData() Condition (!depthOrRightImage.empty() && _fx>0.0f && _fyOrBaseline>0.0f && _cx>=0.0f && _cy>=0.0f) not met!
This is faster than downloading the whole database with the rtabmap service. Particularly useful in Localization mode where each time the same database is used anyway.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.