FFTReconstruction#

class patato.recon.fourier_transform_rec.FFTReconstruction(n_pixels: Sequence[int], field_of_view: Sequence[float], **kwargs)[source]#

Bases: ReconstructionAlgorithm

Circular FFT-based reconstruction.

Based on Python code by L. Kunyansky, University of Arizona. see: M. Eller, P. Hoskins, and L. Kunyansky Microlocally accurate solution of the inverse source problem of thermoacoustic tomography Inverse Problems 36(8), 2020, 094004

__init__(n_pixels: Sequence[int], field_of_view: Sequence[float], **kwargs)#

Methods

__init__(n_pixels, field_of_view, **kwargs)

add_child(child)

get_algorithm_name()

Get the name of the algorithm.

pre_prepare_data(x)

reconstruct(time_series, fs, geometry, ...)

Reconstruct a photoacoustic image from a time series measurement taken from a circular (or circular arc) geometry.

run(time_series, pa_data[, speed_of_sound, ...])

static get_algorithm_name() str[source]#

Get the name of the algorithm.

Returns:

The algorithm name.

Return type:

str

reconstruct(time_series: ndarray, fs: float, geometry: ndarray, n_pixels: Sequence[int], field_of_view: Sequence[float], speed_of_sound: float, **kwargs) ndarray[source]#

Reconstruct a photoacoustic image from a time series measurement taken from a circular (or circular arc) geometry.

Parameters:
  • time_series (np.ndarray) – Time series data, shape (nruns, nwavelengths, ndetector, ntime).

  • fs (float) – Time sampling frequency.

  • geometry (np.ndarray) – The photacoustic detector positions (ndetector, 3), i.e. xyz position. Note this is 2d, so one of these should be 0.

  • n_pixels (Sequence[int]) – Number of pixels in each direction. Note: this algorithm only works for a square array in 2D, so one of these values must be 1.

  • field_of_view (Sequence[float]) – Field of view of the reconstruction grid. Again this must be equal in the two reconstruction axes.

  • speed_of_sound (float) – The speed of sound for the reconstruction.

Returns:

The reconstructed iamge, (nruns, nwavelengths, nz, ny, nx).

Return type:

np.ndarray