Posted by
Nima on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Probem-in-continous-RGBD-mapping-tp9970.html
Hello, I tried the RGBD mapping example with RTABMAP . However, I need to press a key for mapping to continue otherwise it stops. I tried using the following link:
https://github.com/introlab/rtabmap/wiki/Cplusplus-RGBD-Mappingbut I got this error: MyProject/MapBuilder.h: In constructor ‘MapBuilder::MapBuilder(rtabmap::CameraThread*)’:
/home/nima/MyProject/MapBuilder.h:62:44: error: no matching function for call to ‘rtabmap::OccupancyGrid::OccupancyGrid()’
62 | lastOdometryProcessed_(true)
| ^
In file included from /usr/local/include/rtabmap-0.21/rtabmap/core/OccupancyGrid.h:35,
from /home/nima/MyProject/MapBuilder.h:41,
from /home/nima/MyProject/main.cpp:16:
/usr/local/include/rtabmap-0.21/rtabmap/core/global_map/OccupancyGrid.h:43:9: note: candidate: ‘rtabmap::OccupancyGrid::OccupancyGrid(const rtabmap::LocalGridCache*, const ParametersMap&)’
43 | OccupancyGrid(const LocalGridCache * cache, const ParametersMap & parameters = ParametersMap());
| ^~~~~~~~~~~~~
/usr/local/include/rtabmap-0.21/rtabmap/core/global_map/OccupancyGrid.h:43:9: note: candidate expects 2 arguments, 0 provided
/usr/local/include/rtabmap-0.21/rtabmap/core/global_map/OccupancyGrid.h:40:27: note: candidate: ‘rtabmap::OccupancyGrid::OccupancyGrid(const rtabmap::OccupancyGrid&)’
40 | class RTABMAP_CORE_EXPORT OccupancyGrid : public GlobalMap
| ^~~~~~~~~~~~~
/usr/local/include/rtabmap-0.21/rtabmap/core/global_map/OccupancyGrid.h:40:27: note: candidate expects 1 argument, 0 provided
/usr/local/include/rtabmap-0.21/rtabmap/core/global_map/OccupancyGrid.h:40:27: note: candidate: ‘rtabmap::OccupancyGrid::OccupancyGrid(rtabmap::OccupancyGrid&&)’
/usr/local/include/rtabmap-0.21/rtabmap/core/global_map/OccupancyGrid.h:40:27: note: candidate expects 1 argument, 0 provided
In file included from /home/nima/MyProject/main.cpp:16:
/home/nima/MyProject/MapBuilder.h: In member function ‘virtual void MapBuilder::processStatistics(const rtabmap::Statistics&)’:
/home/nima/MyProject/MapBuilder.h:255:39: error: ‘class rtabmap::OccupancyGrid’ has no member named ‘addToCache’
255 | grid_.addToCache(stats.getLastSignatureData().id(), groundCells, obstacleCells, emptyCells);
| ^~~~~~~~~~
/home/nima/MyProject/MapBuilder.h:259:55: error: ‘class rtabmap::OccupancyGrid’ has no member named ‘cacheSize’
259 | if(grid_.addedNodes().size() || grid_.cacheSize())
| ^~~~~~~~~
/home/nima/MyProject/MapBuilder.h:270:57: error: ‘convertMap2Image8U’ is not a member of ‘rtabmap::util3d’
270 | cv::Mat map8U = util3d::convertMap2Image8U(map8S);
| ^~~~~~~~~~~~~~~~~~
/home/nima/MyProject/main.cpp: In function ‘int main(int, char**)’:
/home/nima/MyProject/main.cpp:220:24: warning: ‘void rtabmap::Rtabmap::get3DMap(std::map<int, rtabmap::Signature>&, std::map<int, rtabmap::Transform>&, std::multimap<int, rtabmap::Link>&, bool, bool) const’ is deprecated [-Wdeprecated-declarations]
220 | rtabmap->get3DMap(nodes, optimizedPoses, links, true, true);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/nima/MyProject/main.cpp:2:
/usr/local/include/rtabmap-0.21/rtabmap/core/Rtabmap.h:185:22: note: declared here
185 | void get3DMap(std::map<int, Signature> & signatures,
| ^~~~~~~~
make[2]: *** [CMakeFiles/rgbd_mapping.dir/build.make:80: CMakeFiles/rgbd_mapping.dir/main.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/rgbd_mapping.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
I would appreciate your help in telling me what can I do to have a continous mapping without pressing a key