conv2
discrete 2-D convolution.
Syntax
C = conv2(A,B [,shape]) C = conv2(hrow,hcol,B [,shape])
Parameters
- hrow
- a real or complex vector. 
- hcol
- a real or complex vector. 
- A
- a real or complex 2-D array. 
- B
- a real or complex 2-D array. 
- shape
- an optional character string with possible values: - "full",- conv2computes the full two-dimensional convolution. It is the default value.
- "same",- conv2computes the central part of the convolution of the same size as- A.
- "valid",- conv2computes the convolution parts without the zero-padding of- A.
 
- C
- a real or complex 2-D array. 
Description
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:
- With shape=="full"the dimensions of the resultCare given bysize(A)+size(B)+1. The indices of the center element ofBare defined asfloor((size(B)+1)/2).
- With shape=="same"the dimensions of the resultCare given bysize(A). The indices of the center element ofBare defined asfloor((size(B)+1)/2).
- With shape=="valid"the dimensions of the resultCare given bysize(A)-size(B)+1)ifand(size(A)-size(B))>=0elseCis empty . The indices of the center element ofBare 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.
Examples
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)
History
| Version | Description | 
| 5.4.0 | Function conv2 introduced. | 
| Report an issue | ||
| << conv | Convolution - Correlation | convol >> |