From bd6bed24ee5a9f0319542e936fb513f12d115e34 Mon Sep 17 00:00:00 2001 From: mirjagranfors Date: Tue, 8 Sep 2026 15:49:24 +0200 Subject: [PATCH] poisson noise fix --- deeptrack/optical/noises.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/deeptrack/optical/noises.py b/deeptrack/optical/noises.py index a5cdfef1..cc9d4d66 100644 --- a/deeptrack/optical/noises.py +++ b/deeptrack/optical/noises.py @@ -148,7 +148,10 @@ def _process_and_get( # Lazy import avoids circular dependency try: - from deeptrack.optical.scatterers import ScatteredVolume, ScatteredField + from deeptrack.optical.scatterers import ( + ScatteredVolume, + ScatteredField, + ) scattered_types = (ScatteredVolume, ScatteredField) except Exception: @@ -597,9 +600,12 @@ def get( peak = torch.clamp(peak, min=1e-12) rescale = (snr / peak) ** 2 + lower_bound = torch.tensor( + 1e-10, dtype=rescale.dtype, device=rescale.device + ) rescale = torch.clamp( rescale, - min=1e-10, + min=lower_bound, max=max_val / torch.clamp(torch.abs(image_max), min=1e-12), )