-
- //Read the deformation field
- typedef itk::ImageFileReader<DeformationFieldType> DeformationFieldReaderType;
- typename DeformationFieldReaderType::Pointer deformationFieldReader= DeformationFieldReaderType::New();
- deformationFieldReader->SetFileName(m_ArgsInfo.vf_arg);
- deformationFieldReader->Update();
- typename DeformationFieldType::Pointer deformationField =deformationFieldReader->GetOutput();
+
+ typename DeformationFieldType::Pointer deformationField;
+ if (m_ArgsInfo.coeff_given) {
+ typedef ConvertBLUTCoeffsToVFFilter<DeformationFieldType> FilterType;
+ typename FilterType::Pointer filter = FilterType::New();
+ filter->SetInputFileName(m_ArgsInfo.coeff_arg);
+ filter->SetLikeFileName(m_InputFileName);
+ filter->SetVerbose(m_Verbose);
+ filter->Update();
+ deformationField = filter->GetOutput();
+ }
+ else {
+ //Read the deformation field
+ typedef itk::ImageFileReader<DeformationFieldType> DeformationFieldReaderType;
+ typename DeformationFieldReaderType::Pointer deformationFieldReader= DeformationFieldReaderType::New();
+ deformationFieldReader->SetFileName(m_ArgsInfo.vf_arg);
+ deformationFieldReader->Update();
+ deformationField =deformationFieldReader->GetOutput();
+ }