In mathematics (in particular, functional analysis), convolution is a mathematical operation on two functions (
f
g
f*g
Some features of convolution are similar to cross-correlation: for real-valued functions, of a continuous or discrete variable, convolution (
f*g
f\starg
f(x)
g(x)
g(-x)
f(x)
f(-x)
g(x)
Convolution has applications that include probability, statistics, acoustics, spectroscopy, signal processing and image processing, geophysics, engineering, physics, computer vision and differential equations.[1]
The convolution can be defined for functions on Euclidean space and other groups (as algebraic structures). For example, periodic functions, such as the discrete-time Fourier transform, can be defined on a circle and convolved by periodic convolution. (See row 18 at .) A discrete convolution can be defined for functions on the set of integers.
Generalizations of convolution have applications in the field of numerical analysis and numerical linear algebra, and in the design and implementation of finite impulse response filters in signal processing.
Computing the inverse of the convolution operation is known as deconvolution.
The convolution of
f
g
f*g
*
(f*g)(t):=
infty | |
\int | |
-infty |
f(\tau)g(t-\tau)d\tau.
An equivalent definition is (see commutativity):
(f*g)(t):=
infty | |
\int | |
-infty |
f(t-\tau)g(\tau)d\tau.
While the symbol
t
t
f(\tau)
g(-\tau)
t
t
g(t-\tau)
f(\tau)
t
g(t-\tau)
g(-\tau)
\tau
+infty
t
t
g(t-\tau)
g(-\tau)
-infty
|t|
For functions
f
g
[0,infty)
(f*g)(t)=
t | |
\int | |
0 |
f(\tau)g(t-\tau)d\tau forf,g:[0,infty)\toR.
For the multi-dimensional formulation of convolution, see domain of definition (below).
A common engineering notational convention is:[2]
f(t)*g(t)
infty | |
l{:=}\underbrace{\int | |
-infty |
f(\tau)g(t-\tau)d\tau}(f,
which has to be interpreted carefully to avoid confusion. For instance,
f(t)*g(t-t0)
(f*g)(t-t0)
f(t-t0)*g(t-t0)
(f*g)(t-2t0)
Given two functions
f(t)
g(t)
F(s)=
infty | |
\int | |
-infty |
e-su f(u) du
and
G(s)=
infty | |
\int | |
-infty |
e-sv g(v) dv
respectively, the convolution operation
(f*g)(t)
F(s)
G(s)
\begin{align} F(s) ⋅ G(s)&=
infty | |
\int | |
-infty |
e-su f(u) du ⋅
infty | |
\int | |
-infty |
e-sv g(v) dv\\ &=
infty | |
\int | |
-infty |
infty | |
\int | |
-infty |
e-s(u f(u) g(v) du dv \end{align}
Let
t=u+v
\begin{align} F(s) ⋅ G(s)&=
infty | |
\int | |
-infty |
infty | |
\int | |
-infty |
e-st f(u) g(t-u) du dt\\ &=
infty | |
\int | |
-infty |
e-st
infty | |
\underbrace{\int | |
-infty |
f(u) g(t-u) du}(f dt\\ &=
infty | |
\int | |
-infty |
e-st(f*g)(t) dt \end{align}
Note that
F(s) ⋅ G(s)
(f*g)(t)
The convolution operation also describes the output (in terms of the input) of an important class of operations known as linear time-invariant (LTI). See LTI system theory for a derivation of convolution as the result of LTI constraints. In terms of the Fourier transforms of the input and output of an LTI operation, no new frequency components are created. The existing ones are only modified (amplitude and/or phase). In other words, the output transform is the pointwise product of the input transform with a third transform (known as a transfer function). See Convolution theorem for a derivation of that property of convolution. Conversely, convolution can be derived as the inverse Fourier transform of the pointwise product of two Fourier transforms.
One of the earliest uses of the convolution integral appeared in D'Alembert's derivation of Taylor's theorem in Recherches sur différents points importants du système du monde, published in 1754.[6]
Also, an expression of the type:
\intf(u) ⋅ g(x-u)du
is used by Sylvestre François Lacroix on page 505 of his book entitled Treatise on differences and series, which is the last of 3 volumes of the encyclopedic series:, Chez Courcier, Paris, 1797–1800.[7] Soon thereafter, convolution operations appear in the works of Pierre Simon Laplace, Jean-Baptiste Joseph Fourier, Siméon Denis Poisson, and others. The term itself did not come into wide use until the 1950s or 1960s. Prior to that it was sometimes known as Faltung (which means folding in German), composition product, superposition integral, and Carson's integral. Yet it appears as early as 1903, though the definition is rather unfamiliar in older uses.
The operation:
t | |
\int | |
0 |
\varphi(s)\psi(t-s)ds, 0\let<infty,
is a particular case of composition products considered by the Italian mathematician Vito Volterra in 1913.[8]
See main article: article and Circular convolution.
When a function is periodic, with period, then for functions,, such that exists, the convolution is also periodic and identical to:
(f*gT)(t)\equiv
t0+T | |
\int | |
t0 |
infty | |
\left[\sum | |
k=-infty |
f(\tau+kT)\right]gT(t-\tau)d\tau,
where is an arbitrary choice. The summation is called a periodic summation of the function .
When is a periodic summation of another function,, then is known as a circular or cyclic convolution of and .
And if the periodic summation above is replaced by, the operation is called a periodic convolution of and .
For complex-valued functions defined on the set Z of integers, the discrete convolution of and is given by:
(f*g)[n]=
infty | |
\sum | |
m=-infty |
f[m]g[n-m],
or equivalently (see commutativity) by:
(f*g)[n]=
infty | |
\sum | |
m=-infty |
f[n-m]g[m].
The convolution of two finite sequences is defined by extending the sequences to finitely supported functions on the set of integers. When the sequences are the coefficients of two polynomials, then the coefficients of the ordinary product of the two polynomials are the convolution of the original two sequences. This is known as the Cauchy product of the coefficients of the sequences.
Thus when has finite support in the set
\{-M,-M+1,...,M-1,M\}
(f*
M | |
g)[n]=\sum | |
m=-M |
f[n-m]g[m].
When a function
g | |
N |
N,
f,
f*g | |
N |
(f*
g | |
N |
)[n]\equiv
N-1 | |
\sum | |
m=0 |
infty | |
\left(\sum | |
k=-infty |
{f}[m+kN]\right)
g | |
N |
[n-m].
The summation on
k
f.
If
g | |
N |
g,
f*g | |
N |
f
g.
When the non-zero durations of both
f
g
[0,N-1],
f*g | |
N |
The notation
f*Ng
Circular convolution arises most often in the context of fast convolution with a fast Fourier transform (FFT) algorithm.
In many situations, discrete convolutions can be converted to circular convolutions so that fast transforms with a convolution property can be used to implement the computation. For example, convolution of digit sequences is the kernel operation in multiplication of multi-digit numbers, which can therefore be efficiently implemented with transform techniques (;).
requires arithmetic operations per output value and operations for outputs. That can be significantly reduced with any of several fast algorithms. Digital signal processing and other applications typically use fast convolution algorithms to reduce the cost of the convolution to O(log) complexity.
The most common fast convolution algorithms use fast Fourier transform (FFT) algorithms via the circular convolution theorem. Specifically, the circular convolution of two finite-length sequences is found by taking an FFT of each sequence, multiplying pointwise, and then performing an inverse FFT. Convolutions of the type defined above are then efficiently implemented using that technique in conjunction with zero-extension and/or discarding portions of the output. Other fast convolution algorithms, such as the Schönhage–Strassen algorithm or the Mersenne transform,[10] use fast Fourier transforms in other rings. The Winograd method is used as an alternative to the FFT.[11] It significantly speeds up 1D,[12] 2D,[13] and 3D[14] convolution.
If one sequence is much longer than the other, zero-extension of the shorter sequence and fast circular convolution is not the most computationally efficient method available.[15] Instead, decomposing the longer sequence into blocks and convolving each block allows for faster algorithms such as the overlap–save method and overlap–add method.[16] A hybrid convolution method that combines block and FIR algorithms allows for a zero input-output latency that is useful for real-time convolution computations.[17]
The convolution of two complex-valued functions on is itself a complex-valued function on, defined by:
(f*g)(x)=
\int | |
Rd |
f(y)g(x-y)dy=
\int | |
Rd |
f(x-y)g(y)dy,
and is well-defined only if and decay sufficiently rapidly at infinity in order for the integral to exist. Conditions for the existence of the convolution may be tricky, since a blow-up in at infinity can be easily offset by sufficiently rapid decay in . The question of existence thus may involve different conditions on and :
If and are compactly supported continuous functions, then their convolution exists, and is also compactly supported and continuous . More generally, if either function (say) is compactly supported and the other is locally integrable, then the convolution is well-defined and continuous.
Convolution of and is also well defined when both functions are locally square integrable on and supported on an interval of the form (or both supported on).
The convolution of and exists if and are both Lebesgue integrable functions in , and in this case is also integrable . This is a consequence of Tonelli's theorem. This is also true for functions in, under the discrete convolution, or more generally for the convolution on any group.
Likewise, if and where, then , and
\|{f}*g\|p\le\|f\|1\|g\|p.
In the particular case, this shows that is a Banach algebra under the convolution (and equality of the two sides holds if and are non-negative almost everywhere). More generally, Young's inequality implies that the convolution is a continuous bilinear map between suitable spaces. Specifically, if satisfy:
1 | + | |
p |
1 | = | |
q |
1 | |
r |
+1,
then
\left\Vertf*g\right\Vertr\le\left\Vertf\right\Vertp\left\Vertg\right\Vertq, f\inLp, g\inLq,
so that the convolution is a continuous bilinear mapping from to .The Young inequality for convolution is also true in other contexts (circle group, convolution on). The preceding inequality is not sharp on the real line: when, there exists a constant such that:
\left\Vertf*g\right\Vertr\leBp,q\left\Vertf\right\Vertp\left\Vertg\right\Vertq, f\inLp, g\inLq.
The optimal value of was discovered in 1975[18] and independently in 1976,[19] see Brascamp–Lieb inequality.
A stronger estimate is true provided :
\|f*g\|r\leCp,q\|f\|p\|g\|q,w
\|g\|q,w
Lp,w x Lq,w\toLr,w
1<p,q,r<infty
\|f*g\|r,w\leCp,q\|f\|p,w\|g\|r,w.
In addition to compactly supported functions and integrable functions, functions that have sufficiently rapid decay at infinity can also be convolved. An important feature of the convolution is that if f and g both decay rapidly, then f∗g also decays rapidly. In particular, if f and g are rapidly decreasing functions, then so is the convolution f∗g. Combined with the fact that convolution commutes with differentiation (see
See main article: article and Distribution (mathematics). If f is a smooth function that is compactly supported and g is a distribution, then f∗g is a smooth function defined by
\int | |
Rd |
{f}(y)g(x-y)dy=(f*g)(x)\inCinfty(Rd).
More generally, it is possible to extend the definition of the convolution in a unique way with
\varphi
f*(g*\varphi)=(f*g)*\varphi
remains valid in the case where f is a distribution, and g a compactly supported distribution .
The convolution of any two Borel measures μ and ν of bounded variation is the measure
\mu*\nu
\int | |
Rd |
f(x)d(\mu*\nu)(x)=
\int | |
Rd |
\int | |
Rd |
f(x+y)d\mu(x)d\nu(y).
In particular,
(\mu*\nu)(A)=
\int | |
Rd x Rd |
1A(x+y)d(\mu x \nu)(x,y),
where
A\subsetRd
1A
A
This agrees with the convolution defined above when μ and ν are regarded as distributions, as well as the convolution of L1 functions when μ and ν are absolutely continuous with respect to the Lebesgue measure.
The convolution of measures also satisfies the following version of Young's inequality
\|\mu*\nu\|\le\|\mu\|\|\nu\|
The convolution defines a product on the linear space of integrable functions. This product satisfies the following algebraic properties, which formally mean that the space of integrable functions with the product given by convolution is a commutative associative algebra without identity . Other linear spaces of functions, such as the space of continuous functions of compact support, are closed under the convolution, and so also form commutative associative algebras.
u=t-\tau
a
q(t)=r(t)*s(t),
q(-t)=r(-t)*s(-t).
Proof (using convolution theorem):q(t) \stackrel{l{F}}{\Longleftrightarrow} Q(f)=R(f)S(f)
q(-t) \stackrel{l{F}}{\Longleftrightarrow} Q(-f)=R(-f)S(-f)
\begin{align} q(-t)&=l{F}-1\{R(-f)S(-f)\}\\ &=l{F}-1\{R(-f)\}*l{F}-1\{S(-f)\}\\ &=r(-t)*s(-t) \end{align}
\begin{align} (f*g)'&=
d | |
dt |
infty | |
\int | |
-infty |
f(\tau)g(t-\tau)d\tau\\ &
infty | |
=\int | |
-infty |
f(\tau)
\partial | |
\partialt |
g(t-\tau)d\tau\\ &
infty | |
=\int | |
-infty |
f(\tau)g'(t-\tau)d\tau=f*g'. \end{align}
If f and g are integrable functions, then the integral of their convolution on the whole space is simply obtained as the product of their integrals:[20]
\int | |
Rd |
(f*g)(x)
dx=\left(\int | |
Rd |
f(x)dx\right)
\left(\int | |
Rd |
g(x)dx\right).
This follows from Fubini's theorem. The same result holds if f and g are only assumed to be nonnegative measurable functions, by Tonelli's theorem.
In the one-variable case,
d | |
dx |
(f*g)=
df | |
dx |
*g=f*
dg | |
dx |
where
d | |
dx |
\partial | |
\partialxi |
(f*g)=
\partialf | |
\partialxi |
*g=f*
\partialg | |
\partialxi |
.
A particular consequence of this is that the convolution can be viewed as a "smoothing" operation: the convolution of f and g is differentiable as many times as f and g are in total.
These identities hold for example under the condition that f and g are absolutely integrable and at least one of them has an absolutely integrable (L1) weak derivative, as a consequence of Young's convolution inequality. For instance, when f is continuously differentiable with compact support, and g is an arbitrary locally integrable function,
d | |
dx |
(f*g)=
df | |
dx |
*g.
These identities also hold much more broadly in the sense of tempered distributions if one of f or g is a rapidly decreasing tempered distribution, a compactly supported tempered distribution or a Schwartz function and the other is a tempered distribution. On the other hand, two positive integrable and infinitely differentiable functions may have a nowhere continuous convolution.
In the discrete case, the difference operator D f(n) = f(n + 1) − f(n) satisfies an analogous relationship:
D(f*g)=(Df)*g=f*(Dg).
The convolution theorem states that[21]
l{F}\{f*g\}=l{F}\{f\} ⋅ l{F}\{g\}
where
l{F}\{f\}
f
Versions of this theorem also hold for the Laplace transform, two-sided Laplace transform, Z-transform and Mellin transform.
If
lW
lW\left(C(1)x\astC(2)y\right)=\left(lWC(1)\bulllWC(2)\right)(x ⊗ y)=lWC(1)x\circlWC(2)y
where
\bull
⊗
\circ
This can be generalized for appropriate matrices
A,B
lW\left((Ax)\ast(By)\right)=\left((lWA)\bull(lWB)\right)(x ⊗ y)=(lWAx)\circ(lWBy)
The convolution commutes with translations, meaning that
\taux(f*g)=(\tauxf)*g=f*(\tauxg)
where τxf is the translation of the function f by x defined by
(\tauxf)(y)=f(y-x).
If f is a Schwartz function, then τxf is the convolution with a translated Dirac delta function τxf = f ∗ τx δ. So translation invariance of the convolution of Schwartz functions is a consequence of the associativity of convolution.
Furthermore, under certain conditions, convolution is the most general translation invariant operation. Informally speaking, the following holds
Suppose that S is a bounded linear operator acting on functions which commutes with translations: S(τxf) = τx(Sf) for all x. Then S is given as convolution with a function (or distribution) gS; that is Sf = gS ∗ f.
Thus some translation invariant operations can be represented as convolution. Convolutions play an important role in the study of time-invariant systems, and especially LTI system theory. The representing function gS is the impulse response of the transformation S.
A more precise version of the theorem quoted above requires specifying the class of functions on which the convolution is defined, and also requires assuming in addition that S must be a continuous linear operator with respect to the appropriate topology. It is known, for instance, that every continuous translation invariant continuous linear operator on L1 is the convolution with a finite Borel measure. More generally, every continuous translation invariant continuous linear operator on Lp for 1 ≤ p < ∞ is the convolution with a tempered distribution whose Fourier transform is bounded. To wit, they are all given by bounded Fourier multipliers.
If G is a suitable group endowed with a measure λ, and if f and g are real or complex valued integrable functions on G, then we can define their convolution by
(f*g)(x)=\intGf(y)g\left(y-1x\right)dλ(y).
It is not commutative in general. In typical cases of interest G is a locally compact Hausdorff topological group and λ is a (left-) Haar measure. In that case, unless G is unimodular, the convolution defined in this way is not the same as . The preference of one over the other is made so that convolution with a fixed function g commutes with left translation in the group:
Lh(f*g)=(Lhf)*g.
Furthermore, the convention is also required for consistency with the definition of the convolution of measures given below. However, with a right instead of a left Haar measure, the latter integral is preferred over the former.
On locally compact abelian groups, a version of the convolution theorem holds: the Fourier transform of a convolution is the pointwise product of the Fourier transforms. The circle group T with the Lebesgue measure is an immediate example. For a fixed g in L1(T), we have the following familiar operator acting on the Hilbert space L2(T):
T{f}(x)=
1 | |
2\pi |
\intT{f}(y)g(x-y)dy.
The operator T is compact. A direct calculation shows that its adjoint T* is convolution with
\bar{g}(-y).
By the commutativity property cited above, T is normal: T* T = TT* . Also, T commutes with the translation operators. Consider the family S of operators consisting of all such convolutions and the translation operators. Then S is a commuting family of normal operators. According to spectral theory, there exists an orthonormal basis that simultaneously diagonalizes S. This characterizes convolutions on the circle. Specifically, we have
hk(x)=eikx, k\inZ,
which are precisely the characters of T. Each convolution is a compact multiplication operator in this basis. This can be viewed as a version of the convolution theorem discussed above.
A discrete example is a finite cyclic group of order n. Convolution operators are here represented by circulant matrices, and can be diagonalized by the discrete Fourier transform.
A similar result holds for compact groups (not necessarily abelian): the matrix coefficients of finite-dimensional unitary representations form an orthonormal basis in L2 by the Peter–Weyl theorem, and an analog of the convolution theorem continues to hold, along with many other aspects of harmonic analysis that depend on the Fourier transform.
Let G be a (multiplicatively written) topological group.If μ and ν are finite Borel measures on G, then their convolution μ∗ν is defined as the pushforward measure of the group action and can be written as
(\mu*\nu)(E)=\iint1E(xy)d\mu(x)d\nu(y)
for each measurable subset E of G. The convolution is also a finite measure, whose total variation satisfies
\|\mu*\nu\|\le\left\|\mu\right\|\left\|\nu\right\|.
In the case when G is locally compact with (left-)Haar measure λ, and μ and ν are absolutely continuous with respect to a λ, so that each has a density function, then the convolution μ∗ν is also absolutely continuous, and its density function is just the convolution of the two separate density functions.
If μ and ν are probability measures on the topological group then the convolution μ∗ν is the probability distribution of the sum X + Y of two independent random variables X and Y whose respective distributions are μ and ν.
In convex analysis, the infimal convolution of proper (not identically
+infty
f1,...,fm
Rn
Let (X, Δ, ∇, ε, η) be a bialgebra with comultiplication Δ, multiplication ∇, unit η, and counit ε. The convolution is a product defined on the endomorphism algebra End(X) as follows. Let φ, ψ ∈ End(X), that is, φ, ψ: X → X are functions that respect all algebraic structure of X, then the convolution φ∗ψ is defined as the composition
Xl{\xrightarrow{\Delta}}X ⊗ Xl{\xrightarrow{\phi ⊗ \psi}}X ⊗ Xl{\xrightarrow{\nabla}}X.
The convolution appears notably in the definition of Hopf algebras . A bialgebra is a Hopf algebra if and only if it has an antipode: an endomorphism S such that
S*\operatorname{id}X=\operatorname{id}X*S=η\circ\varepsilon.
Convolution and related operations are found in many applications in science, engineering and mathematics.
i
Ai
Aj
j
i