In
signal processing
Signal processing is an electrical engineering subfield that focuses on analyzing, modifying and synthesizing '' signals'', such as sound, images, and scientific measurements. Signal processing techniques are used to optimize transmissions, ...
and
statistics
Statistics (from German: '' Statistik'', "description of a state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of data. In applying statistics to a scientific, indust ...
, a window function (also known as an apodization function or tapering function
[) is a mathematical function that is zero-valued outside of some chosen interval, normally symmetric around the middle of the interval, usually near a maximum in the middle, and usually tapering away from the middle. Mathematically, when another function or waveform/data-sequence is "multiplied" by a window function, the product is also zero-valued outside the interval: all that is left is the part where they overlap, the "view through the window". Equivalently, and in actual practice, the segment of data within the window is first isolated, and then only that data is multiplied by the window function values. Thus, ]tapering Tapering may mean:
* Tapering (sports)
* Tapering (signal processing)
*Tapering (mathematics)
In mathematics, physics, and theoretical computer graphics, tapering is a kind of shape deformation. Just as an affine transformation, such as scaling ...
, not segmentation, is the main purpose of window functions.
The reasons for examining segments of a longer function include detection of transient events and time-averaging of frequency spectra. The duration of the segments is determined in each application by requirements like time and frequency resolution. But that method also changes the frequency content of the signal by an effect called spectral leakage. Window functions allow us to distribute the leakage spectrally in different ways, according to the needs of the particular application. There are many choices detailed in this article, but many of the differences are so subtle as to be insignificant in practice.
In typical applications, the window functions used are non-negative, smooth, "bell-shaped" curves.[ Rectangle, triangle, and other functions can also be used. A more general definition of window functions does not require them to be identically zero outside an interval, as long as the product of the window multiplied by its argument is square integrable, and, more specifically, that the function goes sufficiently rapidly toward zero.][
]
Applications
Window functions are used in spectral analysis
Analysis ( : analyses) is the process of breaking a complex topic or substance into smaller parts in order to gain a better understanding of it. The technique has been applied in the study of mathematics and logic since before Aristotle (3 ...
/modification/ resynthesis,[ the design of finite impulse response filters, as well as beamforming and ]antenna
Antenna ( antennas or antennae) may refer to:
Science and engineering
* Antenna (radio), also known as an aerial, a transducer designed to transmit or receive electromagnetic (e.g., TV or radio) waves
* Antennae Galaxies, the name of two collid ...
design.
Spectral analysis
The Fourier transform
A Fourier transform (FT) is a mathematical transform that decomposes functions into frequency components, which are represented by the output of the transform as a function of frequency. Most commonly functions of time or space are transformed ...
of the function is zero, except at frequency ±''ω''. However, many other functions and waveforms do not have convenient closed-form transforms. Alternatively, one might be interested in their spectral content only during a certain time period.
In either case, the Fourier transform (or a similar transform) can be applied on one or more finite intervals of the waveform. In general, the transform is applied to the product of the waveform and a window function. Any window (including rectangular) affects the spectral estimate computed by this method.
Filter design
Windows are sometimes used in the design of digital filters
In signal processing, a digital filter is a system that performs mathematical operations on a sampled, discrete-time signal to reduce or enhance certain aspects of that signal. This is in contrast to the other major type of electronic filter, t ...
, in particular to convert an "ideal" impulse response of infinite duration, such as a sinc function, to a finite impulse response (FIR) filter design. That is called the ''window method''.[
]
Statistics and curve fitting
Window functions are sometimes used in the field of statistical analysis to restrict the set of data being analyzed to a range near a given point, with a weighting factor that diminishes the effect of points farther away from the portion of the curve being fit. In the field of Bayesian analysis and curve fitting, this is often referred to as the kernel.
Rectangular window applications
Analysis of transients
When analyzing a transient signal in modal analysis, such as an impulse, a shock response, a sine burst, a chirp burst, or noise burst, where the energy vs time distribution is extremely uneven, the rectangular window may be most appropriate. For instance, when most of the energy is located at the beginning of the recording, a non-rectangular window attenuates most of the energy, degrading the signal-to-noise ratio.[
]
Harmonic analysis
One might wish to measure the harmonic content of a musical note from a particular instrument or the harmonic distortion of an amplifier at a given frequency. Referring again to Figure 2, we can observe that there is no leakage at a discrete set of harmonically-related frequencies sampled by the DFT. (The spectral nulls are actually zero-crossings, which cannot be shown on a logarithmic scale such as this.) This property is unique to the rectangular window, and it must be appropriately configured for the signal frequency, as described above.
Overlapping windows
When the length of a data set to be transformed is larger than necessary to provide the desired frequency resolution, a common practice is to subdivide it into smaller sets and window them individually. To mitigate the "loss" at the edges of the window, the individual sets may overlap in time. See Welch method of power spectral analysis and the modified discrete cosine transform.
Two-dimensional windows
Two-dimensional windows are commonly used in image processing to reduce unwanted high-frequencies in the image Fourier transform.[ They can be constructed from one-dimensional windows in either of two forms.][ The separable form, is trivial to compute. The radial form, , which involves the radius , is isotropic, independent on the orientation of the coordinate axes. Only the ]Gaussian
Carl Friedrich Gauss (1777–1855) is the eponym of all of the topics listed below.
There are over 100 topics all named after this German mathematician and scientist, all in the fields of mathematics, physics, and astronomy. The English eponym ...
function is both separable and isotropic.[ The separable forms of all other window functions have corners that depend on the choice of the coordinate axes. The isotropy/ anisotropy of a two-dimensional window function is shared by its two-dimensional Fourier transform. The difference between the separable and radial forms is akin to the result of diffraction from rectangular vs. circular apertures, which can be visualized in terms of the product of two sinc functions vs. an Airy function, respectively.
]
A list of window functions
Conventions:
* is a zero-phase function (symmetrical about ),[ continuous for where is a positive integer (even or odd).][
*The sequence is ''symmetric'', of length
* is ''DFT-symmetric'', of length
*The parameter B displayed on each spectral plot is the function's noise equivalent bandwidth metric, in units of ''DFT bins''.
The sparse sampling of a DTFT (such as the DFTs in Fig 2) only reveals the leakage into the DFT bins from a sinusoid whose frequency is also an integer DFT bin. The unseen sidelobes reveal the leakage to expect from sinusoids at other frequencies. Therefore, when choosing a window function, it is usually important to sample the DTFT more densely (as we do throughout this section) and choose a window that suppresses the sidelobes to an acceptable level.
]
Rectangular window
The rectangular window (sometimes known as the boxcar
A boxcar is the North American (AAR) term for a railroad car that is enclosed and generally used to carry freight. The boxcar, while not the simplest freight car design, is considered one of the most versatile since it can carry most ...
or Dirichlet window) is the simplest window, equivalent to replacing all but ''N'' values of a data sequence by zeros, making it appear as though the waveform suddenly turns on and off:
:
Other windows are designed to moderate these sudden changes, which reduces scalloping loss and improves dynamic range, as described above ().
The rectangular window is the 1st order ''B''-spline window as well as the 0th power power-of-sine window.
The rectangular window provides the minimum mean square error estimate of the Discrete-time Fourier transform
In mathematics, the discrete-time Fourier transform (DTFT) is a form of Fourier analysis that is applicable to a sequence of values.
The DTFT is often used to analyze samples of a continuous function. The term ''discrete-time'' refers to the ...
, at the cost of other issues discussed.
''B''-spline windows
''B''-spline windows can be obtained as ''k''-fold convolutions of the rectangular window. They include the rectangular window itself (''k'' = 1), the (''k'' = 2) and the (''k'' = 4).[ Alternative definitions sample the appropriate normalized ''B''-spline basis functions instead of convolving discrete-time windows. A ''k''th-order ''B''-spline basis function is a piece-wise polynomial function of degree ''k''−1 that is obtained by ''k''-fold self-convolution of the rectangular function.
]
Triangular window
Triangular windows are given by:
:
where ''L'' can be ''N'',[ ''N'' + 1,][
][ or ''N'' + 2.][ The first one is also known as Bartlett window or Fejér window. All three definitions converge at large ''N''.
The triangular window is the 2nd order ''B''-spline window. The ''L'' = ''N'' form can be seen as the convolution of two ''N''/2-width rectangular windows. The Fourier transform of the result is the squared values of the transform of the half-width rectangular window.
]
Parzen window
Defining , the Parzen window, also known as the de la Vallée Poussin window,[ is the 4th order ''B''-spline window given by:
:
:
]
Other polynomial windows
Welch window
The Welch window consists of a single parabolic section:
:[
The defining quadratic polynomial reaches a value of zero at the samples just outside the span of the window.
]
Sine window
:
The corresponding function is a cosine without the /2 phase offset. So the ''sine window''[ is sometimes also called ''cosine window''.][ As it represents half a cycle of a sinusoidal function, it is also known variably as ''half-sine window''][ or ''half-cosine window''.][
The autocorrelation of a sine window produces a function known as the Bohman window.][
]
Power-of-sine/cosine windows
These window functions have the form:[
:
The rectangular window (), the sine window (), and the ]Hann window
The Hann function is named after the Austrian meteorologist Julius von Hann. It is a window function used to perform Hann smoothing. The function, with length L and amplitude 1/L, is given by:
:
w_0(x) \triangleq \left\.
For digital sign ...
() are members of this family.
For even-integer values of these functions can also be expressed in cosine-sum form:
:
:
Cosine-sum windows
This family is also known as
generalized cosine windows
'.
In most cases, including the examples below, all coefficients ''a''''k'' ≥ 0. These windows have only 2''K'' + 1 non-zero ''N''-point DFT coefficients.
Hann and Hamming windows
The customary cosine-sum windows for case ''K'' = 1 have the form:
:
which is easily (and often) confused with its zero-phase version:
:
Setting produces a Hann window:
:[
named after ]Julius von Hann
Julius Ferdinand von Hann (23 March 1839 in Wartberg ob der Aist near Linz – 1 October 1921 in Vienna) was an Austrian meteorologist. He is seen as a father of modern meteorology.
Biography
He was educated at the gymnasium of Kremsmünster ...
, and sometimes erroneously referred to as ''Hanning'', presumably due to its linguistic and formulaic similarities to the Hamming window. It is also known as raised cosine, because the zero-phase version, is one lobe of an elevated cosine function.
This function is a member of both the cosine-sum and power-of-sine families. Unlike the Hamming window
In discrete-time signal processing, windowing is a preliminary signal shaping technique, usually applied to improve the appearance and usefulness of a subsequent Discrete Fourier Transform. Several ''window functions'' can be defined, based on a ...
, the end points of the Hann window just touch zero. The resulting side-lobes roll off at about 18 dB per octave.[
Setting to approximately 0.54, or more precisely 25/46, produces the Hamming window, proposed by Richard W. Hamming. That choice places a zero-crossing at frequency 5/(''N'' − 1), which cancels the first sidelobe of the Hann window, giving it a height of about one-fifth that of the Hann window.][
The Hamming window is often called the Hamming blip when used for pulse shaping.][
Approximation of the coefficients to two decimal places substantially lowers the level of sidelobes,][ to a nearly equiripple condition.][ In the equiripple sense, the optimal values for the coefficients are a0 = 0.53836 and a1 = 0.46164.][
]
Blackman window
Blackman windows are defined as:
:
:
By common convention, the unqualified term ''Blackman window'' refers to Blackman's "not very serious proposal" of (''a''0 = 0.42, ''a''1 = 0.5, ''a''2 = 0.08), which closely approximates the exact Blackman,[ with ''a''0 = 7938/18608 ≈ 0.42659, ''a''1 = 9240/18608 ≈ 0.49656, and ''a''2 = 1430/18608 ≈ 0.076849.][ These exact values place zeros at the third and fourth sidelobes,][ but result in a discontinuity at the edges and a 6 dB/oct fall-off. The truncated coefficients do not null the sidelobes as well, but have an improved 18 dB/oct fall-off.][
]
Nuttall window, continuous first derivative
The continuous form of the Nuttall window, and its first derivative
In mathematics, the derivative of a function of a real variable measures the sensitivity to change of the function value (output value) with respect to a change in its argument (input value). Derivatives are a fundamental tool of calculus. ...
are continuous everywhere, like the Hann function
The Hann function is named after the Austrian meteorologist Julius von Hann. It is a window function used to perform Hann smoothing. The function, with length L and amplitude 1/L, is given by:
:
w_0(x) \triangleq \left\.
For digital si ...
. That is, the function goes to 0 at unlike the Blackman–Nuttall, Blackman–Harris, and Hamming windows. The Blackman window () is also continuous with continuous derivative at the edge, but the "exact Blackman window" is not.
:
:
Blackman–Nuttall window
:
:
Blackman–Harris window
A generalization of the Hamming family, produced by adding more shifted sinc functions, meant to minimize side-lobe levels[
:
:
]
Flat top window
A flat top window is a partially negative-valued window that has minimal scalloping loss in the frequency domain. That property is desirable for the measurement of amplitudes of sinusoidal frequency components.[ Drawbacks of the broad bandwidth are poor frequency resolution and high .
Flat top windows can be designed using low-pass filter design methods,][ or they may be of the usual cosine-sum variety:
:
Th]
Matlab variant
has these coefficients:
:
Other variations are available, such as sidelobes that roll off at the cost of higher values near the main lobe.[
]
Rife–Vincent windows
Rife–Vincent windows[ are customarily scaled for unity average value, instead of unity peak value. The coefficient values below, applied to , reflect that custom.
Class I, Order 1 (''K'' = 1): Functionally equivalent to the ]Hann window
The Hann function is named after the Austrian meteorologist Julius von Hann. It is a window function used to perform Hann smoothing. The function, with length L and amplitude 1/L, is given by:
:
w_0(x) \triangleq \left\.
For digital sign ...
.
Class I, Order 2 (''K'' = 2):
Class I is defined by minimizing the high-order sidelobe amplitude. Coefficients for orders up to K=4 are tabulated.[
Class II minimizes the main-lobe width for a given maximum side-lobe.
Class III is a compromise for which order ''K'' = 2 resembles the .][
]
Adjustable windows
Gaussian window
The Fourier transform of a Gaussian
Carl Friedrich Gauss (1777–1855) is the eponym of all of the topics listed below.
There are over 100 topics all named after this German mathematician and scientist, all in the fields of mathematics, physics, and astronomy. The English eponym ...
is also a Gaussian. Since the support of a Gaussian function extends to infinity, it must either be truncated at the ends of the window, or itself windowed with another zero-ended window.[
Since the log of a Gaussian produces a ]parabola
In mathematics, a parabola is a plane curve which is mirror-symmetrical and is approximately U-shaped. It fits several superficially different mathematical descriptions, which can all be proved to define exactly the same curves.
One descri ...
, this can be used for nearly exact quadratic interpolation in frequency estimation
In statistical signal processing, the goal of spectral density estimation (SDE) or simply spectral estimation is to estimate the spectral density (also known as the power spectral density) of a signal from a sequence of time samples of the sign ...
.[
:
:
The standard deviation of the Gaussian function is ''σ'' · ''N''/2 sampling periods.
]
Confined Gaussian window
The confined Gaussian window yields the smallest possible root mean square frequency width for a given temporal width .[ These windows optimize the RMS time-frequency bandwidth products. They are computed as the minimum eigenvectors of a parameter-dependent matrix. The confined Gaussian window family contains the and the in the limiting cases of large and small , respectively.
]
Approximate confined Gaussian window
Defining , a confined Gaussian window of temporal width is well approximated by:[
:
where is a Gaussian function:
::
The standard deviation of the approximate window is asymptotically equal (i.e. large values of ) to for .][
]
Generalized normal window
A more generalized version of the Gaussian window is the generalized normal window.[ Retaining the notation from the Gaussian window above, we can represent this window as
:
for any even . At , this is a Gaussian window and as approaches , this approximates to a rectangular window. The ]Fourier transform
A Fourier transform (FT) is a mathematical transform that decomposes functions into frequency components, which are represented by the output of the transform as a function of frequency. Most commonly functions of time or space are transformed ...
of this window does not exist in a closed form for a general . However, it demonstrates the other benefits of being smooth, adjustable bandwidth. Like the , this window naturally offers a "flat top" to control the amplitude attenuation of a time-series (on which we don't have a control with Gaussian window). In essence, it offers a good (controllable) compromise, in terms of spectral leakage, frequency resolution and amplitude attenuation, between the Gaussian window and the rectangular window.
See also [ for a study on time-frequency representation of this window (or function).
]
Tukey window
The Tukey window, also known as the ''cosine-tapered window'', can be regarded as a cosine lobe of width (spanning observations) that is convolved with a rectangular window of width .
: [
At it becomes rectangular, and at it becomes a Hann window.
]
Planck-taper window
The so-called "Planck-taper" window is a bump function that has been widely used[ in the theory of partitions of unity in manifolds. It is smooth (a function) everywhere, but is exactly zero outside of a compact region, exactly one over an interval within that region, and varies smoothly and monotonically between those limits. Its use as a window function in signal processing was first suggested in the context of ]gravitational-wave astronomy
Gravitational-wave astronomy is an emerging branch of observational astronomy which aims to use gravitational waves (minute distortions of spacetime predicted by Albert Einstein's theory of general relativity) to collect observational data abo ...
, inspired by the Planck distribution.[ It is defined as a ]piecewise
In mathematics, a piecewise-defined function (also called a piecewise function, a hybrid function, or definition by cases) is a function defined by multiple sub-functions, where each sub-function applies to a different interval in the domain. P ...
function:
:
The amount of tapering is controlled by the parameter ''ε'', with smaller values giving sharper transitions.
DPSS or Slepian window
The DPSS (discrete prolate spheroidal sequence) or Slepian window maximizes the energy concentration in the main lobe,[ and is used in multitaper spectral analysis, which averages out noise in the spectrum and reduces information loss at the edges of the window.
The main lobe ends at a frequency bin given by the parameter ''α''.][
The Kaiser windows below are created by a simple approximation to the DPSS windows:
]
Kaiser window
The Kaiser, or Kaiser–Bessel, window is a simple approximation of the DPSS window using Bessel function
Bessel functions, first defined by the mathematician Daniel Bernoulli and then generalized by Friedrich Bessel, are canonical solutions of Bessel's differential equation
x^2 \frac + x \frac + \left(x^2 - \alpha^2 \right)y = 0
for an arbitrar ...
s, discovered by James Kaiser
James Frederick Kaiser (Dec. 10, 1929 – Feb. 13, 2020) was an American electrical engineer noted for his contributions in signal processing. He was an IEEE Fellow and received many honors and awards, including the IEEE Centennial Medal, the IE ...
.[
: ][
:
where is the zero-th order modified Bessel function of the first kind. Variable parameter determines the tradeoff between main lobe width and side lobe levels of the spectral leakage pattern. The main lobe width, in between the nulls, is given by in units of DFT bins,][ and a typical value of is 3.
]
Dolph–Chebyshev window
Minimizes the Chebyshev norm
In mathematical analysis, the uniform norm (or ) assigns to real- or complex-valued bounded functions defined on a set the non-negative number
:\, f\, _\infty = \, f\, _ = \sup\left\.
This norm is also called the , the , the , or, when th ...
of the side-lobes for a given main lobe width.[
The zero-phase Dolph–Chebyshev window function ]