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. |