From f888e0ce2450f20363191b070b574b3027e3d623 Mon Sep 17 00:00:00 2001
From: Egor Sobolev <egor.sobolev@xfel.eu>
Date: Thu, 22 Aug 2024 13:05:17 +0200
Subject: [PATCH] Use finite mask looking for minimum value of log-scaled image

---
 src/geomtools/powder/image_tools.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/geomtools/powder/image_tools.py b/src/geomtools/powder/image_tools.py
index a492c87..d27dee0 100644
--- a/src/geomtools/powder/image_tools.py
+++ b/src/geomtools/powder/image_tools.py
@@ -54,8 +54,9 @@ def threshold_gaussian(geom, image, bad_pixels=None, shadow=None,
         gaussian_filter(shadow.astype(float), sigma, axes=(1, 2)) > 0.01)
 
     lg_im = np.log(img)
-    minv = np.min(lg_im[~shadow_ext])
-    lg_im[~np.isfinite(lg_im)] = minv
+    finite_mask = np.isfinite(lg_im)
+    minv = np.min(lg_im[~shadow_ext & finite_mask])
+    lg_im[~finite_mask] = minv
 
     mu = gaussian_filter(lg_im, sigma, axes=(1, 2))
     sig = gaussian_filter(lg_im * lg_im, sigma, axes=(1, 2))
-- 
GitLab