pycroscopy.processing.fft

A collection of 1D and 2D FFT based utilities for image and spectral processing based on the :module:`numpy.fft` module

Created on Tue Oct 20 17:42:41 2015

@author: Suhas Somnath

Functions

are_compatible_filters(frequency_filters)

build_composite_freq_filter(frequency_filters)

build_radius_matrix(image_shape)

Builds a matrix where the value of a given pixel is its L2 distance from the origin, which is located at the center of the provided image rather one of the corners of the image.

down_sample(fft_vec, freq_ratio)

Downsamples the provided data vector

fft_to_real(image)

Provides the real-space equivalent of the provided image in Fourier space

get_2d_gauss_lpf(radius_mat, filter_width)

Builds a 2D, radially symmetric, low-pass Gaussian filter based on the provided radius matrix.

get_fft_stack(image_stack)

Gets the 2D FFT for a single or stack of images by applying a blackman window

get_noise_floor(fft_data, tolerance)

Calculate the noise floor from the FFT data.

Classes

BandPassFilter(signal_length, samp_rate, …)

Builds a bandpass filter

FrequencyFilter(signal_length, samp_rate, …)

HarmonicPassFilter(signal_length, samp_rate, …)

Builds a filter that only keeps N harmonics

LowPassFilter(signal_length, samp_rate, f_cutoff)

Builds a low pass filter

NoiseBandFilter(signal_length, samp_rate, …)

Builds a filter that removes specified noise frequencies