vision.Convolver System object

Package: vision

Compute 2-D discrete convolution of two input matrices


The Convolver object computes 2-D discrete convolution of two input matrices.


H = vision.Convolver returns a System object, H, that performs two-dimensional convolution on two inputs.

H = vision.Convolver(Name,Value) returns a 2-D convolution System object, H, with each specified property set to the specified value. You can specify additional name-value pair arguments in any order as (Name1, Value1,...,NameN,ValueN).

Code Generation Support
Supports MATLAB® Function block: Yes
System Objects in MATLAB Code Generation.
Code Generation Support, Usage Notes, and Limitations.



Specify dimensions of output

This property controls the size of the output scalar, vector, or matrix produced as a result of the convolution between the two inputs. You can set this property to one of Full | Same as first input | Valid. The default is Full. When you set this property to Full, the object outputs the full two-dimensional convolution with dimension, (Ma+Mb-1, Na+Nb-1). When you set this property to Same as first input, the object outputs the central part of the convolution with the same dimensions as the first input. When you set this property to Valid, the object outputs only those parts of the convolution that are computed without the zero-padded edges of any input. For this case, the object outputs dimension, (Ma-Mb+1, Na-Nb+1). (Ma, Na) is the size of the first input matrix and (Mb, Na) is the size of the second input matrix.


Whether to normalize the output

Set to true to normalize the output. The default is false.

 Fixed-Point Properties


cloneCreate 2-D convolver object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs from step method
isLockedLocked status for input attributes and nontunable properties
release Allow property value and input characteristics changes
stepCompute 2-D convolution of input matrices


Compute the 2D convolution of two matrices.

 hconv2d = vision.Convolver;
 x1 = [1 2;2 1];
 x2 = [1 -1;-1 1];
 y = step(hconv2d, x1, x2)


This object implements the algorithm, inputs, and outputs described on the 2-D Convolution block reference page. The object properties correspond to the block parameters.

Was this topic helpful?