[Insight-developers] Uniform registration results

Blezek, Daniel J (Research) blezek at crd.ge.com
Wed Sep 28 13:39:00 EDT 2005


Karthik,

  Funny, I got your message but not Luis'...

  I did make the changes to CMakeLists.txt files where needed, but it would be better to put the RNG in Common or Numerics, just to help people out a little.  I'll send the patch as is to verify the results, then we can move the MT to Common or Numerics.

Not completely up on the patch stuff...  here is what I did:

{practical:Insight}1122:cvs diff > ../MersenneTwister.patch

-dan


-----Original Message-----
From: Karthik Krishnan [mailto:Karthik.Krishnan at kitware.com]
Sent: Wednesday, September 28, 2005 1:31 PM
To: Luis Ibanez
Cc: Blezek, Daniel J (Research); Lydia Ng; insight-developers at itk.org
Subject: Re: [Insight-developers] Uniform registration results


For backward compatibility you might want to move the 
MersenneTwisterClass from Statistics to Common. Otherwise this will 
require users to change their configuration so as to link against 
ITKStatistics now..

Sorry about the mistake, I wasn't thinking about this earlier.

But given the recent changes to the statistics framework, this may not 
be wholly unacceptable...


Luis Ibanez wrote:

>
> Hi Daniel,
>
> That's great !
>
> Thanks for replacing the random number
> generator in the iterator.
>
> I'll be happy to double check the results,
> if you send me the patch. Once we check them,
> we can simply commit new baseline images, that
> this time should probably be the same for all
> platforms.
>
>
>   Thanks
>
>
>      Luis
>
>
> ------------------------------------
> Blezek, Daniel J (Research) wrote:
>
>> One problem that has plagued me for some time is the different 
>> registration results from different platforms.  The problem is in the 
>> Random image iterator used to draw samples from the images being 
>> registered.  On Unix-like systems, drand48 is used, under Windows (as 
>> best I can make out) there is a C++ implementation.  They give a 
>> different sequence of random numbers, as you might expect.  This 
>> leads to different minimum in the registration process.
>>
>> To fix this, I've changed the random iterators to use the 
>> MersenTwister RNG.  Some tests fail because they are not exactly the 
>> same (registration is off by < 0.1 pixels/mm).  The tests that fail are:
>>
>> The following tests FAILED:
>>         965 - ImageRegistration4oTest (Failed)
>>         972 - ImageRegistration4Test (Failed)
>>         979 - ImageRegistration13Test (Failed)
>>         982 - ImageRegistration16Test (Failed)
>>         984 - MultiResImageRegistration1Test (Failed)
>>         985 - MultiResImageRegistration2Test (Failed)
>>
>> I've verified the final parameters are very close to the previous 
>> results.  Is there an owner of these tests?  If so, can I send a 
>> patch and have you verify the results?  Otherwise I'll plan to check 
>> the code in with new baseline images.
>>
>> Regards,
>> -dan
>>
>>
>> Daniel Blezek, PhD
>> GE Global Research
>> Computer Scientist
>>
>> T 518 387 5481
>> F 518 387 6981
>> D *833-5481
>> E blezek at research.ge.com
>> www.research.ge.com
>>
>> 1 Research Circle
>> Niskayuna, NY 12309, USA
>>
>> General Electric Company
>>
>> _______________________________________________
>> Insight-developers mailing list
>> Insight-developers at itk.org
>> http://www.itk.org/mailman/listinfo/insight-developers
>>
>>
>
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk.org
> http://www.itk.org/mailman/listinfo/insight-developers
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: MersenneTwister.patch
Type: application/octet-stream
Size: 16009 bytes
Desc: MersenneTwister.patch
Url : http://www.itk.org/mailman/private/insight-developers/attachments/20050928/0e74ed0d/MersenneTwister.obj


More information about the Insight-developers mailing list