[Insight-users] Generating a velocity field from a deformation/displacement field

Tom Vercauteren tom.vercauteren at m4x.org
Thu Sep 2 03:33:35 EDT 2010


Hi Anja,

As an alternative to what Brian proposed, if what you need is a
velocity field which is constant in time and if your displacement
field is diffeomorphic (i.e. using Arsigny et al.'s terminology, you
want the logarithm of the displacement field), then you might rely on
Arsigny et al.'s algorithm
  http://www.inria.fr/sophia/asclepios/Publications/Arsigny/arsigny_mrm_2006.pdf
or on the more computationally efficient one from Bossa at al.
  http://diec.unizar.es/intranet/articulos/uploads/mfca08.pdf.pdf

Pierre Fillard just wrote an initial ITK version of Bossa's algorithm
and we have just integrated it in the following IJ submission:
  http://hdl.handle.net/10380/3060

Hope this helps,
Tom

On Thu, Sep 2, 2010 at 07:57, Anja Ende <anja.ende at googlemail.com> wrote:
> Thanks a lot Brian. I still need to get my head over such
> diffeomorphic schemes but this helps a lot.
>
> I will spend some time checking out ANT in detail.
>
> Many thanks,
> Anja
>
> On 1 September 2010 14:57, brian avants <stnava at gmail.com> wrote:
>> hi anja
>>
>> there are a few ways to look at this .... and a few things to consider
>>
>> 1. a velocity field is just a regularized displacement field that may
>> or may not be constant in time.
>>
>> 2. the required regularity in the field is related to the amount of
>> time and the way in which you will integrate the field
>>
>> 3. the velocity and deformation are related, most generally, through
>> an ODE such as
>>
>> D(x,t) = v(D(x,t),t) .
>>
>> A crude way to convert a deformation to a velocity field and integrate it is :
>>
>> v_0 = 1/n * D , where D is the deformation and w is the v_0 is the
>> constant velocity
>> w_0 = v_0
>> w_{j+1} = w_j( v_0 )   where j runs from 0 to (n-1).
>>
>> w_{n-1} gives you a weak, approximate diffeomorphic version of D if D
>> is regular enough.
>>
>> and this is valid only over small time interval.   ITK probably has
>> some tools for this --- ANTs (google "ants picsl") certainly does.  in
>> itk you can probably apply the WarpImageFilter to an image with vector
>> voxels.  and then add it as in the above algorithm ...
>>
>>
>> brian
>>
>>
>> On Wed, Sep 1, 2010 at 9:30 AM, Anja Ende <anja.ende at googlemail.com> wrote:
>>> Hello everyone,
>>>
>>> Is there an easy way in ITK to generate a velocity field from a
>>> deformation field? I have a displacement field where each voxel
>>> contains a displacement vector (transformed position - initial
>>> position). What would be an easy way to estimate the velocity field? I
>>> am guessing the velocity field would just be the first derivative of
>>> this deformation field. Is that correct?
>>>
>>> Cheers,
>>>
>>> Anja
>>> _____________________________________
>>> 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://www.kitware.com/products/protraining.html
>>>
>>> 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-users
>>>
>>
>>
>>
>> --
>> ß®∫∆π
>>
>
>
>
> --
> Cheers,
>
> Anja
> _____________________________________
> 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://www.kitware.com/products/protraining.html
>
> 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-users
>


More information about the Insight-users mailing list