[Insight-developers] DiffeomorphicDemonsRegistrationFilter/ESMDemonsRegistrationFunction broken!

Williams, Norman K norman-k-williams at uiowa.edu
Fri Nov 4 19:51:51 EDT 2011


Tom, I was compiling against the ITK_Slicer snapshot of ITK4 -- there might have been changes in the ITK Master that caused the problems you saw.
Actually, I didn't yet try using the ITK3/4 DiffeomorphicDemonsRegistration code.  When I was looking at diffs between the 3 versions (ITK3, ITK4, ITK3+Masks) the ITK3 and 4 versions were identical except for white space & the change in name (Deformation became Displacement).  The Mask version just added the mask processing.
Hans is going to have a look this weekend, and knowing that the mask code might be the entire problem should save him some time.  Thanks for having a look!


________________________________________
From: tom.vercauteren at gmail.com [tom.vercauteren at gmail.com] on behalf of Tom Vercauteren [tom.vercauteren at m4x.org]
Sent: Friday, November 04, 2011 6:13 PM
To: Williams, Norman K
Cc: Hans Johnson; ITK
Subject: Re: DiffeomorphicDemonsRegistrationFilter/ESMDemonsRegistrationFunction broken!

Hi again Kent,

So I took a stab at setting up your problematic example. I must admit
I have been a little confused since it did not compile out of the box
with ITKV4. Attached are some quick and dirty fixed version of your
files to make them compile with both ITK3 and ITK4.

I haven't looked into the bug origin but one thing that can be seen is that:

- Using the attached DiffeomorphicDemonsRegistrationWithMakFilter
seems OK with ITK3 but not with ITK4 (as you were saying)

- Using the ITK version of DiffeomorphicDemonsRegistrationFilter on
the other hand seems OK with both ITK3 and ITK4

So the bug might well be in the masked version only ;)

Hope this helps,
Tom

On Fri, Nov 4, 2011 at 21:29, Tom Vercauteren <tom.vercauteren at m4x.org> wrote:
> Hi Kent,
>
> I haven't worked with ITKv4 at all. So I am not sure how long it might
> take me to looked into the issue. Also I hardly have any time at the
> moment.
>
> That being said, have you tried using the
>  FastSymmetricForcesDemonsRegistrationFilter
> also in Review instead of DiffeomorphicDemonsRegistrationFilter? It
> uses the same ESMDemonsRegistrationFunction internally but is a little
> simpler.
>
> Also can you replicate the issue with the original (without masking
> capabilities) filters? Have you run the tests through valgrind?
>
> Regarding the diff, my pick would be kompare from kde. When there
> really are too many style differences, I simply uncrustify the files
> to be compared and then use kompare (or any other diff tool I have
> access to).
>
> Tom
>
> On Fri, Nov 4, 2011 at 19:56, Williams, Norman K
> <norman-k-williams at uiowa.edu> wrote:
>>
>> These classes are in ITK4 in ITK/Modules/NonUnit/Review -- they come from
>> this Insight Journal Paper, and apparently didn't make it out of review
>> for ITK4:
>>
>>
>> http://hdl.handle.net/1926/510
>> I've just spent an hour diffing the ITK3 Version vs the ITK4 Version vs
>> the custom version we use in BRAINSDemonWarp. The ITK3 and ITK4 versions
>> have only changed in formatting.  The version we use in BRAINSDemonWarp
>> just adds the ability to use fixed and moving image masks -- the
>> calculation short cuts for voxels outside the masks.
>>
>> BRAINSDemonWarp works fine with ITK3, and works terribly in ITK4.  In
>> ITK4, if you register 2 images and then warp the moving image, it looks as
>> though the subject was shot in the head; big chunks of the brain are
>> missing.
>>
>> I've spent considerable time whittling down a test case that works in ITK3
>> and fails in ITK4.  The result can be grabbed here:
>>
>> https://github.com/Chaircrusher/BDE_Testing
>>
>>
>> I'm building the current ITK4 to run the tests in
>> DiffeomorphicDemonsRegistrationFilter/ESMDemonsRegistrationFunction, to
>> see if they succeed or fail.  If they succeed, then I think the program in
>> the above github project needs to be added as a test. Or they need to be
>> removed from ITK4 entirely as defective.
>>
>> A final process question: Is there an interactive DIFF program that will
>> ignore white space changes? Since all of the style changes that happened
>> in ITK4, it's a horrible chore diffing ITK3 and ITK4 files.  You have to
>> examine hundreds of changes to find the substantive changes.
>>
>>
>>
>> --
>> Kent Williams norman-k-williams at uiowa.edu
>>
>>
>>
>>
>>
>>
>> ________________________________
>> Notice: This UI Health Care e-mail (including attachments) is covered by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and may be legally privileged.  If you are not the intended recipient, you are hereby notified that any retention, dissemination, distribution, or copying of this communication is strictly prohibited.  Please reply to the sender that you have received the message in error, then delete it.  Thank you.
>> ________________________________
>


________________________________
Notice: This UI Health Care e-mail (including attachments) is covered by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and may be legally privileged.  If you are not the intended recipient, you are hereby notified that any retention, dissemination, distribution, or copying of this communication is strictly prohibited.  Please reply to the sender that you have received the message in error, then delete it.  Thank you.
________________________________


More information about the Insight-developers mailing list