diff --git a/Modules/Filtering/ImageManipulation/include/otbFunctorImageFilter.h b/Modules/Filtering/ImageManipulation/include/otbFunctorImageFilter.h
index 13dbb661b3795072fe599aeb89e764e251238bb1..a4f366445546e79565d5fe05b9e44df18385cb3e 100644
--- a/Modules/Filtering/ImageManipulation/include/otbFunctorImageFilter.h
+++ b/Modules/Filtering/ImageManipulation/include/otbFunctorImageFilter.h
@@ -91,19 +91,12 @@ template <typename ...T> auto GetNumberOfComponentsPerInput(std::tuple<T...> & t
   return GetNumberOfComponentsPerInputImpl(t, std::make_index_sequence<sizeof...(T)>{});
 }
 
-template <class T> auto MakeIterator(itk::SmartPointer<T> img, const itk::ImageRegion<2> & region)
+template <class T> auto MakeIterator(const T * img, const itk::ImageRegion<2> & region)
 {
   itk::ImageRegionConstIterator<T> it(img,region);
   return it;
 }
 
-template <class T> auto MakeIterator(itk::SmartPointer<const T> img, const itk::ImageRegion<2> & region)
-{
-  itk::ImageRegionConstIterator<T> it(img,region);
-  return it;
-}
-
-
 template <class Tuple, size_t...Is> auto MakeIteratorsImpl(const Tuple& t, const itk::ImageRegion<2> & region, std::index_sequence<Is...>)
 {
   return std::make_tuple(MakeIterator(std::get<Is>(t),region)...);
diff --git a/Modules/Filtering/ImageManipulation/test/otbFunctorImageFilter.cxx b/Modules/Filtering/ImageManipulation/test/otbFunctorImageFilter.cxx
index 729155aa0fa1862b19908411f01713e75fa8181a..60290096f52b408fbb68ce9cdfcbba854196fbda 100644
--- a/Modules/Filtering/ImageManipulation/test/otbFunctorImageFilter.cxx
+++ b/Modules/Filtering/ImageManipulation/test/otbFunctorImageFilter.cxx
@@ -155,7 +155,7 @@ template<typename O, typename T> struct BandExtraction
 
 // 1 Image with neighborhood -> 1 Image
 // This Functor computes the mean in neighborhood
-template<typename TOut, typename TIn> struct Median
+template<typename TOut, typename TIn> struct Mean
 {  
   auto operator()(const itk::Neighborhood<TIn> & in) const
   {
@@ -255,11 +255,11 @@ int otbFunctorImageFilter(int itkNotUsed(argc), char * itkNotUsed(argv) [])
   extract->SetVInputs(vimage);
   extract->Update();
   
-  // Test FunctorImageFilter With Median functor
-  using MedianFunctorType = Median<double,double>;
-  auto median = otb::FunctorImageFilter<MedianFunctorType>::New(MedianFunctorType{});
-  median->SetVInputs(image);
-  median->Update();
+  // Test FunctorImageFilter With Mean functor
+  // using MeanFunctorType = Mean<double,double>;
+  // auto median = otb::FunctorImageFilter<MeanFunctorType>::New(MeanFunctorType{});
+  // median->SetVInputs(image);
+  // median->Update();
   
  return EXIT_SUCCESS;
 }