[Insight-users] VectorImage Registration Metric

Kevin H. Hobbs hobbsk at ohiou.edu
Thu May 1 13:52:46 EDT 2008


Are there any registration metrics that "work" with instances of
VectorImage for both fixed and moving images?

My (attached) registration program works well with two single channel
images but does not compile when I make the change from Image to
VectorImage :

[kevin at gargon stg_anatomy]$ diff align_rot.cxx align_rot_vect.cxx
1a2
> #include "itkVectorImage.h"
89c90
<       typedef itk::Image< PixelType, Dimension >  ImageType;
---
>       typedef itk::VectorImage< PixelType, Dimension >  ImageType;

The program was made to register two confocal images based on the
overlapping portion. I need it when the size of the cell(die injected
neuron) is larger than the scan area of the microscope, the cell must be
scanned in pieces. Since the stage is moved between pieces the image
origin is useless.

I used VectorImage because we switched to double fills (two cells were
injected with die, excited with two lasers, and scanned with two
sensors) which produce two images in the same space.

I thought itkNormalizedCorrelationImageToImageMetric might still work,
as the arithmatic still makes sense pixel by pixel there are just twice
as many of them.... Alas, I was wrong:

Scanning dependencies of target align_rot_vect
[ 82%] Building CXX object CMakeFiles/align_rot_vect.dir/align_rot_vect.cxx.o
/home/kevin/kitware/Insight/Code/Common/itkConceptChecking.h: In member function ‘void itk::Concept::HasNumericTraits<T>::Constraints::constraints() [with T = itk::VariableLengthVector<unsigned char>]’:
/home/kevin/kitware/Insight/Code/Common/itkConceptChecking.h:585:   instantiated from ‘itk::Concept::HasNumericTraits<itk::VariableLengthVector<unsigned char> >’
/home/kevin/kitware/Insight/Code/BasicFilters/itkGradientRecursiveGaussianImageFilter.h:152:   instantiated from ‘itk::GradientRecursiveGaussianImageFilter<itk::VectorImage<unsigned char, 3u>, itk::Image<itk::CovariantVector<itk::VariableLengthVector<double>, 3u>, 3u> >’
/home/kevin/kitware/Insight/Code/Review/itkOptImageToImageMetric.h:133:   instantiated from ‘itk::ImageToImageMetric<itk::VectorImage<unsigned char, 3u>, itk::VectorImage<unsigned char, 3u> >’
/home/kevin/kitware/Insight/Code/Algorithms/itkNormalizedCorrelationImageToImageMetric.h:44:   instantiated from ‘itk::NormalizedCorrelationImageToImageMetric<itk::VectorImage<unsigned char, 3u>, itk::VectorImage<unsigned char, 3u> >’
/home/kevin/Documents/stg_anatomy/align_rot_vect.cxx:106:   instantiated from here
/home/kevin/kitware/Insight/Code/Common/itkConceptChecking.h:572: error: invalid conversion from ‘const itk::VariableLengthVector<unsigned char> (*)(const itk::VariableLengthVector<unsigned char>&)’ to ‘unsigned int’
/home/kevin/kitware/Insight/Code/Common/itkConceptChecking.h:572: error:   initializing argument 1 of ‘itk::VariableLengthVector<TValueType>::VariableLengthVector(unsigned int) [with TValueType = unsigned char]’
/home/kevin/kitware/Insight/Code/Common/itkConceptChecking.h:585:   instantiated from ‘itk::Concept::HasNumericTraits<itk::VariableLengthVector<unsigned char> >’


and so on for ever.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: align_rot.cxx
Type: text/x-c++src
Size: 13265 bytes
Desc: not available
URL: <http://www.itk.org/pipermail/insight-users/attachments/20080501/c16c7961/attachment.cxx>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://www.itk.org/pipermail/insight-users/attachments/20080501/c16c7961/attachment.pgp>


More information about the Insight-users mailing list