Finding the correct pipeline for Kinect registeration ?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Finding the correct pipeline for Kinect registeration ?

ewjoachim
Hello guys,

I was wondering : considering all the implemented algorithms in the PCL
trunk, what would be the advised "pipeline" for creating a 3D map of a
space (let's say 10 to 100 m²) with the kinect ?

I started looking at Kinfu, but it appeared it's for small spaces, so I
checked Kintinuous, but as far as I understood, all GPU based solution
will require a powerfull PC, and I'm aiming for good mobility.

So I decided to try offline processing, I looked at ONI file creation
and ONIGrabber and then I was pointed to
PCDWriter::writeBinaryCompressed method (thanks Radu), and octree
encoder (I haven't figured yet which one is best ?)

Then the question was for registeration.

The tutorial for registeration uses non linear ICP, that seems to give
the exact same results as regular ICP. I also found the FPFH
registeration, that seems slower, but should give better results. Are
there other kinds of registration suitable for this use. I would like to
use color data, but I understood it's not implemented, but I could try
and do it...

So, I'm in front of a gigantic toolbox, which tools should I take ?

Thanks a lot,

--
Joachim
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Finding the correct pipeline for Kinect registeration ?

Radu B Rusu
Administrator
Joachim,

I know everyone will tell you that all the tools are in place in PCL for building what you want, but unfortunately no
one put together that awesome tutorial for doing it just yet. Not sure exactly why :) Maybe we're all just waiting for
GTSAM integration ;)

My suggestion is to take the set of PCD files and process them offline either using KinFu or using a custom registration
pipeline based on our Correspondences API. We already modified KinFu to use a PCDGrabber and thus work with a large sets
of PCD files. With the work that Raphael/Francisco, Marsette/Henry and finally Maurice/Tom are doing in the space of
extending KinFu, I'm sure we'll be able to have a good tutorial + set of tools for large scale environment mapping using
CUDA.

Performing registration online on a mobile device is still an ongoing research topic, and I'm afraid we'll need Tegra4
or better to be able to offer decently robust solutions. $0.02.

Cheers,
Radu.

On 06/14/2012 08:14 AM, Joachim Jablon wrote:

> Hello guys,
>
> I was wondering : considering all the implemented algorithms in the PCL trunk, what would be the advised "pipeline" for
> creating a 3D map of a space (let's say 10 to 100 m²) with the kinect ?
>
> I started looking at Kinfu, but it appeared it's for small spaces, so I checked Kintinuous, but as far as I understood,
> all GPU based solution will require a powerfull PC, and I'm aiming for good mobility.
>
> So I decided to try offline processing, I looked at ONI file creation and ONIGrabber and then I was pointed to
> PCDWriter::writeBinaryCompressed method (thanks Radu), and octree encoder (I haven't figured yet which one is best ?)
>
> Then the question was for registeration.
>
> The tutorial for registeration uses non linear ICP, that seems to give the exact same results as regular ICP. I also
> found the FPFH registeration, that seems slower, but should give better results. Are there other kinds of registration
> suitable for this use. I would like to use color data, but I understood it's not implemented, but I could try and do it...
>
> So, I'm in front of a gigantic toolbox, which tools should I take ?
>
> Thanks a lot,
>
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users