X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=tools%2FclitkInvertVFGenericFilter.txx;h=c5b47179a3dd266814a866c87b4631eaddf2cb73;hb=0421996ed3a4457ce867332574a192d5e214ea31;hp=558b34177d48357acd174f7c6fc14f669e20e428;hpb=42f68068ef3488c8ca2d921b6835d34fe6494d5f;p=clitk.git diff --git a/tools/clitkInvertVFGenericFilter.txx b/tools/clitkInvertVFGenericFilter.txx index 558b341..c5b4717 100644 --- a/tools/clitkInvertVFGenericFilter.txx +++ b/tools/clitkInvertVFGenericFilter.txx @@ -19,6 +19,7 @@ #define clitkInvertVFGenericFilter_txx #include "itkVectorResampleImageFilter.h" +#include "clitkCoeffsToDVF.h" /* ================================================= * @file clitkInvertVFGenericFilter.txx @@ -172,6 +173,31 @@ InvertVFGenericFilter::UpdateWithDimAndPixelType() } case 1: { + // Create the InvertVFFilter + typedef clitk::InvertVFFilter FilterType; + typename FilterType::Pointer filter =FilterType::New(); + if (m_ArgsInfo.like_given) { + filter->SetInput(BLUTCoeffsToDVF(m_InputFileName, m_ArgsInfo.like_arg)); + } + + filter->SetVerbose(m_Verbose); + if (m_ArgsInfo.threads_given) filter->SetNumberOfThreads(m_ArgsInfo.threads_arg); + if (m_ArgsInfo.pad_given) { + PixelType pad; + if (m_ArgsInfo.pad_given != (pad.GetNumberOfComponents()) ) + pad.Fill(m_ArgsInfo.pad_arg[0]); + else + for(unsigned int i=0; iSetThreadSafe(m_ArgsInfo.threadSafe_flag); + filter->Update(); + output=filter->GetOutput(); + + break; + } + + case 2: { // Create the InverseDeformationFieldFilter #if ITK_VERSION_MAJOR >= 4 typedef itk::InverseDisplacementFieldImageFilter FilterType; @@ -190,6 +216,7 @@ InvertVFGenericFilter::UpdateWithDimAndPixelType() break; } + } // Output