This article is about the convolution method. For the "Weight, OverLap, Add" channelization method, see
Sampling the DTFT.
In signal processing, the overlap–add method is an efficient way to evaluate the discrete convolution of a very long signal
with a finite impulse response (FIR) filter
:
|
| | Eq.1 |
where
for
outside the region
This article uses common abstract notations, such as
or
in which it is understood that the functions should be thought of in their totality, rather than at specific instants
(see Convolution#Notation).
The concept is to divide the problem into multiple convolutions of
with short segments of
:
![{\displaystyle x_{k}[n]\ \triangleq \ {\begin{cases}x[n+kL],&n=1,2,\ldots ,L\\0,&{\text{otherwise}},\end{cases}}}](./0036855194aa4d3a726c0d24a4c8911b72ab916c.svg)
where
is an arbitrary segment length. Then:
![{\displaystyle x[n]=\sum _{k}x_{k}[n-kL],\,}](./f33a5b92185ef8df40abcfd64c8de367434e2d46.svg)
and
can be written as a sum of short convolutions:
![{\displaystyle {\begin{aligned}y[n]=\left(\sum _{k}x_{k}[n-kL]\right)*h[n]&=\sum _{k}\left(x_{k}[n-kL]*h[n]\right)\\&=\sum _{k}y_{k}[n-kL],\end{aligned}}}](./37b306ce8098217c0f1f7d2ac444aad8cdca697d.svg)
where the linear convolution
is zero outside the region
And for any parameter
it is equivalent to the
-point circular convolution of
with
in the region
The advantage is that the circular convolution can be computed more efficiently than linear convolution, according to the circular convolution theorem:
|
| | Eq.2 |
where:
- DFTN and IDFTN refer to the Discrete Fourier transform and its inverse, evaluated over
discrete points, and
is customarily chosen such that
is an integer power-of-2, and the transforms are implemented with the FFT algorithm, for efficiency.