[ITK-users] Saving deformation field in vector container

Matt McCormick matt.mccormick at kitware.com
Tue Sep 29 17:23:11 EDT 2015


Hi geetha,

->Reserve() [1] must be called on the VectorContainer, and the index
should start from 0.  Here is a working example:

  https://gist.github.com/2e475ad1e05c2a2a7ffb

HTH,
Matt

[1] http://www.itk.org/Doxygen/html/classitk_1_1VectorContainer.html#a0a8c1d4d56c47166f012caa0269aa0a0

On Tue, Sep 29, 2015 at 2:31 AM, geetha <s120049 at e.ntu.edu.sg> wrote:
> Hi Matt,
>
> Here's a short compilable code for it. The deformation field I'm using can be accessed from here<https://www.dropbox.com/s/3lt059gssisg72m/deformation%20field.rar?dl=0>. It fails when updating the container.
>
>
> #include <itkVectorContainer.h>
> #include "itkImage.h"
> #include "itkImageFileReader.h"
>
> const unsigned int                          Dimension = 3;
> typedef double CoordinateRepType;
> typedef itk::Vector< float, Dimension >      VectorType;
> typedef itk::Image< VectorType, Dimension >  DisplacementFieldType;
> typedef itk::VectorContainer<double,DisplacementFieldType::Pointer>DFTransformContainerType;
>
> int main( int argc, char *argv[] )
> {
>        int inputId = 1;
>        typedef itk::ImageFileReader< DisplacementFieldType >  fieldReaderType;
>        DFTransformContainerType::Pointer DeffieldContainer = DFTransformContainerType::New() ;
>        fieldReaderType::Pointer deffield = fieldReaderType::New();
>        deffield->SetFileName(  argv[1]);
>        deffield->Update();
>
>        std::cout<<"Updating container!"<<std::endl;
>               try
>               {
>                      DeffieldContainer->SetElement( inputId++ , deffield->GetOutput() ); //Fails here
>               }
>               catch (itk::ExceptionObject &excp)
>               {
>               std::cerr << "Exception thrown while updating container" << std::endl;
>               std::cerr << excp << std::endl;
>               return EXIT_FAILURE;
>               }
>        std::cout<<"DONE!"<<std::endl;
>
> }
>
>
> Best Regards,
> Geetha Soujanya
>
>
>
>
>
> -----
> Thanks,
> Geetha
> --
> View this message in context: http://itk-insight-users.2283740.n2.nabble.com/Saving-deformation-field-in-vector-container-tp7587905p7587931.html
> Sent from the ITK Insight Users mailing list archive at Nabble.com.
> _____________________________________
> 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.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://public.kitware.com/mailman/listinfo/insight-users


More information about the Insight-users mailing list