From c5bd59ea4616d727ce4bf6e5aacdab0e4adb549d Mon Sep 17 00:00:00 2001
From: Manuel Grizonnet <manuel.grizonnet@orfeo-toolbox.org>
Date: Tue, 20 Nov 2012 16:24:34 -0300
Subject: [PATCH] BUG: avoid comparaison with zero in double precision

---
 Code/BasicFilters/otbLeeImageFilter.txx | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Code/BasicFilters/otbLeeImageFilter.txx b/Code/BasicFilters/otbLeeImageFilter.txx
index d29b731d40..de2756a1e1 100644
--- a/Code/BasicFilters/otbLeeImageFilter.txx
+++ b/Code/BasicFilters/otbLeeImageFilter.txx
@@ -152,7 +152,9 @@ void LeeImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
       E_I   = sum / static_cast<double>(neighborhoodSize);
       Var_I = sum2 / static_cast<double>(neighborhoodSize) - E_I * E_I;
       I = static_cast<double>(bit.GetCenterPixel());
-      if (E_I == 0)
+
+      const double epsilon = 0.0000000001;
+      if (vcl_abs(E_I) < epsilon)
         {
         dPixel = itk::NumericTraits<OutputPixelType>::Zero;
         }
-- 
GitLab