[ITK] [ITK-dev] Potential BSpline registration problems with ITKv4

brian avants stnava at gmail.com
Thu Apr 17 14:00:15 EDT 2014


hmm ... obviously some fundamental difference in the way the transform is
 implemented and/or used.  i recall that the bulk transform is applied
differently in v3 than v4.   e.g. in v3, the fixed maps to the moving.
opposite in v4.  probably other differences too.


brian




On Thu, Apr 17, 2014 at 1:50 PM, Ghayoor, Ali <ali-ghayoor at uiowa.edu> wrote:

>  I also used “ConjugateGradientLineSearchOptimizerv4” (as used in ANTs),
> and many tests were failed by timeout even if timeout limit was increased
> to 5000 seconds. With some small test cases, the registration process was
> completed, but the results were unacceptable.
>
>  Thanks,
> Ali
>
>   From: brian avants <stnava at gmail.com>
> Date: Thursday, April 17, 2014 at 12:39 PM
> To: Ali Ghayoor <ali-ghayoor at uiowa.edu>
> Cc: ITK <insight-developers at itk.org>, Nicholas Tustison <
> ntustison at gmail.com>, "Johnson, Hans J" <hans-johnson at uiowa.edu>
>
> Subject: Re: [ITK-dev] [ITK] Potential BSpline registration problems with
> ITKv4
>
>   Did you try other optimizers in the v4 case?
> On Apr 17, 2014 1:37 PM, "Ghayoor, Ali" <ali-ghayoor at uiowa.edu> wrote:
>
>>  2160 parameters in each test.
>>
>>  Thanks,
>> Ali
>>
>>   From: brian avants <stnava at gmail.com>
>> Date: Thursday, April 17, 2014 at 12:33 PM
>> To: Ali Ghayoor <ali-ghayoor at uiowa.edu>
>> Cc: Nicholas Tustison <ntustison at gmail.com>, "Johnson, Hans J" <
>> hans-johnson at uiowa.edu>, ITK <insight-developers at itk.org>
>> Subject: Re: [ITK-dev] [ITK] Potential BSpline registration problems
>> with ITKv4
>>
>>   how many parameters are being optimized in each case?
>>
>>
>>  brian
>>
>>
>>
>>
>> On Thu, Apr 17, 2014 at 1:22 PM, Ghayoor, Ali <ali-ghayoor at uiowa.edu>wrote:
>>
>>>  Hello all,
>>>
>>>  I did a double check on the command line parameters and the code
>>> changes in v3 and v4 implementations. Basically same metric and optimizer
>>> is used for both implementations, and their parameters are set the same.
>>> Metric —> MattesMutualInformationImageToImageMetric(v4)
>>> Optimizer —> LBFGSBOptimizer(v4)
>>>
>>>  Also, in ITKv4 based implementation, one level registration (with
>>> shrink factor 1 and smoothing sigma 0) is used that is the closest
>>> circumstance to what happens in ITKv3.
>>> Only notice that two implementations use different BSpline transform
>>> types too.
>>>
>>>  In v3 implementation, a BSplineDeformableTransformType is used that is
>>> initialized by a BSplineDeformableTransformInitializer, and its bulk
>>> transform is initialized by the input initial transform.
>>>
>>>  However, v4 implementation utilizes a BSplineTransformType that its
>>> parameters (origin, physicalDomain, meshSize and direction) are set
>>> directly. Also, the input initial transform is set directly to the
>>> registration filter as the moving initial transform.
>>>
>>>  Moreover, I repeated my experiments on the
>>> “BRAINSFitTest_BSplineOnlyRescaleHeadMasks” test that does just one
>>> stage BSpline registration. (Previous test was performing two linear stages
>>> before the BSpline stage).
>>>
>>>  This test was passed successfully in ITKv3 in very short times:
>>>
>>>  ITKv3: release type -> passed in 13 seconds
>>> ITKv3: debug type -> passed in 102 seconds
>>>
>>>  Also, it was passed successfully in ITKv4 when 4 cores were used and
>>> was failed by timeout when just 1 core was used:
>>>
>>>  ITKv4: release type -> passed in 17 minutes (when 4 cores are used)
>>> ITKv4: release type -> failed by timeout (>30 mins) (when 1 core is used
>>> )
>>>
>>>
>>>  Thank you,
>>> Ali
>>>
>>>
>>>
>>>   From: Nicholas Tustison <ntustison at gmail.com>
>>> Date: Thursday, April 17, 2014 at 8:07 AM
>>> To: "Johnson, Hans J" <hans-johnson at uiowa.edu>
>>> Cc: Ali Ghayoor <ali-ghayoor at uiowa.edu>, ITK <insight-developers at itk.org>
>>>
>>>
>>> Subject: Re: [ITK-dev] [ITK] Potential BSpline registration problems
>>> with ITKv4
>>>
>>>  Very interesting find, Ali.  Thanks.  Please keep us
>>> informed of what you find.  It would be nice if a fix
>>> could help us improve the general timing issues that
>>> we’ve discussed previously with ITKv4.
>>>
>>>
>>>
>>>  On Apr 17, 2014, at 9:00 AM, Johnson, Hans J <hans-johnson at uiowa.edu>
>>> wrote:
>>>
>>>  There was not supposed to be.  The intention was to do the minimal
>>> number of changes to allow the same results to occur in ITKv4 instead of
>>> ITKv3.  No new features or changes were specified.
>>>
>>>  Ali did this work, so he will need to double check, but upon quick
>>> review it looks like a simple refactoring from one framework to the other.
>>>
>>>  Hans
>>>
>>>
>>>   From: Nick Tustison <ntustison at gmail.com>
>>> Date: Thursday, April 17, 2014 at 7:54 AM
>>> To: Hans Johnson <hans-johnson at uiowa.edu>
>>> Cc: ITK <insight-developers at itk.org>
>>> Subject: Re: [ITK-dev] [ITK] Potential BSpline registration problems
>>> with ITKv4
>>>
>>>  Hans,
>>>
>>>  Are there any implementation differences between the two testing
>>> programs, e.g. different metric class versions?
>>>
>>>  Thanks,
>>> Nick
>>>
>>>  On Apr 17, 2014, at 8:24 AM, Bradley Lowekamp <blowekamp at mail.nih.gov>
>>> wrote:
>>>
>>>  Hans,
>>>
>>>
>>>
>>>  I have see a single per-pixel dynamic memory/malloc cause a 10X
>>> performance penalty.  Also I have found apple Instruments easy for
>>> diagnosing this bottle neck. This is one possibility among many.
>>>
>>>  Good luck tracking down the issue.
>>>
>>>  Brad
>>>
>>>  On Apr 16, 2014, at 9:10 PM, Johnson, Hans J <hans-johnson at uiowa.edu>
>>> wrote:
>>>
>>>  FYI
>>>
>>>  Ali Ghayoor did the following experiments on
>>> "BRAINSFitTest_BSplineScaleRotationRescaleHeadMasks" test.
>>>
>>>  1) In one of my old build directories, I ran the
>>> "BRAINSFitTest_BSplineScaleRotationRescaleHeadMasks" test in BRIANSFitv3
>>> (that uses ITKv3 registration framework). The test was passed successfully
>>> in both release and debug types, and it took:
>>>
>>>  22 second in release
>>> 88 second in debug
>>>
>>>  2) I built NAMICExternalProject on my system in release type and ran
>>> the above BSpline test in BRAINSTools. The test was passed successfully
>>> again, but the run time in ITKv4 is tremendously longer than the time that
>>> test takes in ITKv3. The test took:
>>>
>>>  18 minutes using 4 cores
>>> 22 minutes using 1 core (In this case the environmental variable
>>> "NSLOTS" is set to 1).
>>>
>>>  ==================================
>>> Basically trying to replicate in ITKv4 the same registration processes
>>> of ITKv3.
>>>
>>>  Hans
>>>
>>>
>>> ------------------------------
>>> 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.
>>> ------------------------------
>>>  _______________________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Kitware offers ITK Training Courses, for more information visit:
>>> http://kitware.com/products/protraining.php
>>>
>>> Please keep messages on-topic and check the ITK FAQ at:
>>> http://www.itk.org/Wiki/ITK_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.itk.org/mailman/listinfo/insight-developers
>>> _______________________________________________
>>> Community mailing list
>>> Community at itk.org
>>> http://public.kitware.com/cgi-bin/mailman/listinfo/community
>>>
>>>
>>>  _______________________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Kitware offers ITK Training Courses, for more information visit:
>>> http://kitware.com/products/protraining.php
>>>
>>> Please keep messages on-topic and check the ITK FAQ at:
>>> http://www.itk.org/Wiki/ITK_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.itk.org/mailman/listinfo/insight-developers
>>>
>>>
>>>
>>>
>>> ------------------------------
>>> 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.
>>> ------------------------------
>>>
>>>
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Kitware offers ITK Training Courses, for more information visit:
>>> http://kitware.com/products/protraining.php
>>>
>>> Please keep messages on-topic and check the ITK FAQ at:
>>> http://www.itk.org/Wiki/ITK_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.itk.org/mailman/listinfo/insight-developers
>>>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/community/attachments/20140417/8669a42e/attachment-0002.html>
-------------- next part --------------
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html

Kitware offers ITK Training Courses, for more information visit:
http://kitware.com/products/protraining.php

Please keep messages on-topic and check the ITK FAQ at:
http://www.itk.org/Wiki/ITK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.itk.org/mailman/listinfo/insight-developers


More information about the Community mailing list