LowpassFilter
LowpassFilter[data,ωc]
applies a lowpass filter with a cutoff frequency ωc to an array of data.
LowpassFilter[data,ωc,n]
uses a filter kernel of length n.
LowpassFilter[data,ωc,n,wfun]
applies a smoothing window wfun to the filter kernel.
Details and Options
- Lowpass filtering is typically used for smoothing or denoising data, which works by diminishing high-frequency content from the data.
- LowpassFilter convolves a digital signal with a finite impulse response (FIR) kernel created using the window method.
- The data can be any of the following:
-
list arbitrary-rank numerical array tseries temporal data such as TimeSeries and TemporalData image arbitrary Image or Image3D object audio an Audio or Sound object - Smaller cutoff frequencies typically result in greater smoothing. Longer kernels result in a better frequency discrimination. »
- LowpassFilter[data,ωc] uses a filter kernel length and smoothing window suitable for the cutoff frequency ωc and the input data.
- Typical smoothing windows wfun include:
-
BlackmanWindow smoothing with a Blackman window DirichletWindow no smoothing HammingWindow smoothing with a Hamming window (default) {v1,v2,…} use a window with values vi f create a window by sampling f between and - When applied to images and multidimensional arrays, filtering is applied successively to each dimension, starting at level 1. LowpassFilter[data,{ωc1,ωc2,…}] uses the frequency ωci for the dimension.
- The following options can be given:
-
Padding "Fixed" the padding value to use SampleRate Automatic sample rate assumed for the input - By default, SampleRate->1 is assumed for images as well as lists. For audio signals and time series, the sample rate is either extracted or computed from the input data.
- With SampleRatesr, the cutoff frequency ωc should be between 0 and . »
Examples
open allclose allBasic Examples (3)
Scope (13)
Data (8)
Filter a TimeSeries:
Smoothing of an Audio object of a triangle wave:
Use a low cutoff frequency to remove most of the signal harmonics:
Lowpass filtering of a Sound object of a dual-tone multi-frequency (DTMF) signal:
Use a cutoff frequency midway between two dial tones, a filter length of 99 and a Blackman window:
Lowpass filtering of a color halftone image:
Parameters (5)
A numeric cutoff frequency is interpreted as a quantity in units of radians per second:
Filter a white noise signal using a cutoff frequency of :
By default, the length of the filter and its frequency discrimination depend on the cutoff frequency:
Higher cutoff frequencies result in shorter filter kernels, a wider transition band and poorer frequency discrimination:
Increase frequency discrimination by using a longer kernel:
Vary the amount of stopband attenuation by using different window functions:
Increase filter length to improve frequency discrimination:
Vary the amount of attenuation by using the adjustable Kaiser window:
Options (4)
Padding (2)
Applications (6)
Reduce audio noise by using a cutoff frequency of 1000 Hz:
Use LowpassFilter to make an audio object sound less harsh:
On a modern 88-key piano, key 55 (note C5) has a fundamental frequency of approximately 523 Hz. Use LowpassFilter to effectively remove all the harmonics of this key while retaining the fundamental in the following audio clip:
Use a filter of length 59 with a cutoff frequency midway between the fundamental (523 Hz) and its first harmonic at 1046 Hz:
Compare the frequency spectra of the two audio clips:
Properties & Relations (8)
Using a cutoff frequency of 0 returns a zero sequence:
Use a cutoff frequency of π or greater to create an all-pass filter:
Create a lowpass filter using LeastSquaresFilterKernel and a Hamming window:
Compare with the result of LowpassFilter:
Impulse response of a half-band lowpass filter of length 21:
Magnitude spectrum of the filter:
Impulse response of a half-band lowpass filter of length 21 without a smoothing window:
Magnitude spectrum of the filter:
Impulse response of an even-length filter without a smoothing window:
Magnitude spectrum of the filter:
The frequency discrimination of the lowpass filter improves as its length is increased:
The length of the impulse response increases as the bandwidth of the filter is decreased:
Possible Issues (1)
Text
Wolfram Research (2012), LowpassFilter, Wolfram Language function, https://reference.wolfram.com/language/ref/LowpassFilter.html (updated 2016).
CMS
Wolfram Language. 2012. "LowpassFilter." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2016. https://reference.wolfram.com/language/ref/LowpassFilter.html.
APA
Wolfram Language. (2012). LowpassFilter. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/LowpassFilter.html