X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=itk%2FclitkAddRelativePositionConstraintToLabelImageFilter.txx;h=0e3581ee2eeae844b806e15ecd5a3fabbc620897;hb=a425693e91099c63f539999428f3d34764c6491c;hp=ddcad0e16c445959381f5b197d7b94cce3f35ece;hpb=c1f8fb924289d20bfc4b266e24ef52173df58b61;p=clitk.git diff --git a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.txx b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.txx index ddcad0e..0e3581e 100644 --- a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.txx +++ b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.txx @@ -33,11 +33,7 @@ #include #include #include -#if ITK_VERSION_MAJOR >= 4 - #include -#else - #include -#endif +#include // itk [Bloch et al] #include "RelativePositionPropImageFilter.h" @@ -65,6 +61,7 @@ AddRelativePositionConstraintToLabelImageFilter(): FuzzyMapOnlyFlagOff(); FastFlagOff(); SetRadius(2.0); + SetK1(std::acos(-1.0)/2); } //-------------------------------------------------------------------- @@ -387,12 +384,9 @@ GenerateData() relPosFilter->SetInput(working_image); relPosFilter->SetAlpha1(m_Angle1[i]); // xy plane relPosFilter->SetAlpha2(m_Angle2[i]); - relPosFilter->SetK1(M_PI/2.0); // Opening parameter, default = pi/2 - - // relPosFilter->SetFast(true); - // relPosFilter->SetRadius(1); // seems sufficient in this case - + relPosFilter->SetK1(GetK1());// M_PI/2.0); // Opening parameter, default = pi/2 // relPosFilter->SetVerboseProgress(true); + relPosFilter->Update(); relPos = relPosFilter->GetOutput(); @@ -416,15 +410,9 @@ GenerateData() // Divide by the number of relpos if (GetNumberOfAngles() != 1) { -#if ITK_VERSION_MAJOR >= 4 typedef itk::DivideImageFilter DivideFilter; typename DivideFilter::Pointer divideFilter = DivideFilter::New(); divideFilter->SetConstant2(GetNumberOfAngles()); -#else - typedef itk::DivideByConstantImageFilter DivideFilter; - typename DivideFilter::Pointer divideFilter = DivideFilter::New(); - divideFilter->SetConstant(GetNumberOfAngles()); -#endif divideFilter->SetInput(m_FuzzyMap); divideFilter->Update(); m_FuzzyMap = divideFilter->GetOutput(); @@ -444,6 +432,7 @@ GenerateData() resampleFilter->SetGaussianFilteringEnabled(false); resampleFilter->Update(); relPos = m_FuzzyMap = resampleFilter->GetOutput(); + StopCurrentStep(relPos); // Need to put exactly the same size if (relPos->GetLargestPossibleRegion() != input->GetLargestPossibleRegion()) {