[Insight-users] VectorImage Registration Metric
Luke Bloy
luke.bloy at gmail.com
Wed Feb 10 07:58:35 EST 2010
Hi Lisa and Luis,
I have extensions to ResampleImageFileter and WarpImageFilter that
perform reorientation of the data model. I have to check some licensing
things but I can probably put it up into the sandbox shortly.
Luis, I took your suggestion of using a templated reorienter class. so
these classes work with scalar data as well as tensor and qball data.
Lisa, the reorientation method at the moment only does Finite-strain,
although adding an option to use PPD is somewhere on my list of things
to do :)
There is also an interpolator for DTI which does both euclidean and
log-euclidean interpolation.
-Luke
Luis Ibanez wrote:
> Hi Lisa,
>
> You are right,
> Thanks for pointing this out.
>
>
> Yes, we should move the code into the Sandbox.
> (please check first if Jeffrey has defined any License
> for his version of the code, if so, we have to verify if
> that the license is BSD compatible, before we adopt
> the code).
>
>
> Do you have a NAMICSandbox write account ?
>
> If not, please request one at:
> https://www.kitware.com/Admin/SendPassword.cgi
>
>
> Also, about your question:
>
> Yes, if you want to extend registration to tensor images,
> a similar extension will have to be made. You will also
> need a TensorResampleFilter based on the itkVector
> ResampleFilter.
>
> Please note however that Interpolations for Tensors
> may require different strategies, depending on what
> the Tensor is representing. For example, when the
> Tensor represents some physical property, it may
> be subject to some constrains.
>
> In the NAMIC group there has been some work related
> to Tensor interpolation.
>
> Regarding the actual Metric, the adaptation of the
> GetValue() method is rather easy. You simply
> need to introduce a measure of distance between
> two Tensors (again, probably based on what the
> Tensors are representing).
>
> The more involved piece of work is the computation
> of derivatives.
>
> The Derivative of the metric will involve the computation
> of a third-rank Tensor, which is the result of deriving
> the image Tensors with respect to space.
>
> This could be represented in 3D matrix of N components,
> where N is the dimension of the image Space.
>
> It will be nice to develop this code also in a NAMICSandbox
> directory, so you can benefit from the feedback of
> other groups in the community.
>
>
> Let us know if you need any help,
> we will be happy to assist you.
>
>
> Luis
>
>
>
> -----------------------------------------------------------------------
> On Tue, Feb 9, 2010 at 2:21 PM, Lisa Tang <lisat at sfu.ca> wrote:
>
>> Hello Luis,
>>
>> Thanks for your reply.
>>
>> On closer look, I think these items have already been fixed by Jeffrey Dudas, whose work was discussed in Oct 2009
>> http://old.nabble.com/Question-about-multiResolutionPyramidImageFilter-class-to25839179.html#a25862138
>>
>> For example, the code for gradient calculation has been added here:
>> http://www.seas.upenn.edu/~jtduda/code/itkVectorImageToImageMetric.txx
>> http://www.seas.upenn.edu/~jtduda/code/itkVectorMeanSquaresImageToImageMetric.txx
>>
>> Perhaps the sandbox needs to be updated with his work?
>>
>> A related question is its extension to Tensor images. A needed class/filter that comes to mind is for the purpose of reorienting tensors after the tensor image is transformed. Could you please point us to how we can proceed with this?
>>
>> e.g. should it follow construct of itkVectorResampleImageFilter, but using itkDiffusionTensor3D as input?
>>
>> Thanks again,
>> Lisa
>>
>>
>> ----- "Luis Ibanez" <luis.ibanez at kitware.com> wrote:
>>
>>
>>> From: "Luis Ibanez" <luis.ibanez at kitware.com>
>>> To: "Lisa Tang" <lisat at sfu.ca>
>>> Cc: "Ghassan Hamarneh" <hamarneh at cs.sfu.ca>, "itk" <Insight-users at itk.org>
>>> Sent: Tuesday, 9 February, 2010 10:46:19 GMT -08:00 US/Canada Pacific
>>> Subject: Re: VectorImage Registration Metric
>>>
>>> Hi Lisa,
>>>
>>> Please look at the file:
>>>
>>> NAMICSandBox/VectorImageRegistrationMethod/Source/
>>> itkVectorMeanSquaresImageToImageMetric.txx
>>>
>>> and the lines that have "FIXME" messages as comments.
>>>
>>>
>>> These are the lines where a change from "Scalar", to "Vector"
>>> computation remains to be introduced.
>>>
>>> For example, the "gradient", used to be a Vector in the
>>> computation of a Metric for a Scalar image, but when
>>> doing that computation for a Vector image, the gradient
>>> must be a Matrix, which is composed of the gradients
>>> of each individual component of the vector image.
>>>
>>>
>>> Please let us know if you see any problems with
>>> the suggested implementation,
>>>
>>>
>>> Thanks
>>>
>>>
>>> Luis
>>>
>>>
>>> ------------------------------------------------------------------------------------------
>>> On Fri, Feb 5, 2010 at 2:30 PM, Lisa Tang <lisat at sfu.ca> wrote:
>>>
>>>> Hi Luis,
>>>>
>>>> You mentioned that the version in NAMIC sandbox need "massaging":
>>>>
>>>> "The Gradient of the vector image must be computed as a matrix
>>>> and multiplied with the Transform jacobian in order to produce
>>>> another matrix, that then will be collapsed into a gradient
>>>> vector. (to be done)"
>>>>
>>>> However, I find that both the Sandbox's
>>>>
>>> itkVectorMeanSquaresImageToImageMetric and
>>> itkMeanSquaresImageToImageMetric calculate the metric's derivative
>>> similarly, and so are the calculations of the gradient image in
>>> itkVectormageToImageMetric.
>>>
>>>> Could you please clarify which class were you referring to that
>>>>
>>> requires the above change?
>>>
>>>> Thanks in advance,
>>>> Lisa
>>>>
>>>>
>>>>
>>>>
>>>> ----- "Luis Ibanez" <luis.ibanez at kitware.com> wrote:
>>>>
>>>>
>>>>> From: "Luis Ibanez" <luis.ibanez at kitware.com>
>>>>> To: "Ghassan Hamarneh" <hamarneh at cs.sfu.ca>
>>>>> Cc: "Lisa Tang" <lisat at sfu.ca>
>>>>> Sent: Friday, 5 February, 2010 07:04:30 GMT -08:00 US/Canada
>>>>>
>>> Pacific
>>>
>>>>> Subject: Re: VectorImage Registration Metric
>>>>>
>>>>> Hi Ghassan,
>>>>>
>>>>> I haven't seen much activity in this project for a while,
>>>>> but sometimes research groups make progress without
>>>>> necessarily sharing their day-to-day updates with the
>>>>> community.
>>>>>
>>>>> I would suggest to bring up the topic to the ITK users
>>>>> and developers list.
>>>>>
>>>>> I will be happy to ask the question in the lists if you
>>>>> prefer me to do it.
>>>>>
>>>>>
>>>>> Regards,
>>>>>
>>>>>
>>>>> Luis
>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------
>>>>> On Fri, Feb 5, 2010 at 12:55 AM, Ghassan Hamarneh
>>>>>
>>> <hamarneh at cs.sfu.ca>
>>>
>>>>> wrote:
>>>>>
>>>>>> Hello Luis
>>>>>>
>>>>>> Hope all is well!
>>>>>>
>>>>>> I came across this thread:
>>>>>>
>>>>> http://www.cmake.org/pipermail/insight-users/2008-May/025746.html
>>>>>
>>>>>> We were thinking of contributing something similar (vector
>>>>>>
>>> valued
>>>
>>>>> image registration) to the insight journal as was developed for
>>>>>
>>> our
>>>
>>>>> paper:
>>>>>
>>>>>> [ SMRFI: Shape Matching via ] Registration of Vector-Valued
>>>>>>
>>> Feature
>>>
>>>>> Images
>>>>>
>>>>>> http://www.cs.sfu.ca/~hamarneh/ecopy/cvpr2008.pdf
>>>>>>
>>>>>> Before investing more time on this, we appreciate if you could
>>>>>>
>>> let
>>>
>>>>> us know the status of this effort, is any one working on this,
>>>>>
>>> etc?
>>>
>>>>>> Thanks,
>>>>>>
>>>>>> /Ghassan
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
> _____________________________________
> 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