mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-04 16:57:46 +08:00
ExternalLoopExample: adding all nodes from all sessions in cache
This commit is contained in:
@@ -201,18 +201,15 @@ int main(int argc, char** argv)
|
|||||||
int addedNodes = 0;
|
int addedNodes = 0;
|
||||||
for(size_t i=0; i<mapRes.data.nodes.size(); ++i)
|
for(size_t i=0; i<mapRes.data.nodes.size(); ++i)
|
||||||
{
|
{
|
||||||
if(poses.find(mapRes.data.nodes.at(i).id) != poses.end())
|
rtabmap::Signature s = rtabmap_ros::nodeDataFromROS(mapRes.data.nodes.at(i));
|
||||||
|
rtabmap::SensorData compressedData = s.sensorData();
|
||||||
|
s.sensorData().uncompressData();
|
||||||
|
if(loopClosureDetector.process(s.sensorData(), rtabmap::Transform()))
|
||||||
{
|
{
|
||||||
rtabmap::Signature s = rtabmap_ros::nodeDataFromROS(mapRes.data.nodes.at(i));
|
localData.insert(std::make_pair(
|
||||||
rtabmap::SensorData compressedData = s.sensorData();
|
loopClosureDetector.getStatistics().getLastSignatureData().id(),
|
||||||
s.sensorData().uncompressData();
|
compressedData));
|
||||||
if(loopClosureDetector.process(s.sensorData(), rtabmap::Transform()))
|
++addedNodes;
|
||||||
{
|
|
||||||
localData.insert(std::make_pair(
|
|
||||||
loopClosureDetector.getStatistics().getLastSignatureData().id(),
|
|
||||||
compressedData));
|
|
||||||
++addedNodes;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ROS_INFO("Added %d/%d nodes to memory! Vocabulary size=%d",
|
ROS_INFO("Added %d/%d nodes to memory! Vocabulary size=%d",
|
||||||
|
|||||||
Reference in New Issue
Block a user