OpenCV Image Filtering or 2D Convolution

In this OpenCV article we are going to talk about Image Filtering or 2D Convolution in OpenCV. 

you can do image filtering using low pass filter (LPF) and high pass filters (HPF). for example

if you want to remove the noises of the image you can use LPF filter or if you want to blur an

image you can use LPF. and using HPF filter you can find the edges in the image. in opencv

there is a function cv2.filter2D() that is used for filtering.

 

 

 

 

Read Image Smoothing Techniques in OpenCV

1: OpenCV Averaging Image Blurring in Python

2: OpenCV Gaussian Blurring for Images in Python

3: OpenCV Median Blurring for Images in Python

4: OpenCV Smooth Image with Bilateral Filtering

 

 

 

 

 

So now this is the complete code for OpenCV Image Filtering or 2D Convolution

 

 

 

 

 

This  line of code is used for reading of the image, make sure that you have added an image

in your working directory.

 

 

 

 

In here we are going to create Kernel, and in this example we are going to use a 5 by 5

averaging filter kernel.

 

 

 

 

And now we are going to use cv2.filter() method from OpenCV for filtering. we need to give some 

arguments, the first one is the image source, the second one is the ddepth and the third one is the

kernel that we have already created.

 

 

 

 

 

Because we are going to show our images in Matplotlib, so Matplotlib uses RGB (Red, Green, Blue)

color system, and OpenCV uses BGR (Blue, Green, Red) color system, we need to convert the BGR

color to RGB. if we don’t do this there will be messed up in the color.

 

 

 

 

 

Notecv2.waitKey() is a keyboard binding function. Its argument is the time in milliseconds.

the function waits  specified milliseconds for any keyboard event. If you press any key in that

time, the program continues. If 0 is passed, it waits indefinitely for a key stroke.

 

 

 

 

 

So now run the complete code and this will be the result.

OpenCV Image Filtering or 2D Convolution
OpenCV Image Filtering or 2D Convolution

Subscribe and Get Free Video Courses & Articles in your Email

 

Codeloop
Share via
Copy link
Powered by Social Snap
×