simind-python-connector 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. simind_python_connector/__init__.py +72 -0
  2. simind_python_connector/backends/__init__.py +480 -0
  3. simind_python_connector/backends/base.py +387 -0
  4. simind_python_connector/backends/sirf_backend.py +309 -0
  5. simind_python_connector/backends/stir_backend.py +395 -0
  6. simind_python_connector/builders/__init__.py +19 -0
  7. simind_python_connector/builders/acquisition_builder.py +526 -0
  8. simind_python_connector/builders/image_builder.py +217 -0
  9. simind_python_connector/configs/AnyScan.yaml +420 -0
  10. simind_python_connector/configs/Discovery670.yaml +412 -0
  11. simind_python_connector/configs/Example.yaml +420 -0
  12. simind_python_connector/configs/MLD001_SCAN0.yaml +426 -0
  13. simind_python_connector/configs/__init__.py +41 -0
  14. simind_python_connector/configs/input.smc +51 -0
  15. simind_python_connector/connectors/__init__.py +24 -0
  16. simind_python_connector/connectors/_spacing.py +69 -0
  17. simind_python_connector/connectors/base.py +40 -0
  18. simind_python_connector/connectors/python_connector.py +355 -0
  19. simind_python_connector/connectors/pytomography_adaptor.py +263 -0
  20. simind_python_connector/connectors/sirf_adaptor.py +164 -0
  21. simind_python_connector/connectors/stir_adaptor.py +164 -0
  22. simind_python_connector/converters/__init__.py +16 -0
  23. simind_python_connector/converters/attenuation.py +367 -0
  24. simind_python_connector/converters/dicom_to_stir.py +3 -0
  25. simind_python_connector/converters/simind_to_stir.py +769 -0
  26. simind_python_connector/core/__init__.py +7 -0
  27. simind_python_connector/core/config.py +939 -0
  28. simind_python_connector/core/executor.py +96 -0
  29. simind_python_connector/core/types.py +203 -0
  30. simind_python_connector/data/Schneider2000.json +222 -0
  31. simind_python_connector/data/__init__.py +25 -0
  32. simind_python_connector/data/bone.atn +187 -0
  33. simind_python_connector/data/h2o.atn +92 -0
  34. simind_python_connector/utils/__init__.py +120 -0
  35. simind_python_connector/utils/backend_access.py +121 -0
  36. simind_python_connector/utils/import_helpers.py +74 -0
  37. simind_python_connector/utils/interfile_numpy.py +195 -0
  38. simind_python_connector/utils/interfile_parser.py +175 -0
  39. simind_python_connector/utils/io_utils.py +14 -0
  40. simind_python_connector/utils/simind_utils.py +70 -0
  41. simind_python_connector/utils/sirf_stir_utils.py +194 -0
  42. simind_python_connector/utils/stir_utils.py +485 -0
  43. simind_python_connector-1.0.0.dist-info/METADATA +274 -0
  44. simind_python_connector-1.0.0.dist-info/RECORD +47 -0
  45. simind_python_connector-1.0.0.dist-info/WHEEL +5 -0
  46. simind_python_connector-1.0.0.dist-info/licenses/LICENSE +195 -0
  47. simind_python_connector-1.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,412 @@
