-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathREADME.txt
executable file
·244 lines (182 loc) · 9.06 KB
/
README.txt
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
##############################################################################
# #
# NIFTYREC TOMOGRAPHY TOOLBOX #
# #
# http://niftyrec.scienceontheweb.net #
# #
##############################################################################
------------------
1 PACKAGE CONTENTS
------------------
NiftyRec is a software toolbox for Tomographic image reconstruction.
NiftyRec is written in C and computationally intensive functions have a
GPU accelerated version based on NVidia CUDA.
NiftyRec includes a Matlab Toolbox and a Python Package that access
the low level routines, hiding the complexity of the GPU accelerated
algorithms.
##############################################################################
---------------
2 RELEASE NOTES
---------------
-- NiftyRec 1.0 (Rel. Nov 2010)--
* Rotation-based projection and backprojection with depth dependent point spread function
* GPU accelerated version working ok (non accelerated version not working)
* mex-based Matlab Toolbox
* Matlab inline documentation
* Matlab functions for reconstruction
-- NiftyRec 1.1 (Rel. Jan 2011) --
* Python interface
* Documentation: Programmer's manual
-- NiftyRec 1.2 (Rel. Mar 2011) --
* Bug Fixes
-- NiftyRec 1.3 (Rel. May 2011) --
* Embedded NiftyReg
* Demo
-- NiftyRec 1.4 (Rel. Sep 2011) --
* Ray-cating based Projector for Transmission Tomography
* Graphical User Interface
* Documentation update
-- NiftyRec 1.5 (Rel. Jan 2012) --
* Faster projection and back-projection (separable convolution)
* Fast Fisher Information Estimation
* Several bug fixes and improved Matlab demos and inline documentation
-- NiftyRec 1.6 (Rel. May 2012) --
* Command line reconstruction tool for SPECT
* 3D Slicer4 plugin (based on Slicer execution model)
* Independent from Matlab Toolboxes (now only requires basic Matlab install)
* Emission tomography handles non-cubic volumes
* Emission tomography handles 2D
* Simind interface: import and reconstruct Simind simulations
* PET-Sorteo interface: import and reconstruct PET-Sorteo simulations
* Matlab demos for Simind and PET-Sorteo reconstruction
* Barebone CTest based unit testing
* NiftySeg bindings
* Barebone NiftyReg bindings
-- NiftyRec 1.6.5 (Rel. Jan 2013) --
* Fixed bug with multiple rotation angles in emission tomography
-- NiftyRec 1.6.6 (Rel. Feb 2013) --
* Compatible with CUDA 5.0
-- NiftyRec 1.6.7 (Rel. Mar. 2013) --
* Comaptible with CUDA compute capability 3.0
* Fixed bugs in the Python interface
* Fixed bugs in the Python GUI example
* Added simple python example
* Added sample dataset for the Python GUI example
-- NiftyRec 1.6.8 (Rel. Mar. 2013) --
* Fixed compilation issues under Windows
######################################################################################
-----------------------------------
3 INSTALL BINARIES
See the Wiki on the website of
NiftyRec for detailed instructions
-----------------------------------
--Debian Linux
Double click on .deb installer and follow instructions on screen.
--Windows
Double click on the self-extracting installer and follow instructions on screen.
--MAC OS
Drag and drop the drag-and-drop installer in the Applications folder.
######################################################################################
-----------------------------------
4 BUILD AND INSTALL FROM SOURCE
See the Wiki on the website of
NiftyRec for detailed instructions
-----------------------------------
NiftyRec is based on the CMake cross-platform build system.
As a design choice NiftyRec does not have any external dependencies when
compiled with the basic options. Optional dependencies are the CUDA runtime
libraries, Matlab (mex and mx) and the Python interpreter.
CMake simplifies the build process across the supported platforms.
Further details are in the Programming Manual of NiftyRec.
--Linux and MAC
Install ccmake or cmake-gui. Download and uncompress source. cd to the
project main directory, create here a folder 'build', cd to that folder
and run cmake:
..$ mkdir build
..$ cd build
..$ ccmake .. (or cmake-gui ..)
Select options, set the BUILD_TYPE to Release or to Debug and set all the required
paths for additional dependencies if you selected any of the options.
Configure and Generate. Now quit ccmake/cmake-gui and build
..$ make build
In order to create an installation package with CPack run make with option 'package'
..$ make package
In order to install NiftyRec in the system run make with option 'install'
..$ sudo make install
or install the package created with 'make package'.
--Windows
Install cmake. Download and uncompress source. Open the source directory
with Windows Explorer and create here a new folder 'build'. Launch CMake
and open CMakeLists.txt from the main directory of NiftyRec.
Select options, set the BUILD_TYPE to Release or to Debug and set all the required
paths for additional dependencies if you selected any of the options.
Configure and Generate. Browse the 'build' directory and double click
on the Visual Studio project file. Click Compile button in Visual Studio.
Create self-extracting installer by compiling the corresponding target in Visual
Studio.
##############################################################################
-----------------------------------
5 USE
See the Wiki on the website of
NiftyRec for detailed instructions
-----------------------------------
--Matlab Toolbox
Launch Matlab. Add path to NiftyRec Toolbox, e.g.:
>> addpath '/usr/local/niftyrec/matlab'
Or add permanently by clicking on File->Add path.
The path NiftyRec Toolbox is set as an option in CMake.
It defaults to '/usr/local/niftyrec/matlab' in Linux and MAC OS, in Windows C:/ProgramFiles/NiftyRec
Open Matlab help and click on NiftyRec Toolbox
to visualize the documentation of NiftyRec Toolbox. Execute and edit et_osem_demo.m to get started.
--Python Extension
The NiftyRec Python module is installed amongst the site-packages
by the binary installers and by 'make install'.
Open the Python interpreter and import NiftyRec
>>> from NiftyRec import NiftyRec
--C API
Libraries and headers are installed by the binary installer and by 'make install'.
Their location is an option in CMake at build time. It defaults to '/usr/local/lib'
and '/usr/local/include' under Linux and Mac OS and to 'C:/ProgramFiles/NiftyRec/lib'
and 'C:/ProgramFiles/NiftyRec/include' under Windows.
##############################################################################
---------
6 LICENSE
---------
Copyright (c) 2009-2012, University College London, United-Kingdom
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification,
are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
Neither the name of the University College London nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.
##############################################################################
---------
7 CONTACT
---------
Please contact Stefano Pedemonte ([email protected])
##############################################################################
------------
8 REFERENCES
------------
[1] S.Pedemonte, A.Bousse, K.Erlandsson, M.Modat, S.Arridge, B.F.Hutton,
S.Ourselin. GPU Accelerated Rotation-Based Emission Tomography Reconstruction.
NSS-MIC 2010.
##############################################################################
##############################################################################