Skip to content

--skull-strip-fixed-seed should be implicit when --random-seed is set #315

Description

@rolandhaidari

What would you like to see added in this software?

Summary
When a user explicitly sets --random-seed, the expectation is that the pipeline will produce reproducible, deterministic outputs. However, even when parallelism is fully disabled via --omp-nthreads 1 and --nprocs 1, PETPrep still contains a separate source of randomness in the skull-stripping step that is only pinned by the independent flag --skull-strip-fixed-seed. Without knowing about this interaction, a user who sets --random-seed will still get non-deterministic outputs.

Current behavior
Running with --random-seed 42 --omp-nthreads 1 --nprocs 1 does not guarantee identical outputs across runs. The skull-stripping step introduces additional randomness that varies between executions regardless of the seed and regardless of parallelism settings.

Proposed solution

Automatically enable --skull-strip-fixed-seed whenever --random-seed is explicitly provided. This could be implemented as a conditional default in the argument parser, with a note in the documentation explaining the interaction.

Do you have any interest in helping implement the feature?

No

Additional information / screenshots

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions