discrete 2-D convolution.
C = conv2(A,B [,shape]) C = conv2(hrow,hcol,B [,shape])
a real or complex vector.
a real or complex vector.
a real or complex 2-D array.
a real or complex 2-D array.
an optional character string with possible values:
"full"
, conv2
computes the full two-dimensional convolution. It is the
default value."same"
, conv2
computes the central part of the convolution of the same
size as A
."valid"
, conv2
computes the convolution parts without the zero-padding of A
.a real or complex 2-D array.
conv2
uses a straightforward formal
implementation of the two-dimensional convolution equation in
spatial form.
C=conv2(A,B [,shape])
computes the
two-dimensional convolution of the arrays A
and B
:
shape=="full"
the
dimensions of the resultC
are given by
size(A)+size(B)+1
. The indices of the
center element of B
are defined as
floor((size(B)+1)/2)
.shape=="same"
the dimensions
of the resultC
are given by
size(A)
. The indices of the center element of
B
are defined as
floor((size(B)+1)/2)
.shape=="valid"
the dimensions
of the result C
are given by
size(A)-size(B)+1)
if
and(size(A)-size(B))>=0
else
C
is empty . The indices of the center
element of B
are defined as [1
1]
.The separable form C=conv2(hrow,hcol,B [,shape])
is equivalent to C=conv2(hrow(:)*hcol(:).',B [,shape])
Note that convol2d can be more efficient for large arrays.
s = [1 2 1; 0 0 0; -1 -2 -1];//Sobel horizontal edge kernel A = zeros(10,10);A(3:7,3:7) = 1; conv2(s,A); //separable form u=[1;0;-1];v=[1 2 1];// u*v=s conv2(u,v,A) | ![]() | ![]() |
Version | Description |
5.4.0 | Function conv2 introduced. |