Phase stretch transform


Phase stretch transform is a computational approach to signal and image processing. One of its utilities is for feature detection and classification. PST is related to time stretch dispersive Fourier transform. It transforms the image by emulating propagation through a diffractive medium with engineered 3D dispersive property. The operation relies on symmetry of the dispersion profile and can be understood in terms of dispersive eigenfunctions or stretch modes. PST performs similar functionality as phase-contrast microscopy, but on digital images. PST can be applied to digital images and temporal data.

Operation principle

Here the principle is described in the context of feature enhancement in digital images. The image is first filtered with a spatial kernel followed by application of a nonlinear frequency-dependent phase. The output of the transform is the phase in the spatial domain. The main step is the 2-D phase function which is typically applied in the frequency domain. The amount of phase applied to the image is frequency dependent, with higher amount of phase applied to higher frequency features of the image. Since sharp transitions, such as edges and corners, contain higher frequencies, PST emphasizes the edge information. Features can be further enhanced by applying thresholding and morphological operations. PST is a pure phase operation whereas conventional edge detection algorithms operate on amplitude.

Physical and mathematical foundations of Phase Stretch Transform

Photonic time stretch technique can be understood by considering the propagation of an optical pulse through a dispersive fiber. By disregarding the loss and non-linearity in fiber, the non-linear Schrödinger equation governing the optical pulse propagation in fiber upon integration reduces to:

where =GVD parameter, z is propagation distance, is the reshaped output pulse at distance z and time t. The response of this dispersive element in the time-stretch system can be approximated as a phase propagator as presented in

Therefore, Eq. 1 can be written as following for a pulse that propagates through the time-stretch system and is reshaped into a temporal signal with a complex envelope given by

The time stretch operation is formulated as generalized phase and amplitude operations,

where is the phase filter and is the amplitude filter. Next the operator is converted to discrete domain,

where is the discrete frequency, is the phase filter, is the amplitude filter and FFT is Fast Fourier Transform.
The Stretch operator for a digital image is then

In the above equations, is the input image, and are the spatial variables, is the two dimensional Fast Fourier Transform, and and are spatial frequency variables. The function is the warped phase kernel and the function is a localization kernel implemented in frequency domain. PST operator is defined as the phase of the Warped Stretch Transform output as follows

where is the angle operator.

Applications

PST has been used for edge detection in biological and biomedical images as well as synthetic-aperture radar image processing. PST has also been applied to improve the point spread function for single molecule imaging in order to achieve super-resolution. The transform exhibits intrinsic superior properties compared to conventional edge detectors for feature detection in low contrast visually impaired images.
The PST function can also be performed on 1-D temporal waveforms in the analog domain to reveal transitions and anomalies in real time.

Open source code release

On February 9, 2016, a UCLA Engineering research group has made public the computer code for PST algorithm that helps computers process images at high speeds and "see" them in ways that human eyes cannot. The researchers say the code could eventually be used in face, fingerprint, and iris recognition systems for high-tech security, as well as in self-driving cars' navigation systems or for inspecting industrial products.
Matlab and Python implementation for PST is available for free download from our Github Repository. The Matlab implementation for PST can also be downloaded from Matlab Files Exchange. However, it is provided for research purposes only, and a license must be obtained for any commercial applications. The software is protected under a US patent.