Found 184 Articles for OpenCV

How to match image shapes in OpenCV Python?

Shahid Akhtar Khan
Updated on 28-Sep-2022 07:11:54

5K+ Views

We use cv2.matchShapes() function to match two image shapes. This function returns a metric showing the similarity between the image shapes. This function uses Hu-Moments to calculate the metric value. Lower the metric value, higher the similarity between the image shapes. In the following examples, we will match the shapes from different images and also shapes from a single image. Syntax We use the following syntax to match two image shapes − ret = cv2.matchShapes(cnt1, cnt1, 1, 0.0) Where, cnt1 − The contour points of the first image shape. cnt2 − The contour points of the second image ... Read More

How to find Laplassian pyramids for an image using OpenCV in Python?

Shahid Akhtar Khan
Updated on 28-Sep-2022 07:09:23

1K+ Views

We can form the Laplacian Pyramids from the Gaussian Pyramids. OpenCV does not provide any specific function to construct Laplacian Pyramids. In Laplacian pyramid, images look like edge images only. Laplacian Pyramids are used in image compression as well as in image enhancement. A level in the Laplacian Pyramid is formed by the difference between that level in the Gaussian Pyramid and the expanded version of its upper level in the Gaussian Pyramid. To create a level in the Gaussian pyramid, we apply the cv2.pyrDown() or cv2.pyrUp() function. Steps To construct a three-level Laplacian pyramid, follow the steps given below ... Read More

How to find Gaussian pyramids for an image using OpenCV in Python?

Shahid Akhtar Khan
Updated on 28-Sep-2022 06:58:20

914 Views

In many cases, we need to work with different resolutions and sizes of the same image. In the concept of image pyramid, we find images with different resolutions and sizes of the original image. The Gaussian pyramid is a type of image pyramid. To find a Gaussian pyramid, OpenCV provides us two functions cv2.pyrDown() and cv2.pyrUp(). The function cv2.pyrDown() decreases the resolution by removing the consecutive rows and columns in the input image. The width and height of the output image become half the input image decreasing the area to one-fourth. The function cv2.pyrUp() increases the resolution by adding ... Read More

How to find image gradients using the Scharr operator in OpenCV Python?

Shahid Akhtar Khan
Updated on 28-Sep-2022 06:54:05

550 Views

Using the Scharr operator, we can compute image gradients in horizontal as well as vertical direction using first order derivatives. The gradients are computed for a grayscale image. You can apply Scharr operation on an image using the method cv2.scharr(). Syntax The following syntax is used to compute the image gradients using Scharr derivative − cv2.Scharr(img, ddepth, xorder, yorder) Parameters img − The original input image ddepth − Desired depth of the output image. It has information about what kind of data is stored in the output image. We use cv2.CV_64F to as ddepth. It is a 64bit ... Read More

How to draw polylines on an image in OpenCV using Python?

Shahid Akhtar Khan
Updated on 27-Sep-2022 14:01:39

4K+ Views

To draw polylines on an image, we use the method cv2.polylines(). We can draw open or closed polylines on the image. The first and last points are not connected while drawing an open polyline. Syntax The syntax of cv2.polylines() is as follows − cv2.polylines(src, [pts], isClosed, color, thickness) Parameters src − It's the input image on which the polylines to be drawn. pts − List of the array of pints. isClosed − Set isClosed=True to draw a closed polyline, for an open polyline set isClosed=False. color − It is the color of the line. thickness − Its thickness ... Read More

How to find the image gradients using Sobel and Laplacian derivatives in OpenCV Python?

Shahid Akhtar Khan
Updated on 27-Sep-2022 13:51:22

2K+ Views

Using the Sobel operator, we can compute image gradients in horizontal as well as vertical direction. The gradients are computed for a grayscale image. The Laplacian operator computes the gradients using the second-order derivatives. Syntax The following syntaxes are used to compute the image gradients using Sobel and Laplacian derivatives − cv2.Sobel(img, ddepth, xorder, yorder, ksize) cv2.Laplacian(img, ddepth) Parameters img − The original input image. ddepth − Desired depth of the output image. It has information about what kind of data is stored in the output image. We use cv2.CV_64F to as ddepth. It is a 64bit floating-point ... Read More

How to compute the morphological gradient of an image using OpenCV in Python?

Shahid Akhtar Khan
Updated on 27-Sep-2022 13:49:00

631 Views

The morphological gradient is computed as the difference between the dilation and erosion of an image. We use cv2.morphologyEx() method to compute the morphological gradients. Morphological gradient is used in segmentation, edge detection and to find the outline of an object. Syntax Here is the syntax used for this method − cv2.morphologyEx(img, op, kernel) Where, img − The original input image. op − Type of morphological operation. We use cv2.MORPH_GRADIENT. kernel − The kernel. We can define the kernel as a numpy matrix of all ones of dtye uint8. Steps You can use the following steps to ... Read More

How to apply custom filters to images (2D convolution) using OpenCV Python?

Shahid Akhtar Khan
Updated on 27-Sep-2022 13:45:58

2K+ Views

In this tutorial, we will see how to apply two different low-pass filters to smooth (remove noise from) the image. The two filters are filter2D and boxFilter. These filters are 2D filters in space. Applying 2D filters to images is also known as the "2D Convolution operation". These filters are commonly referred to as averaging filters. The main disadvantage of these filters is that they also smooth the edges in the image. If you don't want to smooth the edges, you can apply a "bilateral filter". A bilateral filter operation preserves the edges.Syntax Following are the syntaxes of Filter2D and ... Read More

How to apply Perspective Transformations on an image using OpenCV Python?

Shahid Akhtar Khan
Updated on 27-Sep-2022 13:23:34

5K+ Views

In Perspective Transformation, the straight lines remain straight even after the transformation. To apply a perspective transformation, we need a 3×3 perspective transformation matrix. We need four points on the input image and corresponding four points on the output image. We apply the cv2.getPerspectiveTransform() method to find the transformation matrix. Its syntax is as follows − M = cv2.getPerspectiveTransform(pts1, pts2) where, pts1 − An array of four points on the input image and pts2 − An array of corresponding four points on the output image. The Perspective Transformation matrix M is a numpy array. We pass M ... Read More

How to convert a colored image to HLS in OpenCV using Python?

Shahid Akhtar Khan
Updated on 27-Sep-2022 13:18:27

3K+ Views

A color (RGB) image has three channels, Red, Blue and Green. A colored image in OpenCV has a shape in [H, W, C] format, where H, W, and C are image height, width and number of channels. All three channels have a value range between 0 and 255. An HLS image also has three channels, the Hue, Lightness and Saturation channels. In OpenCV, the values of the Hue channel range from 0 to 179 whereas the Lightness and Saturation channels range from 0 to 255. In OpenCV, the color image loaded using cv2.imread() function is always in BGR format. To ... Read More

Previous 1 ... 7 8 9 10 11 ... 19 Next
Advertisements