|
1
|
|
|
from savu.plugins.plugin_tools import PluginTools |
|
2
|
|
|
|
|
3
|
|
|
class BaseTomophantomLoaderTools(PluginTools): |
|
4
|
|
|
"""A hdf5 dataset of a specified size is created at runtime using Tomophantom |
|
5
|
|
|
to generate synthetic data , saved with relevant meta_data to a NeXus |
|
6
|
|
|
file, and used as input. It recreates the behaviour of the nxtomo loader |
|
7
|
|
|
but with synthetic data. The input file path passed to Savu will be ignored |
|
8
|
|
|
(use a dummy). |
|
9
|
|
|
""" |
|
10
|
|
|
def define_parameters(self): |
|
11
|
|
|
""" |
|
12
|
|
|
proj_data_dims: |
|
13
|
|
|
visibility: basic |
|
14
|
|
|
dtype: [list[float], list[]] |
|
15
|
|
|
description: A list specifiying the sizes of dimensions of the generated 3D \ |
|
16
|
|
|
projection data in the following format [Angles, DetectorsY, DetectorsX]. |
|
17
|
|
|
default: [] |
|
18
|
|
|
axis_labels: |
|
19
|
|
|
visibility: basic |
|
20
|
|
|
dtype: [list[],list[str]] |
|
21
|
|
|
description: "A list of the axis labels to be associated |
|
22
|
|
|
with each dimension, of the form ['name1.unit1', 'name2.unit2',...]" |
|
23
|
|
|
default: [] |
|
24
|
|
|
tomo_model: |
|
25
|
|
|
visibility: basic |
|
26
|
|
|
dtype: int |
|
27
|
|
|
description: Select a model number from the library (see TomoPhantom dat files). |
|
28
|
|
|
default: 11 |
|
29
|
|
|
patterns: |
|
30
|
|
|
visibility: hidden |
|
31
|
|
|
dtype: [list[],list[str]] |
|
32
|
|
|
description: "A list of data access patterns e.g. |
|
33
|
|
|
[SINOGRAM.0c.1s.2c, PROJECTION.0s.1c.2s], where |
|
34
|
|
|
'c' and 's' represent core and slice dimensions |
|
35
|
|
|
respectively and every dimension must be |
|
36
|
|
|
specified." |
|
37
|
|
|
default: [] |
|
38
|
|
|
""" |
|
39
|
|
|
def citation(self): |
|
40
|
|
|
""" |
|
41
|
|
|
TomoPhantom is a software package to generate 2D-4D |
|
42
|
|
|
analytical phantoms and their Radon transforms for various |
|
43
|
|
|
testing purposes. |
|
44
|
|
|
bibtex: |
|
45
|
|
|
@article{kazantsev2018tomophantom, |
|
46
|
|
|
title={TomoPhantom, a software package to generate 2D-4D analytical phantoms for CT image reconstruction algorithm benchmarks}, |
|
47
|
|
|
author={Kazantsev, Daniil and Pickalov, Valery and Nagella, Srikanth and Pasca, Edoardo and Withers, Philip J}, |
|
48
|
|
|
journal={SoftwareX}, |
|
49
|
|
|
volume={7}, |
|
50
|
|
|
pages={150--155}, |
|
51
|
|
|
year={2018}, |
|
52
|
|
|
publisher={Elsevier} |
|
53
|
|
|
} |
|
54
|
|
|
endnote: |
|
55
|
|
|
%0 Journal Article |
|
56
|
|
|
%T TomoPhantom, a software package to generate 2D-4D analytical phantoms for CT image reconstruction algorithm benchmarks |
|
57
|
|
|
%A Kazantsev, Daniil |
|
58
|
|
|
%A Pickalov, Valery |
|
59
|
|
|
%A Nagella, Srikanth |
|
60
|
|
|
%A Pasca, Edoardo |
|
61
|
|
|
%A Withers, Philip J |
|
62
|
|
|
%J SoftwareX |
|
63
|
|
|
%V 7 |
|
64
|
|
|
%P 150-155 |
|
65
|
|
|
%@ 2352-7110 |
|
66
|
|
|
%D 2018 |
|
67
|
|
|
%I Elsevier |
|
68
|
|
|
|
|
69
|
|
|
doi: "10.1016/j.softx.2018.05.003" |
|
70
|
|
|
""" |
|
71
|
|
|
|