SPECTRAL WHITENING
FREQUENCY DOMAIN WHITENING OF DISCRETE TIME SIGNAL
This function generates flat Fourier spectrum for a given signal (which is originally not white) either for the full range of 0 Hz to the Nyquist frequency or for a user defined frequency band. This operation tends to sharpen signal, as well as the noise. The whitening process is often used for ambient vibration data before stacking waveforms for cross-correlation. The process is simple as Fourier transforming the signal after applying Hann window, then normalizing its magnitude, and then inverse Fourier transforming it.
Syntax:
xnew = whitening(x, Fs, freq, []) for the full range of 0 Hz to the Nyquist frequency
xnew = whitening(x, Fs, freq, [0.1, 20]) for 0.1 Hz to 20 Hz as an example
Input:
x = input signal (x must be a row vector)
Fs = sampling rate (e.g., 200)
freq = frequency limit for whitening in Hz (e.g., freq, [ ] or freq, [0.1, 20])
Output:
xnew = spectrally whitened signal for the full range of 0 Hz to the
Nyquist frequency or within a user defined frequency band
Example: See demo.m file
Cite As
Dr. Erol Kalkan, P.E. (2023). SPECTRAL WHITENING (https://www.mathworks.com/matlabcentral/fileexchange/65345-spectral-whitening), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 | updated description
|