[Insight-users] VectorImage Registration Metric

Luis Ibanez luis.ibanez at kitware.com
Tue May 6 12:22:15 EDT 2008


Hi Kevin,


There are certainly many ways to proceed here.


a) Compute a metric independently on very chanel and
    then use a weighted average of these metrics to
    produce a total metric.

    As you pointed out, this could be done through
    adaptors. It is unclear, however, how extensive
    the changes should be in the toolkit, and whether
    any of those changes will penalize the performance
    of the existing registrations of scalar images.


or


b) Use pixel values as vectors and defined a
    vector-based metric. E.g. mean squares on
    vector version could be

        ( vm_i - vf_i ) * ( vm_i - vf_i )^T

    were vm_i is the vector of the i-th pixel in the
    moving image and vf_i is the vector in the i-th
    pixel in the fixed image.

    More interesting metrics could be based on
    using a metric tensor in the middel, such as

        ( vm_i - vf_i ) * M * ( vm_i - vf_i )^T

    to allow for cross-talk among different vector
    components.




I'm trying first option (b), but that doesn't mean
that we should rule out option (a) just yet.



    Regards,


       Luis



----------------------
Kevin H. Hobbs wrote:
> On Fri, 2008-05-02 at 15:30 -0400, Luis Ibanez wrote:
> 
>>We just looked at this problem with Karthik and concluded that the
>>best
>>way to proceed will be to customize a couple of ImageMetrics to be
>>compatible with the VectorImages.
> 
> 
> You suggested registering each channel separately.
> 
> Is there any reason why this would not work in general? All of the
> metrics produce a value and derivative. Could a VectorImageToVectorImage
> class have in its template the type of metric, and create an adaptor and
> a metric for each channel and then add the results?  Would the vectors
> have to be averaged instead of added? 
> 
> 


More information about the Insight-users mailing list