From f392a8a2dfa89bf84ce90061e5494d403d24772c Mon Sep 17 00:00:00 2001 From: Jennings Zhang Date: Thu, 31 Mar 2022 13:47:41 -0400 Subject: [PATCH] Fix output name for .nii.gz inputs --- ...sub-feta037_T2w.nii.png => sub-feta037_T2w.png} | Bin ...sub-feta037_T2w.nii.txt => sub-feta037_T2w.txt} | 0 mri_preview.py | 13 ++++++++++++- 3 files changed, 12 insertions(+), 1 deletion(-) rename examples/out/{sub-feta037_T2w.nii.png => sub-feta037_T2w.png} (100%) rename examples/out/{sub-feta037_T2w.nii.txt => sub-feta037_T2w.txt} (100%) diff --git a/examples/out/sub-feta037_T2w.nii.png b/examples/out/sub-feta037_T2w.png similarity index 100% rename from examples/out/sub-feta037_T2w.nii.png rename to examples/out/sub-feta037_T2w.png diff --git a/examples/out/sub-feta037_T2w.nii.txt b/examples/out/sub-feta037_T2w.txt similarity index 100% rename from examples/out/sub-feta037_T2w.nii.txt rename to examples/out/sub-feta037_T2w.txt diff --git a/mri_preview.py b/mri_preview.py index 104ce26..339a720 100644 --- a/mri_preview.py +++ b/mri_preview.py @@ -103,10 +103,21 @@ def multi_mapper(inputdir: Path, outputdir: Path, file_extensions: str) -> Itera for file_extension in file_extensions.split(','): yield from PathMapper( inputdir, outputdir, - glob=f'**/*{file_extension}', suffix='.out', fail_if_empty=False + glob=f'**/*{file_extension}', + name_mapper=_gz_aware_placeholder_mapper, + fail_if_empty=False ) +def _gz_aware_placeholder_mapper(input_file: Path, output_dir: Path) -> Path: + filename = str(input_file.name) + if filename.endswith('.gz'): + filename = filename[:-3] + '_gz' + if '.' not in filename: + raise ValueError(f'Unrecognized file extension in: {input_file}') + return (output_dir / filename).with_suffix('.out') + + def save_as(img, output: Path, num_voxels: int, total_vol: float, units: str) -> None: if output.name.endswith('.txt'): with output.open('w') as f: