]> Creatis software - clitk.git/blobdiff - filters/clitkMedianImageGenericFilter.txx
Corrected bug: the image to image filter type was always displayed as available in...
[clitk.git] / filters / clitkMedianImageGenericFilter.txx
index 81ef36eacf8c82284ea0b35b42b371bed477a845..807c86706cdbaa0213fc32abee551d08e9ddfd31 100644 (file)
@@ -32,15 +32,7 @@ namespace clitk
   template<class args_info_type>
   template<unsigned int Dim>
   void MedianImageGenericFilter<args_info_type>::InitializeImageType() {      
-    ADD_IMAGE_TYPE(Dim, char);
-    ADD_IMAGE_TYPE(Dim, uchar);
-    ADD_IMAGE_TYPE(Dim, short);
-    ADD_IMAGE_TYPE(Dim, int);
-    ADD_IMAGE_TYPE(Dim, float);
-    ADD_IMAGE_TYPE(Dim, double);
-    ADD_IMAGE_TYPE(Dim, unsigned short); 
-
-
+    ADD_DEFAULT_IMAGE_TYPES(Dim);
   }
   //--------------------------------------------------------------------
   
@@ -49,8 +41,7 @@ namespace clitk
   template<class args_info_type>
   void MedianImageGenericFilter<args_info_type>::SetArgsInfo(const args_info_type & a) {
     mArgsInfo=a;
-    SetIOVerbose(mArgsInfo.verbose_flag);
-  
+    SetIOVerbose(mArgsInfo.verbose_flag);  
 
     if (mArgsInfo.input_given) {
       SetInputFilename(mArgsInfo.input_arg);
@@ -59,10 +50,10 @@ namespace clitk
       SetOutputFilename(mArgsInfo.output_arg);
     }
 
-
   }
   //--------------------------------------------------------------------
 
+
   //--------------------------------------------------------------------
   // Update with the number of dimensions and the pixeltype
   //--------------------------------------------------------------------
@@ -71,56 +62,42 @@ namespace clitk
   void 
   MedianImageGenericFilter<args_info_type>::UpdateWithInputImageType()
   {
-     // Reading input
+    // Reading input
     typename InputImageType::Pointer input = this->template GetInput<InputImageType>(0);
-// Typedef
-  typedef typename InputImageType::PixelType PixelType;
+    // Typedef
+    typedef typename InputImageType::PixelType PixelType;
 
-
-
- // typedef itk::Image<PixelType,InputImageType::ImageDimension> OutputImageType;
+    // typedef itk::Image<PixelType,InputImageType::ImageDimension> OutputImageType;
 
- // Main filter
-   
-     typedef itk::Image<uchar, InputImageType::ImageDimension> OutputImageType;
-     typename InputImageType::SizeType indexRadius;
+    // Main filter   
+    typedef itk::Image<PixelType, InputImageType::ImageDimension> OutputImageType;
+    class  InputImageType::SizeType indexRadius;
 
     // Filter
-    typedef itk::MedianImageFilter<InputImageType, OutputImageType> MedianImageFilterType;
-
+    typedef itk::MedianImageFilter<InputImageType, OutputImageType> MedianImageFilterType; 
     typename MedianImageFilterType::Pointer thresholdFilter=MedianImageFilterType::New();
     thresholdFilter->SetInput(input);
 
-
-indexRadius[0]=mArgsInfo.radius_arg[0];
-indexRadius[1]=mArgsInfo.radius_arg[1];
-indexRadius[2]=mArgsInfo.radius_arg[2];
-
-
-
+    indexRadius[0]=mArgsInfo.radius_arg[0];
+    indexRadius[1]=mArgsInfo.radius_arg[1];
+    indexRadius[2]=mArgsInfo.radius_arg[2];
   
-// indexRadius[0] = 1; 
- // indexRadius[1] = 1;
+    // indexRadius[0] = 1; 
   // indexRadius[1] = 1;
 
-thresholdFilter->SetRadius( indexRadius );
-  
+    thresholdFilter->SetRadius( indexRadius );  
 
     typename OutputImageType::Pointer outputImage = thresholdFilter->GetOutput();
- thresholdFilter->Update();
   thresholdFilter->Update();
      
-     // Write/Save results
-    this->template SetNextOutput<OutputImageType>(outputImage);
-
-   
-    }
+    // Write/Save results
+    this->template SetNextOutput<OutputImageType>(outputImage);   
+  }
   
   //--------------------------------------------------------------------
 
 }//end clitk
 
-
  
 #endif //#define clitkMedianImageGenericFilter_txx