-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathoptional_scripts.py
More file actions
48 lines (41 loc) · 3.19 KB
/
Copy pathoptional_scripts.py
File metadata and controls
48 lines (41 loc) · 3.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import argparse
from cemrg_heartbuilder.segmentation.scripts import relabel_segmentation, extract_geometry, world_to_index
from cemrg_heartbuilder.meshing.scripts import simple_relabel_mesh
from cemrg_heartbuilder.modeling.scripts import manual_mapping_from_indices
from cemrg_heartbuilder.common.scripts import export
from cemrg_heartbuilder.simulation.scripts import basic_report
def main(args) :
if args.task == 'relabel' or args.task == 'relabel_segmentation':
relabel_segmentation.main(args)
elif args.task == 'geometry' or args.task == 'extract_geometry':
extract_geometry.main(args)
elif args.task == 'world_to_index':
world_to_index.main(args)
elif args.task == 'simple_relabel_mesh':
simple_relabel_mesh.main(args)
elif args.task == 'manual_mapping':
manual_mapping_from_indices.main(args)
elif args.task == 'export':
export.main(args)
elif args.task == 'basic_report':
basic_report.main(args)
else:
parser.print_help()
if __name__ == "__main__":
parser = argparse.ArgumentParser( description="Top-level orchestrator for cardiac processing tasks." )
subparsers = parser.add_subparsers(dest='task', help='Task to run', required=True)
subparsers.add_parser('relabel', parents=[relabel_segmentation.get_parser()], add_help=False, description=relabel_segmentation.get_parser().description)
subparsers.add_parser('geometry', parents=[extract_geometry.get_parser()], add_help=False, description=extract_geometry.get_parser().description)
subparsers.add_parser('world_to_index', parents=[world_to_index.get_parser()], add_help=False, description=world_to_index.get_parser().description)
subparsers.add_parser('simple_relabel_mesh', parents=[simple_relabel_mesh.get_parser()], add_help=False, description=simple_relabel_mesh.get_parser().description)
subparsers.add_parser('manual_mapping', parents=[manual_mapping_from_indices.get_parser()], add_help=False, description=manual_mapping_from_indices.get_parser().description)
subparsers.add_parser('export', parents=[export.get_parser()], add_help=False, description=export.get_parser().description)
subparsers.add_parser('basic_report', parents=[basic_report.get_parser()], add_help=False, description=basic_report.get_parser().description)
args = parser.parse_args()
main(args)
# python optional_scripts.py relabel $THIS_CASE --image-name IMAGE_NAME --json-old PATH_TO_OLD --json-new PATH_TO_NEW --output-name OUTPUT_NAME [-show]
# python optional_scripts.py geometry $THIS_CASE --seg-name SEG_NAME
# python optional_scripts.py simple_relabel_mesh -msh MESH_PATH -old-json OLD_JSON -new-json NEW_JSON [-old-labels OLD_LABELS] [-new-labels NEW_LABELS] [-print]
# python optional_scripts.py manual_mapping_from_indices -input-pts INPUT_PTS -manual-indices MANUAL_INDICES -value-at-idx VALUE_AT_IDX -output-name OUTPUT_NAME
# python optional_scripts.py export -heart-folder HEART_FOLDER -output-folder OUTPUT_FOLDER [-dry-run]
# python optional_scripts.py basic_report --path-to-mesh PATH_TO_MESH --path-to-tags PATH_TO_TAGS --ep-folder EP_FOLDER --mechanics-folder MECHANICS_FOLDER --case-name CASE_NAME [-append-output-to APPEND_OUTPUT_TO]