Mercurial > repos > rv43 > tomo
annotate tomo_setup.py @ 60:52db7707ff48 draft
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
author | rv43 |
---|---|
date | Tue, 16 Aug 2022 21:23:10 +0000 |
parents | feb2a5fc7c76 |
children | 75dd6e15f628 |
rev | line source |
---|---|
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
1 #!/usr/bin/env python3 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
2 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
3 import logging |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
4 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
5 import os |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
6 import sys |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
7 import re |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
8 import yaml |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
9 import argparse |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
10 import numpy as np |
15
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
11 import tracemalloc |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
12 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
13 from tomo import Tomo |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
14 from general import get_trailing_int |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
15 |
15
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
16 #from memory_profiler import profile |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
17 #@profile |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
18 def __main__(): |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
19 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
20 # Parse command line arguments |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
21 parser = argparse.ArgumentParser( |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
22 description='Setup tomography reconstruction') |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
23 parser.add_argument('--inputconfig', |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
24 default='inputconfig.txt', |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
25 help='Input config from tool form') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
26 parser.add_argument('--inputfiles', |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
27 default='inputfiles.txt', |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
28 help='Input file collections') |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
29 parser.add_argument('-c', '--config', |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
30 help='Input config file') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
31 parser.add_argument('--detector', |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
32 help='Detector info (number of rows and columns, and pixel size)') |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
33 parser.add_argument('--num_theta', |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
34 help='Number of theta angles') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
35 parser.add_argument('--theta_range', |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
36 help='Theta range (lower bound, upper bound)') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
37 parser.add_argument('--output_config', |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
38 help='Output config') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
39 parser.add_argument('--output_data', |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
40 help='Preprocessed tomography data') |
49
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
41 parser.add_argument('-l', '--log', |
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
42 type=argparse.FileType('w'), |
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
43 default=sys.stdout, |
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
44 help='Log file') |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
45 args = parser.parse_args() |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
46 |
15
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
47 # Starting memory monitoring |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
48 tracemalloc.start() |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
49 |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
50 # Set basic log configuration |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
51 logging_format = '%(asctime)s : %(levelname)s - %(module)s : %(funcName)s - %(message)s' |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
52 log_level = 'INFO' |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
53 level = getattr(logging, log_level.upper(), None) |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
54 if not isinstance(level, int): |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
55 raise ValueError(f'Invalid log_level: {log_level}') |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
56 logging.basicConfig(format=logging_format, level=level, force=True, |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
57 handlers=[logging.StreamHandler()]) |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
58 |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
59 # Check command line arguments |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
60 logging.info(f'config = {args.config}') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
61 if args.detector is None: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
62 logging.info(f'detector = {args.detector}') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
63 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
64 logging.info(f'detector = {args.detector.split()}') |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
65 logging.info(f'num_theta = {args.num_theta}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
66 if args.theta_range is None: |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
67 logging.info(f'theta_range = {args.theta_range}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
68 else: |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
69 logging.info(f'theta_range = {args.theta_range.split()}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
70 logging.info(f'output_config = {args.output_config}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
71 logging.info(f'output_data = {args.output_data}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
72 logging.info(f'log = {args.log}') |
49
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
73 logging.debug(f'is log stdout? {args.log is sys.stdout}') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
74 if args.detector is not None and len(args.detector.split()) != 3: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
75 raise ValueError(f'Invalid detector: {args.detector}') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
76 if args.num_theta is None or int(args.num_theta) < 1: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
77 raise ValueError(f'Invalid num_theta: {args.num_theta}') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
78 if args.theta_range is not None and len(args.theta_range.split()) != 2: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
79 raise ValueError(f'Invalid theta_range: {args.theta_range}') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
80 num_theta = int(args.num_theta) |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
81 |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
82 # Read and check tool config input |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
83 inputconfig = [] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
84 with open(args.inputconfig) as f: |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
85 inputconfig = [line.strip() for line in f if line.strip() and not line.startswith('#')] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
86 assert(len(inputconfig) >= 6) |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
87 config_type = inputconfig[0] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
88 input_type = inputconfig[1] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
89 num_stack = int(inputconfig[2]) |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
90 stack_types = [x.strip() for x in inputconfig[3].split()] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
91 num_imgs = [int(x.strip()) for x in inputconfig[4].split()] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
92 img_offsets = [int(x.strip()) for x in inputconfig[5].split()] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
93 if config_type == 'config_manual': |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
94 assert(len(inputconfig) == 7) |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
95 ref_heights = [float(x.strip()) for x in inputconfig[6].split()] |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
96 assert(args.detector is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
97 assert(args.theta_range is not None) |
49
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
98 else: |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
99 ref_heights = None |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
100 logging.info(f'config_type = {config_type} {type(config_type)}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
101 logging.info(f'input_type = {input_type} {type(input_type)}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
102 logging.info(f'num_stack = {num_stack} {type(num_stack)}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
103 logging.info(f'stack_types = {stack_types} {type(stack_types)}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
104 logging.info(f'num_imgs = {num_imgs} {type(num_imgs)}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
105 logging.info(f'img_offsets = {img_offsets} {type(img_offsets)}') |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
106 logging.info(f'ref_heights = {ref_heights} {type(ref_heights)}') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
107 if config_type != 'config_file' and config_type != 'config_manual': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
108 raise ValueError('Invalid input config provided.') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
109 if input_type != 'collections' and input_type != 'files': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
110 raise ValueError('Invalid input config provided.') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
111 if len(stack_types) != num_stack: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
112 raise ValueError('Invalid input config provided.') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
113 if len(num_imgs) != num_stack: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
114 raise ValueError('Invalid input config provided.') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
115 if len(img_offsets) != num_stack: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
116 raise ValueError('Invalid input config provided.') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
117 if ref_heights is not None and len(ref_heights) != num_stack: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
118 raise ValueError('Invalid input config provided.') |
49
26f99fdd8d61
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 4f7738d02f4a3fd91373f43937ed311b6fe11a12"
rv43
parents:
41
diff
changeset
|
119 |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
120 # Read input files and collect data files info |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
121 datasets = [] |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
122 with open(args.inputfiles) as f: |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
123 for line in f: |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
124 if not line.strip() or line.startswith('#'): |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
125 continue |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
126 fields = [x.strip() for x in line.split('\t')] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
127 filepath = fields[0] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
128 element_identifier = fields[1] if len(fields) > 1 else fields[0].split('/')[-1] |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
129 datasets.append({'element_identifier' : element_identifier, 'filepath' : filepath}) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
130 print(f'datasets:\n{datasets}') |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
131 logging.debug(f'datasets:\n{datasets}') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
132 if input_type == 'files' and len(datasets) != num_stack: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
133 raise ValueError('Inconsistent number of input files provided.') |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
134 |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
135 # Read and sort data files |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
136 collections = [] |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
137 stack_index = 1 |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
138 for i, dataset in enumerate(datasets): |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
139 if input_type == 'collections': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
140 element_identifier = [x.strip() for x in dataset['element_identifier'].split('_')] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
141 if len(element_identifier) > 1: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
142 name = element_identifier[0] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
143 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
144 name = 'other' |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
145 else: |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
146 if stack_types[i] == 'tdf' or stack_types[i] == 'tbf': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
147 name = stack_types[i] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
148 elif stack_types[i] == 'data': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
149 name = f'set{stack_index}' |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
150 stack_index += 1 |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
151 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
152 raise ValueError('Invalid input config provided.') |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
153 filepath = dataset['filepath'] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
154 if not len(collections): |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
155 collections = [{'name' : name, 'filepaths' : [filepath]}] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
156 else: |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
157 collection = [c for c in collections if c['name'] == name] |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
158 if len(collection): |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
159 collection[0]['filepaths'].append(filepath) |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
160 else: |
59
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
161 collection = {'name' : name, 'filepaths' : [filepath]} |
feb2a5fc7c76
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6"
rv43
parents:
55
diff
changeset
|
162 collections.append(collection) |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
163 print(f'collections:\n{collections}') |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
164 logging.debug(f'collections:\n{collections}') |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
165 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
166 # Instantiate Tomo object |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
167 tomo = Tomo(config_file=args.config, config_out=args.output_config, log_level=log_level, |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
168 log_stream=args.log, galaxy_flag=True) |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
169 if config_type == 'config_file': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
170 if not tomo.is_valid: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
171 raise ValueError('Invalid config file provided.') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
172 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
173 assert(tomo.config is None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
174 tomo.config = {} |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
175 logging.debug(f'config:\n{tomo.config}') |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
176 |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
177 # Set detector inputs |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
178 if config_type == 'config_manual': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
179 detector = args.detector.split() |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
180 tomo.config['detector'] = {'rows' : int(detector[0]), |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
181 'columns' : int(detector[1]), 'pixel_size' : float(detector[2])} |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
182 |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
183 # Set theta inputs |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
184 config_theta_range = tomo.config.get('theta_range') |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
185 if config_theta_range is None: |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
186 tomo.config['theta_range'] = {'num' : num_theta} |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
187 config_theta_range = tomo.config['theta_range'] |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
188 else: |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
189 config_theta_range['num'] = num_theta |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
190 if config_type == 'config_manual': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
191 theta_range = args.theta_range.split() |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
192 config_theta_range['start'] = float(theta_range[0]) |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
193 config_theta_range['end'] = float(theta_range[1]) |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
194 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
195 # Find dark field files |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
196 dark_field = tomo.config.get('dark_field') |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
197 tdf_files = [c['filepaths'] for c in collections if c['name'] == 'tdf'] |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
198 if len(tdf_files) != 1 or len(tdf_files[0]) < 1: |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
199 logging.warning('Unable to obtain dark field files') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
200 if config_type == 'config_file': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
201 assert(dark_field is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
202 assert(dark_field['data_path'] is None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
203 assert(dark_field['img_start'] == -1) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
204 assert(not dark_field['num']) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
205 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
206 tomo.config['dark_field'] = {'data_path' : None, 'img_start' : -1, 'num' : 0} |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
207 tdf_files = [None] |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
208 num_collections = 0 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
209 else: |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
210 if config_type == 'config_file': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
211 assert(dark_field is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
212 assert(dark_field['data_path'] is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
213 assert(dark_field.get('img_start') is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
214 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
215 tomo.config['dark_field'] = {'data_path' : tdf_files[0], 'img_start' : 0} |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
216 dark_field = tomo.config['dark_field'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
217 tdf_index = [i for i,c in enumerate(collections) if c['name'] == 'tdf'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
218 tdf_index_check = [i for i,s in enumerate(stack_types) if s == 'tdf'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
219 if tdf_index != tdf_index_check: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
220 raise ValueError(f'Inconsistent tdf_index ({tdf_index} vs. {tdf_index_check}).') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
221 tdf_index = tdf_index[0] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
222 dark_field['img_offset'] = img_offsets[tdf_index] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
223 dark_field['num'] = num_imgs[tdf_index] |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
224 num_collections = 1 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
225 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
226 # Find bright field files |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
227 bright_field = tomo.config.get('bright_field') |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
228 tbf_files = [c['filepaths'] for c in collections if c['name'] == 'tbf'] |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
229 if len(tbf_files) != 1 or len(tbf_files[0]) < 1: |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
230 exit('Unable to obtain bright field files') |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
231 if config_type == 'config_file': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
232 assert(bright_field is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
233 assert(bright_field['data_path'] is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
234 assert(bright_field.get('img_start') is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
235 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
236 tomo.config['bright_field'] = {'data_path' : tbf_files[0], 'img_start' : 0} |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
237 bright_field = tomo.config['bright_field'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
238 tbf_index = [i for i,c in enumerate(collections) if c['name'] == 'tbf'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
239 tbf_index_check = [i for i,s in enumerate(stack_types) if s == 'tbf'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
240 if tbf_index != tbf_index_check: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
241 raise ValueError(f'Inconsistent tbf_index ({tbf_index} vs. {tbf_index_check}).') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
242 tbf_index = tbf_index[0] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
243 bright_field['img_offset'] = img_offsets[tbf_index] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
244 bright_field['num'] = num_imgs[tbf_index] |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
245 num_collections += 1 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
246 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
247 # Find tomography files |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
248 stack_info = tomo.config.get('stack_info') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
249 if config_type == 'config_file': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
250 assert(stack_info is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
251 if stack_info['num'] != len(collections) - num_collections: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
252 raise ValueError('Inconsistent number of tomography data image sets') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
253 assert(stack_info.get('stacks') is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
254 for stack in stack_info['stacks']: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
255 assert(stack['data_path'] is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
256 assert(stack.get('img_start') is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
257 assert(stack.get('index') is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
258 assert(stack.get('ref_height') is not None) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
259 else: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
260 tomo.config['stack_info'] = {'num' : len(collections) - num_collections, 'stacks' : []} |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
261 stack_info = tomo.config['stack_info'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
262 for i in range(stack_info['num']): |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
263 stack_info['stacks'].append({'img_start' : 0, 'index' : i+1}) |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
264 tomo_stack_files = [] |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
265 for stack in stack_info['stacks']: |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
266 index = stack['index'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
267 tomo_files = [c['filepaths'] for c in collections if c['name'] == f'set{index}'] |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
268 if len(tomo_files) != 1 or len(tomo_files[0]) < 1: |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
269 exit(f'Unable to obtain tomography images for set {index}') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
270 tomo_index = [i for i,c in enumerate(collections) if c['name'] == f'set{index}'] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
271 if len(tomo_index) != 1: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
272 raise ValueError(f'Illegal tomo_index ({tomo_index}).') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
273 tomo_index = tomo_index[0] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
274 stack['img_offset'] = img_offsets[tomo_index] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
275 assert(num_imgs[tomo_index] == -1) |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
276 stack['num'] = num_theta |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
277 if config_type == 'config_manual': |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
278 if len(tomo_files) == 1: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
279 stack['data_path'] = tomo_files[0] |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
280 stack['ref_height'] = ref_heights[tomo_index] |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
281 tomo_stack_files.append(tomo_files[0]) |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
282 num_collections += 1 |
60
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
283 if num_collections != num_stack: |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
284 raise ValueError('Inconsistent number of data image sets') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
285 print(f'config:\n{tomo.config}') |
52db7707ff48
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 9a07ab3099737ee0d99e82739b55048f89c36bc6-dirty"
rv43
parents:
59
diff
changeset
|
286 return |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
287 |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
288 # Preprocess the image files |
15
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
289 galaxy_param = {'tdf_files' : tdf_files[0], 'tbf_files' : tbf_files[0], |
41
ef5c2f7b49ec
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 0d207c80e38a6019595ebe178f5678372b75f3e7"
rv43
parents:
15
diff
changeset
|
290 'tomo_stack_files' : tomo_stack_files, 'output_name' : args.output_data} |
15
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
291 tomo.genTomoStacks(galaxy_param) |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
292 if not tomo.is_valid: |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
293 IOError('Unable to load all required image files.') |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
294 |
15
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
295 # Displaying memory usage |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
296 logging.info(f'Memory usage: {tracemalloc.get_traced_memory()}') |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
297 |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
298 # stopping memory monitoring |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
299 tracemalloc.stop() |
1bcca1f2adb4
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 38c19bf5addbc46f45d598f981bb1a48f7bca691"
rv43
parents:
2
diff
changeset
|
300 |
0
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
301 if __name__ == "__main__": |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
302 __main__() |
cb1b0d757704
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 2da52c7db6def807073a1d437a00e0e2a8e7e72e"
rv43
parents:
diff
changeset
|
303 |