nabu.reconstruction.filtering_opencl module

class nabu.reconstruction.filtering_opencl.OpenCLSinoFilter(sino_shape, filter_name=None, padding_mode='zeros', extra_options=None, opencl_options=None)[source]

Bases: SinoFilter

set_filter(h_filt, normalize=True)[source]

Set a filter for sinogram filtering.

Parameters:
  • h_filt (numpy.ndarray) – Array containing the filter. Each line of the sinogram will be filtered with this filter. It has to be the Real-to-Complex Fourier Transform of some real filter, padded to 2*sinogram_width.

  • normalize (bool or float, optional) – Whether to normalize (multiply) the filter with pi/num_angles.

filter_sino(sino, output=None)[source]

Perform the sinogram siltering.

Parameters:
  • sino (numpy.ndarray or pyopencl.array) – Input sinogram (2D or 3D)

  • output (pyopencl.array, optional) – Output array.

  • no_output (bool, optional) – If set to True, no copy is be done. The resulting data lies in self.d_sino_padded.