In case anyone else is interested, I just discovered the cv::RGBDOdometry class in OpenCV contrib. I was searching for this for a while, but the OpenCV documentation never mentions it and you have to know the exact string to search for.
It seems a bit more stable than the existing kinfu implementation for frame-to-frame tracking (fewer large jumps), but only runs at 10Hz. Does anyone know of a public GPU implementation of this algorithm?
I'd be interested in using the kinfu volume to generate the "previous" frame, rather than just using the last frame from the camera.
This post has NOT been accepted by the mailing list yet.
Well, so far I am having problems even getting it to run on streaming data, when I link it to the kinect stream it gives zero values for translate. Still images work fine, but take between 0.5 - 0.6 seconds and don't seem very accurate..
Is there any chance you could share your relevant code that you had working well? If so, much appreciated! If not, that's fine too. :)