Fine registration error difference question

Feel free to ask any question here
Post Reply
RobH616
Posts: 19
Joined: Tue Sep 23, 2014 11:25 am

Fine registration error difference question

Post by RobH616 »

Hi All,

I have a question about the fine ICP registration tool. I'm a little confused about what is happening when one chooses a minimal error difference to warrant additional iterations for ridiculous values of error difference. I understand that it's the difference between the mean square error of successive iterations and it seems to work fine for 1e-07 etc. However if I put in a ridiculous value, say 1e-100 or even just 1e-15, this seems to work just fine ! although I can't understand why. 1e-100 isn't a conceivable number for a computer (is it maybe taking 1e-100 as 1e-10 ? just dropping the additional digit ).

So what's happening when the user chooses a ridiculous value ? Is there some kind of minimum ?

Regards,
Rob
daniel
Site Admin
Posts: 7616
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Fine registration error difference question

Post by daniel »

Indeed, the (textual) value you input is automatically converted to the smallest/nearest value that the internal floating point storage value can represent.

In the case of ICP it's a double floating point value (64 bits) so you can theoretically represent very small numbers (but of course not 1e-100 exactly ;). If the error increases - probably by a very small amount because of numerical inaccuracies - the process will stop as well. So it's probably what happens when you use a ridiculously small value.
Daniel, CloudCompare admin
RobH616
Posts: 19
Joined: Tue Sep 23, 2014 11:25 am

Re: Fine registration error difference question

Post by RobH616 »

Hi Daniel,

Yes of course it will do this to stop divergence. Thank you very much (Maybe a warning message could be added at some point to let the user know it stopped because it started to diverge rather than reaching the minimal MSE ;)

Best Regards,
Rob
Post Reply