As we discussed in the previous post opencv allows us to perform convolution and correlations easily.

Actually opencv lets you perform correlation only. There is difference in correlation and convolution,

for performing convolution we first rotate mask chosen by 180 degree and then apply the procedure discussed in the part I of this post.

More formally correlation is defined as

whereas convolution is defined as

Actually opencv lets you perform correlation only. There is difference in correlation and convolution,

for performing convolution we first rotate mask chosen by 180 degree and then apply the procedure discussed in the part I of this post.

More formally correlation is defined as

whereas convolution is defined as

As you can see negative arguments in case of mask F are have negative sign. This corresponds to reflection against x and y axis or in other words rotation by 180 degrees.

In standard literature mask is also known as kernel, we will follow this convention throughout this blog here onward.

The filter2D is a function provided by opencv to perform

**correlation**.
Signature of filter2D.

filter2D(src, dst, ddepth, kernel, anchor, delta,Border_Type);

Mat src : source image.

Mat dst : destination image.

ddepth : image depth of the destination.

kernel : Mask function.

Anchor : represents location of anchor/ origo w.r.t the kernel.

delta : a value to be added to each pixel during convolution.

Border_Type : Way to pad image.

Results:

Original Image

With blur operator of size 5x5

## No comments:

## Post a Comment