ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Concatenating pointclouds gets very slow

asked 2013-09-19 19:17:49 -0500

updated 2014-01-28 17:18:01 -0500

ngrennan gravatar image

Hi guys, I have implemented an algorithm that uses ransac to align pointclouds obtained by consecutive scenes and add them to a pointcloud representing the map called total_cloud using the pcl concatenate function. So total_cloud starts empty and then gradually grows as more pointclouds are aligned and added.

My question is why does it get slower and slower as the map gets bigger? I am not using total_cloud in any other computation so it is not part of my computation, only adding the new aligned pointcloud to it. Is this normal or am I doing something wrong? From my understanding, total_cloud is a just a chunk of memory that is growing dynamically, and is not part of any computation.

Any help or advice would be much appreciated.

Best regards, Khalid

edit retag flag offensive close merge delete

2 Answers

Sort by ┬╗ oldest newest most voted

answered 2013-11-18 19:04:35 -0500

tfoote gravatar image

Dynamically growing memory is very expensive as it will require reallocating and copying data. It's usually more expensive than operating on the data.

edit flag offensive delete link more

answered 2013-11-18 21:10:05 -0500

I would like also to remind you that the more you add points, the more you have points. Which means that the heavier will your total_cloud will become.

You should add two steps : 1) remove outliers (like described in pcl here or here ) 2) downsample the total_cloud (like described in pcl here

Have a good day ! Keep us updated :-)


edit flag offensive delete link more

Question Tools

1 follower


Asked: 2013-09-19 19:17:49 -0500

Seen: 1,025 times

Last updated: Nov 18 '13