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