mp3guy / Kintinuous

Real-time large scale dense visual SLAM system
Other
914 stars 287 forks source link

Slicing #29

Closed roliveiradoteu closed 7 years ago

roliveiradoteu commented 7 years ago

On loop closure I am experiencing the weird slicing effect. The camera poses still appear fine!

Reducing the volume or decreasing the -dg parameter doesn't work, in fact smaller volume seems to add more slices as more loops are found.

I can only get away without this effect if the -s is so huge it encompasses the whole cloud, but of course the drawback is the cloud is really sparse then.

Any ways around this slicing problem?

mp3guy commented 7 years ago

Use ElasticFusion probably. Kintinuous isn't great for very small loops.

roliveiradoteu commented 7 years ago

Hi Thomas, fantastic work by the way.

I actually tried EF first, but my data consists of long, linear, forward facing trajectories. It didn't work.

Kintinuous seems to do a very good job. Is there anyway of increasing the resolution of the end point cloud , I mean, keep a large volume but end up with a dense cloud.

Cheers

mp3guy commented 7 years ago

The point cloud resolution is a function of the voxel resolution. A larger volume has a lower resolution, so if you ask for more points those points are literally just linear interpolations of the low resolution surface you're sampling. You could not apply the VoxelGrid filter here to get more points https://github.com/mp3guy/Kintinuous/blob/master/src/backend/CloudSliceProcessor.cpp#L119, but that won't do anything about the sparsity. You'd have to write a new function to extract more points from the surface, by modifying the extraction function here https://github.com/mp3guy/Kintinuous/blob/master/src/frontend/cuda/extract.cu#L121.

Also if EF isn't working try increasing the max depth to 6m, use the -ftf parameter and lower the -c threshold.

roliveiradoteu commented 7 years ago

Cheers!