mantidimaging.core.reconstruct.cil_recon module#
- class mantidimaging.core.reconstruct.cil_recon.CILRecon[source]#
Bases:
BaseRecon
- static find_cor(images: ImageStack, slice_idx: int, start_cor: float, recon_params: ReconstructionParameters) float [source]#
- static full(images: ImageStack, cors: list[ScalarCoR], recon_params: ReconstructionParameters, progress: Progress | None = None) ImageStack [source]#
Performs a volume reconstruction using sample data provided as sinograms.
- Parameters:
images – Array of sinogram images
cors – Array of centre of rotation values
proj_angles – Array of projection angles in radians
recon_params – Reconstruction Parameters
progress – Optional progress reporter
- Returns:
3D image data for reconstructed volume
- static get_data(sino: np.ndarray, ag: AcquisitionGeometry, recon_params: ReconstructionParameters, num_subsets: int) BlockDataContainer | AcquisitionData [source]#
- static set_approx_norm(A2d: BlockOperator, acquisition_data: AcquisitionGeometry, image_geometry: ImageGeometry) None [source]#
Use an analytic approximation of the norm of the operator Otherwise this is slow to calculate, this approximation is good to with in 5% When running in debug mode, check the approximation and raise an error if it is bad
- static set_up_TGV_regularisation(image_geometry: ImageGeometry, acquisition_data: AcquisitionData, recon_params: ReconstructionParameters) tuple[BlockOperator, BlockFunction, Function] [source]#
- static set_up_TV_regularisation(image_geometry: ImageGeometry, acquisition_data: AcquisitionData, recon_params: ReconstructionParameters) tuple[BlockOperator, BlockFunction, Function] [source]#
- static single_sino(sino: np.ndarray, cor: ScalarCoR, proj_angles: ProjectionAngles, recon_params: ReconstructionParameters, progress: Progress | None = None) np.ndarray [source]#
Reconstruct a single slice from a single sinogram. Used for the preview and the single slice button. Should return a numpy array,