1
+ metadata:
2
+ comment: MLD001_SCAN0
3
+ source_file: /home/sam/working/STIR_users_MIC2023/input/MLD001_SCAN0.smc
4
+ parameters:
5
+ source:
6
+ photon_energy:
7
+ index: 1
8
+ value: 75.0
9
+ description: Photon energy in keV
10
+ source_half_length:
11
+ index: 2
12
+ value: 28.267
13
+ description: Source half-length in cm
14
+ source_half_width:
15
+ index: 3
16
+ value: 28.267
17
+ description: Source half-width in cm
18
+ source_half_height:
19
+ index: 4
20
+ value: 28.267
21
+ description: Source half-height in cm
22
+ source_type:
23
+ index: 15
24
+ value: -1.0
25
+ description: Source type code
26
+ shift_source_x:
27
+ index: 16
28
+ value: 0.0
29
+ description: Shift of source in x-direction (cm)
30
+ shift_source_y:
31
+ index: 17
32
+ value: 0.0
33
+ description: Shift of source in y-direction (cm)
34
+ shift_source_z:
35
+ index: 18
36
+ value: 0.0
37
+ description: Shift of source in z-direction (cm)
38
+ photon_direction:
39
+ index: 19
40
+ value: 2.0
41
+ description: Photon direction code
42
+ emitted_photons_per_decay:
43
+ index: 24
44
+ value: 0.879
45
+ description: Number of photons emitted per decay
46
+ source_activity:
47
+ index: 25
48
+ value: 21238.0
49
+ description: Source activity in MBq
50
+ number_photon_histories:
51
+ index: 26
52
+ value: 1.0
53
+ description: Number of photon histories to simulate
54
+ matrix_size_source_map_i:
55
+ index: 79
56
+ value: 128.0
57
+ description: Matrix size for source map (i-direction)
58
+ matrix_size_source_map_j:
59
+ index: 82
60
+ value: 0.0
61
+ description: Matrix size for source map (j-direction)
62
+ phantom:
63
+ phantom_half_length:
64
+ index: 5
65
+ value: 28.267
66
+ description: Phantom half-length in cm
67
+ phantom_half_width:
68
+ index: 6
69
+ value: 28.267
70
+ description: Phantom half-width in cm
71
+ phantom_half_height:
72
+ index: 7
73
+ value: 28.267
74
+ description: Phantom half-height in cm
75
+ phantom_type:
76
+ index: 14
77
+ value: -1.0
78
+ description: Phantom type code
79
+ pixel_size_density_images:
80
+ index: 31
81
+ value: 0.44167
82
+ description: Pixel size for density images (cm)
83
+ orientation_density_images:
84
+ index: 32
85
+ value: 0.0
86
+ description: Orientation of density images
87
+ first_image_density_images:
88
+ index: 33
89
+ value: 1.0
90
+ description: First image number for density images
91
+ number_density_images:
92
+ index: 34
93
+ value: 128.0
94
+ description: Number of density images
95
+ density_limit_border:
96
+ index: 35
97
+ value: 0.01
98
+ description: Density limit at border
99
+ shift_density_images_y:
100
+ index: 36
101
+ value: 0.0
102
+ description: Shift of density images in y-direction (cm)
103
+ shift_density_images_z:
104
+ index: 37
105
+ value: 0.0
106
+ description: Shift of density images in z-direction (cm)
107
+ shift_density_images_x:
108
+ index: 39
109
+ value: 0.0
110
+ description: Shift of density images in x-direction (cm)
111
+ density_threshold_soft_bone:
112
+ index: 40
113
+ value: 0.0
114
+ description: Density threshold for soft bone
115
+ code_definitions_zubal_phantom:
116
+ index: 45
117
+ value: 1.0
118
+ description: Code definitions for Zubal phantom
119
+ matrix_size_density_map_i:
120
+ index: 78
121
+ value: 128.0
122
+ description: Matrix size for density map (i-direction)
123
+ matrix_size_density_map_j:
124
+ index: 81
125
+ value: 0.0
126
+ description: Matrix size for density map (j-direction)
127
+ detector_crystal:
128
+ crystal_half_length_radius:
129
+ index: 8
130
+ value: 20.0
131
+ description: Crystal half-length/radius in cm
132
+ crystal_thickness:
133
+ index: 9
134
+ value: 0.9525
135
+ description: Crystal thickness in cm
136
+ crystal_half_width:
137
+ index: 10
138
+ value: 27.0
139
+ description: Crystal half-width in cm
140
+ height_to_detector_surface:
141
+ index: 12
142
+ value: 20.0
143
+ description: Height to detector surface (cm)
144
+ cover_thickness:
145
+ index: 13
146
+ value: 0.1
147
+ description: Cover thickness (cm)
148
+ energy_resolution:
149
+ index: 22
150
+ value: 9.1
151
+ description: Energy resolution (%)
152
+ intrinsic_resolution:
153
+ index: 23
154
+ value: 0.34
155
+ description: Intrinsic resolution (cm)
156
+ voltage:
157
+ index: 91
158
+ value: 0.0
159
+ description: Applied voltage (V)
160
+ mobility_life_electrons:
161
+ index: 92
162
+ value: 0.0
163
+ description: Mobility-life product for electrons
164
+ mobility_life_holes:
165
+ index: 93
166
+ value: 0.0
167
+ description: Mobility-life product for holes
168
+ contact_pad_size:
169
+ index: 94
170
+ value: 0.0
171
+ description: Contact pad size (cm)
172
+ anode_element_pitch:
173
+ index: 95
174
+ value: 0.0
175
+ description: Anode element pitch (cm)
176
+ exponential_decay_constant_tau:
177
+ index: 96
178
+ value: 0.0
179
+ description: Exponential decay constant tau
180
+ components_hecht_formula:
181
+ index: 97
182
+ value: 0.0
183
+ description: Components for Hecht formula
184
+ energy_resolution_model:
185
+ index: 98
186
+ value: 0.0
187
+ description: Energy resolution model code
188
+ cloud_mobility:
189
+ index: 99
190
+ value: 0.0
191
+ description: Cloud mobility parameter
192
+ detector_array_size_i:
193
+ index: 100
194
+ value: 0.0
195
+ description: Detector array size (i-direction)
196
+ detector_array_size_j:
197
+ index: 101
198
+ value: 0.0
199
+ description: Detector array size (j-direction)
200
+ collimator:
201
+ hole_size_x:
202
+ index: 46
203
+ value: 0.25
204
+ description: Collimator hole size in x-direction (cm)
205
+ hole_size_y:
206
+ index: 47
207
+ value: 0.28868
208
+ description: Collimator hole size in y-direction (cm)
209
+ distance_between_holes_x:
210
+ index: 48
211
+ value: 0.03
212
+ description: Distance between holes in x-direction (cm)
213
+ distance_between_holes_y:
214
+ index: 49
215
+ value: 0.1963
216
+ description: Distance between holes in y-direction (cm)
217
+ shift_center_hole_x:
218
+ index: 50
219
+ value: 0.14
220
+ description: Shift of center hole in x-direction (cm)
221
+ shift_center_hole_y:
222
+ index: 51
223
+ value: 0.24249
224
+ description: Shift of center hole in y-direction (cm)
225
+ collimator_thickness:
226
+ index: 52
227
+ value: 4.1
228
+ description: Collimator thickness (cm)
229
+ collimator_routine:
230
+ index: 53
231
+ value: 0.0
232
+ description: Collimator routine code
233
+ hole_shape:
234
+ index: 54
235
+ value: 3.0
236
+ description: Hole shape code
237
+ distance_collimator_detector:
238
+ index: 56
239
+ value: 0.0
240
+ description: Distance from collimator to detector (cm)
241
+ random_collimator_movement:
242
+ index: 59
243
+ value: 0.0
244
+ description: Random collimator movement parameter
245
+ energy_analysis:
246
+ upper_window_threshold:
247
+ index: 20
248
+ value: -100.0
249
+ description: Upper energy window threshold (keV)
250
+ lower_window_threshold:
251
+ index: 21
252
+ value: -100.0
253
+ description: Lower energy window threshold (keV)
254
+ kev_per_channel:
255
+ index: 27
256
+ value: 0.5
257
+ description: keV per channel
258
+ energy_spectra_channels:
259
+ index: 80
260
+ value: 512.0
261
+ description: Number of energy spectra channels
262
+ cutoff_energy_terminate_photon_history:
263
+ index: 83
264
+ value: 0.0
265
+ description: Cutoff energy to terminate photon history (keV)
266
+ spect_imaging:
267
+ pixel_size_simulated_image:
268
+ index: 28
269
+ value: 0.44167
270
+ description: Pixel size for simulated images (cm)
271
+ spect_no_projections:
272
+ index: 29
273
+ value: 120.0
274
+ description: Number of SPECT projections
275
+ spect_rotation:
276
+ index: 30
277
+ value: 2.0
278
+ description: SPECT rotation parameter
279
+ spect_starting_angle:
280
+ index: 41
281
+ value: 0.0
282
+ description: SPECT starting angle (degrees)
283
+ spect_orbital_rotation_fraction:
284
+ index: 42
285
+ value: -1.0
286
+ description: SPECT orbital rotation fraction
287
+ camera_offset_x:
288
+ index: 43
289
+ value: 0.0
290
+ description: Camera offset in x-direction (cm)
291
+ camera_offset_y:
292
+ index: 44
293
+ value: 0.0
294
+ description: Camera offset in y-direction (cm)
295
+ matrix_size_image_i:
296
+ index: 76
297
+ value: 128.0
298
+ description: Matrix size for images (i-direction)
299
+ matrix_size_image_j:
300
+ index: 77
301
+ value: 128.0
302
+ description: Matrix size for images (j-direction)
303
+ simulation_control:
304
+ step_size_photon_path_simulation:
305
+ index: 38
306
+ value: 0.44167
307
+ description: Step size for photon path simulation (cm)
308
+ type:
309
+ index: 55
310
+ value: 0.0
311
+ description: General type parameter
312
+ scoring_routine:
313
+ index: 84
314
+ value: 1.0
315
+ description: Scoring routine code
316
+ csv_file_content:
317
+ index: 85
318
+ value: 0.0
319
+ description: CSV file content parameter
320
+ unused_parameters:
321
+ unused_parameter_1:
322
+ index: 57
323
+ value: 0.0
324
+ description: Unused parameter 1
325
+ unused_parameter_2:
326
+ index: 58
327
+ value: 0.0
328
+ description: Unused parameter 2
329
+ unused_parameter_3:
330
+ index: 60
331
+ value: 0.0
332
+ description: Unused parameter 3
333
+ simulation_flags:
334
+ write_results_to_screen:
335
+ index: 1
336
+ enabled: true
337
+ write_images_to_files:
338
+ index: 2
339
+ enabled: false
340
+ write_pulse_height_distribution_to_file:
341
+ index: 3
342
+ enabled: true
343
+ include_collimator:
344
+ index: 4
345
+ enabled: true
346
+ simulate_spect_study:
347
+ index: 5
348
+ enabled: true
349
+ include_characteristic_xray_emissions:
350
+ index: 6
351
+ enabled: true
352
+ include_backscattering_material:
353
+ index: 7
354
+ enabled: true
355
+ use_random_seed_value:
356
+ index: 8
357
+ enabled: true
358
+ currently_not_in_use:
359
+ index: 9
360
+ enabled: false
361
+ include_interactions_in_cover:
362
+ index: 10
363
+ enabled: true
364
+ include_interactions_in_phantom:
365
+ index: 11
366
+ enabled: true
367
+ include_energy_resolution_in_crystal:
368
+ index: 12
369
+ enabled: true
370
+ include_forced_interactions_in_crystal:
371
+ index: 13
372
+ enabled: false
373
+ write_interfile_header_files:
374
+ index: 14
375
+ enabled: true
376
+ save_aligned_phantom_images:
377
+ index: 15
378
+ enabled: false
379
+ text_variables:
380
+ 1: ge-megp
381
+ 2: none
382
+ 3: none
383
+ 4: none
384
+ 5: none
385
+ 6: none
386
+ 7: none
387
+ 8: none
388
+ data_files:
389
+ phantom_soft_tissue:
390
+ index: 1
391
+ filepath: h2o
392
+ phantom_bone:
393
+ index: 2
394
+ filepath: bone
395
+ cover_material:
396
+ index: 3
397
+ filepath: al
398
+ crystal_material:
399
+ index: 4
400
+ filepath: nai
401
+ image_file_phantom:
402
+ index: 5
403
+ filepath: tmp_density
404
+ image_file_source:
405
+ index: 6
406
+ filepath: tmp_source
407
+ backscatter_material:
408
+ index: 7
409
+ filepath: pmt
410
+ energy_resolution_file:
411
+ index: 8
412
+ filepath: none