Rank: 256861 based on 0 downloads (last 30 days) and 0 file submitted
photo

Tomasz Malisiewicz

E-mail

Personal Profile:

 

Watch this Author's files

 

Comments and Ratings by Tomasz Malisiewicz
Updated File Comments Rating
19 Sep 2012 Iterative Closest Point An implementation of various ICP (iterative closest point) features. Author: Jakob Wilm

Hi Jakob and Hans,

I've enjoyed using your code, but for a certain application I'm working on, I extracted your eq_point function inside icp.m and found what might be an issue.

There are some scenarios where the returned rotation matrix has det(R)==-1, and for my application this is an issue. I understand that in many real-world datasets this might never come up, but the fix seems easy.

It has already been noted that the closed form SVD-based solution you are using for [R,T] estimation from correspondences can sometimes be problematic.

You can checkout the following classic paper from Umeyama:
http://www.stanford.edu/class/cs273/refs/umeyama.pdf

my solution was to change on line of eq_point to do the following:
R = V*diag([1 1 det(U*V')])*U';

I haven't thoroughly tested this, but it *seems* to fix the problem for me.

Cheers and happy hacking,
Dr. Tomasz Malisiewicz
MIT CSAIL Postdoctoral Research Scholar

Contact us