diff options
author | Jakob Jorgensen <jakob.jorgensen@manchester.ac.uk> | 2018-04-20 09:08:56 +0100 |
---|---|---|
committer | Jakob Jorgensen <jakob.jorgensen@manchester.ac.uk> | 2018-04-20 09:08:56 +0100 |
commit | 679268b9582e6de7d780e2b3b482b84905bb7657 (patch) | |
tree | b9496bf7c3c803652e3d9e560991d8b670188847 /Wrappers | |
parent | ada06499b6c2d4932f7f26a2f17d346d8135fb7b (diff) | |
parent | 510cb3e98b30184beab96f908c6105df1e348030 (diff) | |
download | astra-wrapper-679268b9582e6de7d780e2b3b482b84905bb7657.tar.gz astra-wrapper-679268b9582e6de7d780e2b3b482b84905bb7657.tar.bz2 astra-wrapper-679268b9582e6de7d780e2b3b482b84905bb7657.tar.xz astra-wrapper-679268b9582e6de7d780e2b3b482b84905bb7657.zip |
Merge branch 'master' into cleandemos
Diffstat (limited to 'Wrappers')
-rwxr-xr-x[-rw-r--r--] | Wrappers/Python/ccpi/astra/ops.py (renamed from Wrappers/Python/ccpi/astra/astra_ops.py) | 6 | ||||
-rw-r--r-- | Wrappers/Python/ccpi/astra/processors.py (renamed from Wrappers/Python/ccpi/astra/astra_processors.py) | 6 | ||||
-rwxr-xr-x[-rw-r--r--] | Wrappers/Python/ccpi/astra/utils.py (renamed from Wrappers/Python/ccpi/astra/astra_utils.py) | 0 | ||||
-rwxr-xr-x | Wrappers/Python/conda-recipe/meta.yaml | 2 | ||||
-rwxr-xr-x | Wrappers/Python/wip/astra_test.py | 87 | ||||
-rwxr-xr-x | Wrappers/Python/wip/demo_sophiabeads.py | 4 | ||||
-rwxr-xr-x | Wrappers/Python/wip/desktop.ini | 4 | ||||
-rwxr-xr-x | Wrappers/Python/wip/simple_demo_astra.py | 3 | ||||
-rwxr-xr-x | Wrappers/Python/wip/simple_mc_demo.py | 5 |
9 files changed, 14 insertions, 103 deletions
diff --git a/Wrappers/Python/ccpi/astra/astra_ops.py b/Wrappers/Python/ccpi/astra/ops.py index 45b8238..cd0ef9e 100644..100755 --- a/Wrappers/Python/ccpi/astra/astra_ops.py +++ b/Wrappers/Python/ccpi/astra/ops.py @@ -15,12 +15,12 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -from ccpi.reconstruction.ops import Operator +from ccpi.optimisation.ops import Operator import numpy import astra from ccpi.framework import AcquisitionData, ImageData, DataContainer -from ccpi.reconstruction.ops import PowerMethodNonsquare -from ccpi.astra.astra_processors import AstraForwardProjector, AstraBackProjector, \ +from ccpi.optimisation.ops import PowerMethodNonsquare +from ccpi.astra.processors import AstraForwardProjector, AstraBackProjector, \ AstraForwardProjectorMC, AstraBackProjectorMC class AstraProjectorSimple(Operator): diff --git a/Wrappers/Python/ccpi/astra/astra_processors.py b/Wrappers/Python/ccpi/astra/processors.py index fac4551..02c9070 100644 --- a/Wrappers/Python/ccpi/astra/astra_processors.py +++ b/Wrappers/Python/ccpi/astra/processors.py @@ -1,5 +1,5 @@ -from ccpi.framework import DataProcessor, ImageData, AcquisitionData -from ccpi.astra.astra_utils import convert_geometry_to_astra +from ccpi.framework import DataSetProcessor, ImageData, AcquisitionData +from ccpi.astra.utils import convert_geometry_to_astra import astra @@ -202,4 +202,4 @@ class AstraBackProjectorMC(AstraBackProjector): DATA.as_array()[k], self.proj_id) astra.data2d.delete(rec_id) - return IM
\ No newline at end of file + return IM diff --git a/Wrappers/Python/ccpi/astra/astra_utils.py b/Wrappers/Python/ccpi/astra/utils.py index 9f8fe46..9f8fe46 100644..100755 --- a/Wrappers/Python/ccpi/astra/astra_utils.py +++ b/Wrappers/Python/ccpi/astra/utils.py diff --git a/Wrappers/Python/conda-recipe/meta.yaml b/Wrappers/Python/conda-recipe/meta.yaml index 12e83e2..ca91ed0 100755 --- a/Wrappers/Python/conda-recipe/meta.yaml +++ b/Wrappers/Python/conda-recipe/meta.yaml @@ -19,7 +19,7 @@ requirements: - python - numpy - scipy - - ccpi-common + - ccpi-framework - astra-toolbox about: diff --git a/Wrappers/Python/wip/astra_test.py b/Wrappers/Python/wip/astra_test.py deleted file mode 100755 index c0a7359..0000000 --- a/Wrappers/Python/wip/astra_test.py +++ /dev/null @@ -1,87 +0,0 @@ -# -*- coding: utf-8 -*-
-"""
-Created on Wed Mar 7 15:07:16 2018
-
-@author: ofn77899
-"""
-
-# -----------------------------------------------------------------------
-# Copyright: 2010-2018, imec Vision Lab, University of Antwerp
-# 2013-2018, CWI, Amsterdam
-#
-# Contact: astra@astra-toolbox.com
-# Website: http://www.astra-toolbox.com/
-#
-# This file is part of the ASTRA Toolbox.
-#
-#
-# The ASTRA Toolbox is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# The ASTRA Toolbox is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with the ASTRA Toolbox. If not, see <http://www.gnu.org/licenses/>.
-#
-# -----------------------------------------------------------------------
-
-import astra
-import numpy as np
-
-vol_geom = astra.create_vol_geom(256, 256)
-proj_geom = astra.create_proj_geom('parallel', 1.0, 384, np.linspace(0,np.pi,180,False))
-
-# For CPU-based algorithms, a "projector" object specifies the projection
-# model used. In this case, we use the "strip" model.
-proj_id = astra.create_projector('strip', proj_geom, vol_geom)
-
-# Create a sinogram from a phantom
-import scipy.io
-P = scipy.io.loadmat('phantom.mat')['phantom256']
-sinogram_id, sinogram = astra.create_sino(P, proj_id)
-
-import pylab
-pylab.gray()
-pylab.figure(1)
-pylab.imshow(P)
-pylab.figure(2)
-pylab.imshow(sinogram)
-
-# Create a data object for the reconstruction
-rec_id = astra.data2d.create('-vol', vol_geom)
-
-# Set up the parameters for a reconstruction algorithm using the CPU
-# The main difference with the configuration of a GPU algorithm is the
-# extra ProjectorId setting.
-cfg = astra.astra_dict('SIRT')
-cfg['ReconstructionDataId'] = rec_id
-cfg['ProjectionDataId'] = sinogram_id
-cfg['ProjectorId'] = proj_id
-
-# Available algorithms:
-# ART, SART, SIRT, CGLS, FBP
-
-
-# Create the algorithm object from the configuration structure
-alg_id = astra.algorithm.create(cfg)
-
-# Run 20 iterations of the algorithm
-# This will have a runtime in the order of 10 seconds.
-astra.algorithm.run(alg_id, 20)
-
-# Get the result
-rec = astra.data2d.get(rec_id)
-pylab.figure(3)
-pylab.imshow(rec)
-pylab.show()
-
-# Clean up.
-astra.algorithm.delete(alg_id)
-astra.data2d.delete(rec_id)
-astra.data2d.delete(sinogram_id)
-astra.projector.delete(proj_id)
diff --git a/Wrappers/Python/wip/demo_sophiabeads.py b/Wrappers/Python/wip/demo_sophiabeads.py index 8c72964..53a0bf8 100755 --- a/Wrappers/Python/wip/demo_sophiabeads.py +++ b/Wrappers/Python/wip/demo_sophiabeads.py @@ -11,8 +11,8 @@ from ccpi.io.reader import XTEKReader import numpy as np import matplotlib.pyplot as plt from ccpi.framework import ImageGeometry, AcquisitionGeometry, AcquisitionData, ImageData -from ccpi.astra.astra_ops import AstraProjectorSimple -from ccpi.reconstruction.algs import CGLS +from ccpi.astra.ops import AstraProjectorSimple +from ccpi.optimisation.algs import CGLS # Set up reader object and read the data datareader = XTEKReader("REPLACE_THIS_BY_PATH_TO_DATASET/SophiaBeads_256_averaged.xtekct") diff --git a/Wrappers/Python/wip/desktop.ini b/Wrappers/Python/wip/desktop.ini deleted file mode 100755 index bb9f3d6..0000000 --- a/Wrappers/Python/wip/desktop.ini +++ /dev/null @@ -1,4 +0,0 @@ -[ViewState]
-Mode=
-Vid=
-FolderType=Generic
diff --git a/Wrappers/Python/wip/simple_demo_astra.py b/Wrappers/Python/wip/simple_demo_astra.py index 369bc99..b4f0c61 100755 --- a/Wrappers/Python/wip/simple_demo_astra.py +++ b/Wrappers/Python/wip/simple_demo_astra.py @@ -8,7 +8,8 @@ from ccpi.framework import ImageData , ImageGeometry, AcquisitionGeometry from ccpi.optimisation.algs import FISTA, FBPD, CGLS from ccpi.optimisation.funcs import Norm2sq, Norm1, TV2D -from ccpi.astra.astra_ops import AstraProjectorSimple +from ccpi.astra.ops import AstraProjectorSimple + import numpy as np import matplotlib.pyplot as plt diff --git a/Wrappers/Python/wip/simple_mc_demo.py b/Wrappers/Python/wip/simple_mc_demo.py index eb69c88..3b78eb3 100755 --- a/Wrappers/Python/wip/simple_mc_demo.py +++ b/Wrappers/Python/wip/simple_mc_demo.py @@ -8,7 +8,8 @@ from ccpi.framework import ImageData, AcquisitionData, ImageGeometry, AcquisitionGeometry from ccpi.optimisation.algs import FISTA from ccpi.optimisation.funcs import Norm2sq, Norm1 -from ccpi.astra.astra_ops import AstraProjectorMC +from ccpi.astra.ops import AstraProjectorMC + import numpy import matplotlib.pyplot as plt @@ -133,4 +134,4 @@ plt.show() plt.semilogy(criter1) plt.title('Criterion vs iterations, least squares plus 1-norm regu') -plt.show()
\ No newline at end of file +plt.show() |