In signal processing, multidimensional discrete convolution refers to the mathematical operation between two functions f and g on an n-dimensional lattice that produces a third function, also of n-dimensions. Multidimensional discrete convolution is the discrete analog of the multidimensional convolution of functions on Euclidean space. It is also a special case of convolution on groups when the group is the group of n-tuples of integers.
Definition
Problem statement and basics Similar to the one-dimensional case, an asterisk is used to represent the convolution operation. The number of dimensions in the given operation is reflected in the number of asterisks. For example, an M-dimensional convolution would be written with M asterisks. The following represents a M-dimensional convolution of discrete signals:
y ( n 1 , n 2 , . . . , n M ) = x ( n 1 , n 2 , . . . , n M ) ∗ ⋯ M ∗ h ( n 1 , n 2 , . . . , n M ) {\displaystyle y(n_{1},n_{2},...,n_{M})=x(n_{1},n_{2},...,n_{M})*{\overset {M}{\cdots }}*h(n_{1},n_{2},...,n_{M})}
For discrete-valued signals, this convolution can be directly computed via the following:
∑ k 1 = − ∞ ∞ ∑ k 2 = − ∞ ∞ . . . ∑ k M = − ∞ ∞ h ( k 1 , k 2 , . . . , k M ) x ( n 1 − k 1 , n 2 − k 2 , . . . , n M − k M ) {\displaystyle \sum _{k_{1}=-\infty }^{\infty }\sum _{k_{2}=-\infty }^{\infty }...\sum _{k_{M}=-\infty }^{\infty }h(k_{1},k_{2},...,k_{M})x(n_{1}-k_{1},n_{2}-k_{2},...,n_{M}-k_{M})}
The resulting output region of support of a discrete multidimensional convolution will be determined based on the size and regions of support of the two input signals. Listed are several properties of the two-dimensional convolution operator. Note that these can also be extended for signals of N {\displaystyle N} -dimensions. Commutative Property:
x ∗ ∗ h = h ∗ ∗ x {\displaystyle x**h=h**x}
Associate Property:
( x ∗ ∗ h ) ∗ ∗ g = x ∗ ∗ ( h ∗ ∗ g ) {\displaystyle (x**h)**g=x**(h**g)}
Distributive Property:
x ∗ ∗ ( h + g ) = ( x ∗ ∗ h ) + ( x ∗ ∗ g ) {\displaystyle x**(h+g)=(x**h)+(x**g)}
These properties are seen in use in the figure below. Given some input x ( n 1 , n 2 ) {\displaystyle x(n_{1},n_{2})} that goes into a filter with impulse response h ( n 1 , n 2 ) {\displaystyle h(n_{1},n_{2})} and then another filter with impulse response g ( n 1 , n 2 ) {\displaystyle g(n_{1},n_{2})} , the output is given by y ( n 1 , n 2 ) {\displaystyle y(n_{1},n_{2})} . Assume that the output of the first filter is given by w ( n 1 , n 2 ) {\displaystyle w(n_{1},n_{2})} , this means that:
w = x ∗ ∗ h {\displaystyle w=x**h}
… excerpt ends here. Continue reading the full article.






