From cbbc7eae29ffdc0f6281913de94888196630e8a1 Mon Sep 17 00:00:00 2001 From: "marcus.wirtz" Date: Fri, 19 Jul 2024 11:24:38 +0200 Subject: [PATCH] Fix randomness for threading --- monai/transforms/compose.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/monai/transforms/compose.py b/monai/transforms/compose.py index 236d3cc4c51..bf0ae46b805 100644 --- a/monai/transforms/compose.py +++ b/monai/transforms/compose.py @@ -107,7 +107,11 @@ def execute_compose( for _transform in transforms[start:end]: if threading: - _transform = deepcopy(_transform) if isinstance(_transform, ThreadUnsafe) else _transform + if isinstance(_transform, ThreadUnsafe): + if isinstance(_transform, Randomizable): + # update the random state before deepcopy, otherwise there is no randomness + _transform.set_random_state() + _transform = deepcopy(_transform) data = apply_transform( _transform, data, map_items, unpack_items, lazy=lazy, overrides=overrides, log_stats=log_stats )