功能:是二维卷积运算函数(与convmtx2相似)。如果a和b是两个离散变量n1和n2的函数,则关于a和b的二维卷积运算数学公式如下:
用法:C = conv2(A,B)
C = conv2(hcol,hrow,A)
C =conv2(...,'shape')
C = conv2(A,B) 计算数组A和B的卷积。如果一个数组描述了一个二维FIR滤波器,则另一个数组被二维滤波。当A的大小为[ma,na],B的大小为[mb,nb]时,C的大小为[ma+mb-1,mb+nb-1]。‘shape’见下表
参数值 | 含义 |
‘full’ | 默认值,返回全部二维卷积值。 |
‘same’ | 返回与A大小相同卷积值的中间部分 |
‘valid’ | 当all(size(A)>=size(B)),C的大小为[ma+mb-1,mb+nb-1];否则,C返回[]。在n维卷积运算中,C的大小为max(size(A)- size(B)+1,0) |
例子:
s = [1 2 1; 0 0 0; -1 -2 -1];
A = zeros(10);
A(3:7,3:7) = ones(5);
H = conv2(A,s);
mesh(H)