Zernike#

class deeptrack.aberrations.Zernike(n: int | Callable[[...], int], m: int | Callable[[...], int], coefficient: float | Callable[[...], float] = 1, **kwargs)#

Bases: Aberration

Introduces a Zernike phase aberration.

Calculates the Zernike polynomial defined by the numbers n and m at each pixel in the pupil, multiplies it by coefficient, and adds the result to the phase of the pupil.

If n, m and coefficient are lists of equal lengths, sum the Zernike polynomials corresponding to each set of values in these lists before adding them to the phase.

Parameters#

n, mint or list of ints

The zernike polynomial numbers.

coefficientfloat or list of floats

The coefficient of the polynomial

Methods Summary

get(pupil, rho, theta, n, m, coefficient, ...)

Transform an image [abstract method].

Methods Documentation

get(pupil, rho, theta, n, m, coefficient, **kwargs)#

Transform an image [abstract method].

Abstract method that defines how the feature transforms the input. The current value of all properties will be passed as keyword arguments.

Parameters#

image‘Image’ or List[‘Image’]

The Image or list of images to transform.

**kwargsDict[str, Any]

The current value of all properties in properties as well as any global arguments.

Returns#

‘Image’ or List[‘Image’]

The transformed image or list of images.

Raises#

NotImplementedError

Must be overridden by subclasses.