Posted by
adr_arroyo on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Rtabmap-mapping-with-two-cameras-tp2662p2745.html
Hi Mathieu, I am trying to install rtabmap_ros from github in the indigo-devel version in order to apply the changes that you made for the laser, but catkin_make gives a lot of errors:
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp: In member function ‘void rtabmap_ros::OdometryROS::processData(const rtabmap::SensorData&, const ros::Time&)’:
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:396:38: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.pose.covariance.at(0) = info.variance*2; // xx
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:397:38: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.pose.covariance.at(7) = info.variance*2; // yy
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:398:39: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.pose.covariance.at(14) = info.variance*2; // zz
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:399:39: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.pose.covariance.at(21) = info.variance*2; // rr
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:400:39: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.pose.covariance.at(28) = info.variance*2; // pp
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:401:39: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.pose.covariance.at(35) = info.variance*2; // yawyaw
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:417:48: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.twist.covariance.at(0) = setTwist?info.variance:BAD_COVARIANCE; // xx
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:418:48: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.twist.covariance.at(7) = setTwist?info.variance:BAD_COVARIANCE; // yy
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:419:49: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.twist.covariance.at(14) = setTwist?info.variance:BAD_COVARIANCE; // zz
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:420:49: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.twist.covariance.at(21) = setTwist?info.variance:BAD_COVARIANCE; // rr
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:421:49: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.twist.covariance.at(28) = setTwist?info.variance:BAD_COVARIANCE; // pp
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:422:49: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
odom.twist.covariance.at(35) = setTwist?info.variance:BAD_COVARIANCE; // yawyaw
^
In file included from /opt/ros/indigo/include/ros/ros.h:40:0,
from /home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.h:31,
from /home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:28:
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:547:114: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
NODELET_INFO( "Odom: quality=%d, std dev=%fm, update time=%fs", info.inliers, pose.isNull()?0.0f:std::sqrt(info.variance), (ros::WallTime::now()-time).toSec());
^
/opt/ros/indigo/include/ros/console.h:342:165: note: in definition of macro ‘ROSCONSOLE_PRINT_AT_LOCATION_WITH_FILTER’
::ros::console::print(filter, __rosconsole_define_location__loc.logger_, __rosconsole_define_location__loc.level_, __FILE__, __LINE__, __ROSCONSOLE_FUNCTION__, __VA_ARGS__)
^
/opt/ros/indigo/include/ros/console.h:375:7: note: in expansion of macro ‘ROSCONSOLE_PRINT_AT_LOCATION’
ROSCONSOLE_PRINT_AT_LOCATION(__VA_ARGS__); \
^
/opt/ros/indigo/include/ros/console.h:557:35: note: in expansion of macro ‘ROS_LOG_COND’
#define ROS_LOG(level, name, ...) ROS_LOG_COND(true, level, name, __VA_ARGS__)
^
/opt/ros/indigo/include/rosconsole/macros_generated.h:112:35: note: in expansion of macro ‘ROS_LOG’
#define ROS_INFO_NAMED(name, ...) ROS_LOG(::ros::console::levels::Info, std::string(ROSCONSOLE_NAME_PREFIX) + "." + name, __VA_ARGS__)
^
/opt/ros/indigo/include/nodelet/nodelet.h:59:27: note: in expansion of macro ‘ROS_INFO_NAMED’
#define NODELET_INFO(...) ROS_INFO_NAMED(getName(), __VA_ARGS__)
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/nodelets/OdometryROS.cpp:547:2: note: in expansion of macro ‘NODELET_INFO’
NODELET_INFO( "Odom: quality=%d, std dev=%fm, update time=%fs", info.inliers, pose.isNull()?0.0f:std::sqrt(info.variance), (ros::WallTime::now()-time).toSec());
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp: In function ‘rtabmap::Signature rtabmap_ros::nodeDataFromROS(const NodeData&)’:
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:589:42: error: no matching function for call to ‘rtabmap::SensorData::SensorData(cv::Mat, const _laserScanMaxPts_type&, const _laserScanMaxRange_type&, cv::Mat, cv::Mat, rtabmap::StereoCameraModel&, const _id_type&, const _stamp_type&, cv::Mat)’
compressedMatFromBytes(msg.userData)):
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:589:42: note: candidates are:
In file included from /usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/Signature.h:42:0,
from /home/adrian/catkin_ws/src/rtabmap_ros/include/rtabmap_ros/MsgConversion.h:41,
from /home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:28:
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:117:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::LaserScanInfo&, const cv::Mat&, const cv::Mat&, const rtabmap::StereoCameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:117:2: note: candidate expects 8 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:108:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const cv::Mat&, const rtabmap::StereoCameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:108:2: note: candidate expects 6 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:97:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::LaserScanInfo&, const cv::Mat&, const cv::Mat&, const std::vector<rtabmap::CameraModel>&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:97:2: note: candidate expects 8 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:88:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const cv::Mat&, const std::vector<rtabmap::CameraModel>&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:88:2: note: candidate expects 6 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:77:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::LaserScanInfo&, const cv::Mat&, const cv::Mat&, const rtabmap::CameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:77:2: note: candidate expects 8 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:68:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const cv::Mat&, const rtabmap::CameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:68:2: note: candidate expects 6 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:60:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::CameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:60:2: note: candidate expects 5 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:53:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:53:2: note: candidate expects 4 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:50:2: note: rtabmap::SensorData::SensorData()
SensorData();
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:50:2: note: candidate expects 0 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:46:19: note: rtabmap::SensorData::SensorData(const rtabmap::SensorData&)
class RTABMAP_EXP SensorData
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:46:19: note: candidate expects 1 argument, 9 provided
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:599:42: error: no matching function for call to ‘rtabmap::SensorData::SensorData(cv::Mat, const _laserScanMaxPts_type&, const _laserScanMaxRange_type&, cv::Mat, cv::Mat, std::vector<rtabmap::CameraModel>&, const _id_type&, const _stamp_type&, cv::Mat)’
compressedMatFromBytes(msg.userData)));
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:599:42: note: candidates are:
In file included from /usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/Signature.h:42:0,
from /home/adrian/catkin_ws/src/rtabmap_ros/include/rtabmap_ros/MsgConversion.h:41,
from /home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:28:
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:117:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::LaserScanInfo&, const cv::Mat&, const cv::Mat&, const rtabmap::StereoCameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:117:2: note: candidate expects 8 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:108:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const cv::Mat&, const rtabmap::StereoCameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:108:2: note: candidate expects 6 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:97:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::LaserScanInfo&, const cv::Mat&, const cv::Mat&, const std::vector<rtabmap::CameraModel>&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:97:2: note: candidate expects 8 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:88:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const cv::Mat&, const std::vector<rtabmap::CameraModel>&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:88:2: note: candidate expects 6 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:77:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::LaserScanInfo&, const cv::Mat&, const cv::Mat&, const rtabmap::CameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:77:2: note: candidate expects 8 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:68:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const cv::Mat&, const rtabmap::CameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:68:2: note: candidate expects 6 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:60:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, const rtabmap::CameraModel&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:60:2: note: candidate expects 5 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:53:2: note: rtabmap::SensorData::SensorData(const cv::Mat&, int, double, const cv::Mat&)
SensorData(
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:53:2: note: candidate expects 4 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:50:2: note: rtabmap::SensorData::SensorData()
SensorData();
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:50:2: note: candidate expects 0 arguments, 9 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:46:19: note: rtabmap::SensorData::SensorData(const rtabmap::SensorData&)
class RTABMAP_EXP SensorData
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/SensorData.h:46:19: note: candidate expects 1 argument, 9 provided
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp: In function ‘void rtabmap_ros::nodeDataToROS(const rtabmap::Signature&, rtabmap_ros::NodeData&)’:
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:618:47: error: ‘const class rtabmap::SensorData’ has no member named ‘laserScanMaxPts’
msg.laserScanMaxPts = signature.sensorData().laserScanMaxPts();
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:619:49: error: ‘const class rtabmap::SensorData’ has no member named ‘laserScanMaxRange’
msg.laserScanMaxRange = signature.sensorData().laserScanMaxRange();
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp: In function ‘rtabmap::OdometryInfo rtabmap_ros::odomInfoFromROS(const OdomInfo&)’:
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:715:7: error: ‘class rtabmap::OdometryInfo’ has no member named ‘variance’
info.variance = msg.variance;
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp: In function ‘void rtabmap_ros::odomInfoToROS(const rtabmap::OdometryInfo&, rtabmap_ros::OdomInfo&)’:
/home/adrian/catkin_ws/src/rtabmap_ros/src/MsgConversion.cpp:756:22: error: ‘const class rtabmap::OdometryInfo’ has no member named ‘variance’
msg.variance = info.variance;
^
make[2]: *** [rtabmap_ros/CMakeFiles/rtabmap_ros.dir/src/nodelets/OdometryROS.cpp.o] Error 1
make[2]: *** Se espera a que terminen otras tareas....
/home/adrian/catkin_ws/src/rtabmap_ros/src/MapsManager.cpp: In member function ‘std::map<int, rtabmap::Transform> MapsManager::updateMapCaches(const std::map<int, rtabmap::Transform>&, const rtabmap::Memory*, bool, bool, bool, bool, bool, const std::map<int, rtabmap::Signature>&)’:
/home/adrian/catkin_ws/src/rtabmap_ros/src/MapsManager.cpp:592:72: error: no matching function for call to ‘rtabmap::OctoMap::addToCache(const int&, pcl::PointCloud<pcl::PointXYZRGB>::Ptr&, pcl::PointCloud<pcl::PointXYZRGB>::Ptr&)’
octomap_->addToCache(iter->first, groundCloud, obstaclesCloud);
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MapsManager.cpp:592:72: note: candidates are:
In file included from /home/adrian/catkin_ws/src/rtabmap_ros/src/MapsManager.cpp:50:0:
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/OctoMap.h:63:7: note: void rtabmap::OctoMap::addToCache(int, pcl::PointCloud<pcl::PointXYZRGB>::Ptr&, pcl::PointCloud<pcl::PointXYZRGB>::Ptr&, const pcl::PointXYZ&)
void addToCache(int nodeId,
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/OctoMap.h:63:7: note: candidate expects 4 arguments, 3 provided
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/OctoMap.h:67:7: note: void rtabmap::OctoMap::addToCache(int, const cv::Mat&, const cv::Mat&, const Point3f&)
void addToCache(int nodeId,
^
/usr/local/lib/rtabmap-0.12/../../include/rtabmap-0.12/rtabmap/core/OctoMap.h:67:7: note: candidate expects 4 arguments, 3 provided
/home/adrian/catkin_ws/src/rtabmap_ros/src/MapsManager.cpp:673:16: error: ‘class rtabmap::SensorData’ has no member named ‘laserScanMaxRange’
data.laserScanMaxRange()>gridMaxUnknownSpaceFilledRange_?gridMaxUnknownSpaceFilledRange_:data.laserScanMaxRange());
^
/home/adrian/catkin_ws/src/rtabmap_ros/src/MapsManager.cpp:673:105: error: ‘class rtabmap::SensorData’ has no member named ‘laserScanMaxRange’
data.laserScanMaxRange()>gridMaxUnknownSpaceFilledRange_?gridMaxUnknownSpaceFilledRange_:data.laserScanMaxRange());
^
make[2]: *** [rtabmap_ros/CMakeFiles/rtabmap_ros.dir/src/MsgConversion.cpp.o] Error 1
make[2]: *** [rtabmap_ros/CMakeFiles/rtabmap_ros.dir/src/MapsManager.cpp.o] Error 1
make[1]: *** [rtabmap_ros/CMakeFiles/rtabmap_ros.dir/all] Error 2
make: *** [all] Error 2
Invoking "make -j8 -l8" failed
Is it that the github version has some mistakes or that i dont have the proper version of rtabmap (installed from github following tutorial indigo-devel)?
Cheers