C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML
OpenCV Image FiltersImage filtering is the process of modifying an image by changing its shades or color of the pixel. It is also used to increase brightness and contrast. In this tutorial, we will learn about several types of filters. Bilateral FilterOpenCV provides the bilateralFilter() function to apply the bilateral filter on the image. The bilateral filter can reduce unwanted noise very well while keeping edges sharp. The syntax of the function is given below: cv2.bilateralFilter(src, dst, d, sigmaSpace, borderType) Parameters:
Consider the following example: import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread(r'C:\Users\DEVANSH SHARMA\baloon.jpg',1) kernel = np.ones((5,5),np.float32)/25 blur = cv2.bilateralFilter(img,9,75,75) plt.subplot(121),plt.imshow(img),plt.title('Original') plt.xticks([]), plt.yticks([]) plt.subplot(122),plt.imshow(blur),plt.title('Bilateral Filter') plt.xticks([]), plt.yticks([]) cv2.imshow("Image",blur) Output Box FilterWe can perform this filter using the boxfilter() function. It is similar to the averaging blur operation. The syntax of the function is given below: cv2. boxfilter(src, dst, ddepth, ksize, anchor, normalize, bordertype) Parameters:
Consider the following example: import cv2 import numpy as np # using imread('path') and 0 denotes read as grayscale image img = cv2.imread(r'C:\Users\DEVANSH SHARMA\baloon.jpg',1) img_1 = cv2.boxFilter(img, 0, (7,7), img, (-1,-1), False, cv2.BORDER_DEFAULT) #This is using for display the image cv2.imshow('Image',img_1) cv2.waitKey(3) # This is necessary to be required so that the image doesn't close immediately. #It will run continuously until the key press. cv2.destroyAllWindows() Output Filter2DIt combines an image with the kernel. We can perform this operation on an image using the Filter2D() method. The syntax of the function is given below: cv2.Filter2D(src, dst, kernel, anchor = (-1,-1)) Parameters:
Consider the following example: import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread(r'C:\Users\DEVANSH SHARMA\baloon.jpg',1) kernel = np.ones((5,5),np.float32)/25 dst = cv2.filter2D(img,-1,kernel) plt.subplot(121),plt.imshow(img),plt.title('Original') plt.xticks([]), plt.yticks([]) plt.subplot(122),plt.imshow(dst),plt.title('Filter2D') plt.xticks([]), plt.yticks([]) plt.show() Output
Next TopicOpenCV Image Threshold
|