From 9490f7de98ff6fa690f17f085e2112083e5e98c5 Mon Sep 17 00:00:00 2001 From: Stephan Seitz <stephan.seitz@fau.de> Date: Wed, 26 Feb 2020 10:51:26 +0100 Subject: [PATCH] Make ConeBeamProjector.from_conrad_config less hacky --- src/pyronn_torch/conebeam.py | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/pyronn_torch/conebeam.py b/src/pyronn_torch/conebeam.py index 7fb1204..ffc2479 100644 --- a/src/pyronn_torch/conebeam.py +++ b/src/pyronn_torch/conebeam.py @@ -97,20 +97,25 @@ class ConeBeamProjector: @classmethod def from_conrad_config(cls): - obj = cls(*([None]*7)) import pyconrad.autoinit import pyconrad.config - obj._volume_shape = pyconrad.config.get_reco_shape() - obj._volume_spacing = pyconrad.config.get_reco_spacing() - obj._volume_origin = pyconrad.config.get_reco_origin() - obj._projection_shape = pyconrad.config.get_sino_shape() - obj._projection_spacing = [pyconrad.config.get_geometry().getPixelDimensionY(), - pyconrad.config.get_geometry().getPixelDimensionX()] - obj._projection_origin = [pyconrad.config.get_geometry().getDetectorOffsetV(), - pyconrad.config.get_geometry().getDetectorOffsetU()] - obj._projection_matrices_numpy = pyconrad.config.get_projection_matrices() - - obj._calc_inverse_matrices() + volume_shape = pyconrad.config.get_reco_shape() + volume_spacing = pyconrad.config.get_reco_spacing() + volume_origin = pyconrad.config.get_reco_origin() + projection_shape = pyconrad.config.get_sino_shape() + projection_spacing = [pyconrad.config.get_geometry().getPixelDimensionY(), + pyconrad.config.get_geometry().getPixelDimensionX()] + projection_origin = [pyconrad.config.get_geometry().getDetectorOffsetV(), + pyconrad.config.get_geometry().getDetectorOffsetU()] + projection_matrices = pyconrad.config.get_projection_matrices() + + obj = cls(volume_shape, + volume_spacing, + volume_origin, + projection_shape, + projection_spacing, + projection_origin, + projection_matrices) return obj def new_volume_tensor(self, requires_grad=False): -- GitLab