diff --git a/Code/BasicFilters/otbMaskMuParserFilter.txx b/Code/BasicFilters/otbMaskMuParserFilter.txx
index 4cdb4a616ce8c0a379c744509345a969132395f3..74092ba4f744eeaae388354a93f53fa6a1be5567 100644
--- a/Code/BasicFilters/otbMaskMuParserFilter.txx
+++ b/Code/BasicFilters/otbMaskMuParserFilter.txx
@@ -75,18 +75,12 @@ const std::map<std::string, double*>& MaskMuParserFilter<TInputImage, TOutputIma
   FunctorPointer tempFunctor = FunctorType::New();
   tempFunctor->SetExpression(m_Expression);
 
-  InputImageConstPointer inputPtr = this->GetInput();
-
-  // Define the iterators
-  itk::ImageConstIterator<TInputImage> inputIt(inputPtr, inputPtr->GetRequestedRegion());
-  inputIt.GoToBegin();
-
   FunctorType& functor = *tempFunctor;
 
   try
     {
-    functor(inputIt.Get());
-    //functor(inputPtr->GetPixel(pixelIndex));
+     functor(this->GetInput()->GetPixel(this->GetInput()->GetBufferedRegion().GetIndex()));
+
     }
   catch (itk::ExceptionObject& err)
     {