Skip to content

Commit

Permalink
STYLE: multiply_stack_with_mask -> multiply application
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Ebner committed Jan 31, 2019
1 parent 3bc580b commit 89af2ce
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 67 deletions.
47 changes: 47 additions & 0 deletions niftymic/application/multiply.py
@@ -0,0 +1,47 @@
##
# \file multiply.py
# \brief Script multiply images with each other.
#
# \author Michael Ebner (michael.ebner.14@ucl.ac.uk)
# \date October 2017
#

import os
import SimpleITK as sitk

import pysitk.python_helper as ph

import niftymic.base.data_writer as dw
from niftymic.utilities.input_arparser import InputArgparser


def main():

input_parser = InputArgparser(
description="Multiply images. "
"Pixel type is determined by first given image.",
)

input_parser.add_filenames(required=True)
input_parser.add_output(required=True)
input_parser.add_verbose(default=0)

args = input_parser.parse_args()
input_parser.print_arguments(args)

if len(args.filenames) < 2:
raise IOError("At least two images must be provided")

out_sitk = sitk.ReadImage(args.filenames[0])
for f in args.filenames[1:]:
im_sitk = sitk.Cast(sitk.ReadImage(f), out_sitk.GetPixelIDValue())
out_sitk = out_sitk * im_sitk

dw.DataWriter.write_image(out_sitk, args.output)

if args.verbose:
args.filenames.insert(0, args.output)
ph.show_niftis(args.filenames)

if __name__ == '__main__':
main()
56 changes: 0 additions & 56 deletions niftymic/application/multiply_stack_with_mask.py

This file was deleted.

21 changes: 12 additions & 9 deletions niftymic/application/run_reconstruction_pipeline.py
Expand Up @@ -193,7 +193,7 @@ def main():
dir_motion_correction = os.path.join(
dir_output_recon_subject_space, "motion_correction")
cmd_args = ["niftymic_reconstruct_volume_from_slices"]
cmd_args.append("--filenames %s" % (" ").join(args.filenames_masks))
cmd_args.append("--filenames %s" % " ".join(args.filenames_masks))
cmd_args.append("--dir-input-mc %s" % dir_motion_correction)
cmd_args.append("--output %s" % srr_subject_mask)
cmd_args.append("--reconstruction-space %s" % srr_subject)
Expand Down Expand Up @@ -280,7 +280,7 @@ def main():
dir_motion_correction = os.path.join(
dir_output_recon_template_space, "motion_correction")
cmd_args = ["niftymic_reconstruct_volume_from_slices"]
cmd_args.append("--filenames %s" % (" ").join(args.filenames_masks))
cmd_args.append("--filenames %s" % " ".join(args.filenames_masks))
cmd_args.append("--dir-input-mc %s" % dir_motion_correction)
cmd_args.append("--output %s" % srr_template_mask)
cmd_args.append("--reconstruction-space %s" % srr_template)
Expand All @@ -305,13 +305,16 @@ def main():
raise RuntimeError("Copy of SRR to output directory failed")

# Multiply template mask with reconstruction
cmd_args = []
cmd_args.append("--filename %s" % path_to_output)
cmd_args.append("--gestational-age %d" % gestational_age)
cmd_args.append("--verbose %s" % args.verbose)
cmd_args.append("--dir-input-templates %s " % args.dir_input_templates)
cmd = "niftymic_multiply_stack_with_mask %s" % (
" ").join(cmd_args)
cmd_args = ["niftymic_multiply"]
fnames = [
srr_template,
srr_template_mask,
]
output_masked = "Masked_%s" % output
path_to_output_masked = os.path.join(args.dir_output, output_masked)
cmd_args.append("--filenames %s" % " ".join(fnames))
cmd_args.append("--output %s" % path_to_output_masked)
cmd = (" ").join(cmd_args)
exit_code = ph.execute_command(cmd)
if exit_code != 0:
raise RuntimeError("SRR brain masking failed")
Expand Down
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
import sys

from niftymic.application.multiply_stack_with_mask import main
from niftymic.application.multiply import main

if __name__ == "__main__":
sys.exit(main())
2 changes: 1 addition & 1 deletion setup.py
Expand Up @@ -100,7 +100,7 @@ def install_requires(fname="requirements.txt"):
'niftymic_reconstruct_volume = niftymic.application.reconstruct_volume:main',
'niftymic_reconstruct_volume_from_slices = niftymic.application.reconstruct_volume_from_slices:main',
'niftymic_register_image = niftymic.application.register_image:main',
'niftymic_multiply_stack_with_mask = niftymic.application.multiply_stack_with_mask:main',
'niftymic_multiply = niftymic.application.multiply:main',
'niftymic_run_reconstruction_parameter_study = niftymic.application.run_reconstruction_parameter_study:main',
'niftymic_run_reconstruction_pipeline = niftymic.application.run_reconstruction_pipeline:main',
'niftymic_nifti2dicom = niftymic.application.nifti2dicom:main',
Expand Down

0 comments on commit 89af2ce

Please sign in to comment.