Home  >  Article  >  Backend Development  >  How to draw geometric shapes on a picture using Python

How to draw geometric shapes on a picture using Python

WBOY
WBOYOriginal
2023-08-18 13:02:051809browse

How to draw geometric shapes on a picture using Python

How to use Python to draw geometric shapes on pictures

Introduction: Python, as a powerful programming language, can not only perform advanced technologies such as data processing and machine learning, but also Image processing and graphics drawing are also possible. In image processing, it is often necessary to draw various geometric shapes on pictures. This article will introduce how to use Python to draw geometric shapes on pictures.

1. Environment preparation and library installation

Before starting, we first need to install several necessary libraries for Python, mainly including the OpenCV library and the Matplotlib library. You can install it by using the pip command, as shown below:

pip install opencv-python
pip install matplotlib

After the installation is complete, we can start using Python to perform image geometry The shape is drawn.

2. Drawing a Rectangle

Drawing a rectangle is one of the simplest geometric shape drawings and can be achieved through the rectangle function in the OpenCV library. The following is a simple sample code:

import cv2

Read the image

img = cv2.imread('image.jpg')

Draw Rectangle

cv2.rectangle(img, (100, 100), (300, 300), (0, 255, 0), 3)

Display image

cv2 .imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

In the above code, we first read an image through the cv2.imread function , and save it to the img variable. Then we call the cv2.rectangle function to draw a rectangle, where the first parameter is the image variable, the second parameter is the coordinates of the upper left corner of the rectangle, the third parameter is the coordinates of the lower right corner of the rectangle, and the fourth parameter is the color. The fifth parameter is line width. Finally, we display the image through the cv2.imshow function.

3. Draw a circle

Drawing a circle can also be achieved through the OpenCV library, and you can use the circle function. The following is a sample code:

import cv2

Read the image

img = cv2.imread('image.jpg')

Draw a circle

cv2.circle(img, (200, 200), 100, (0, 0, 255), -1)

Show picture

cv2.imshow(' image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

In the above code, we first read an image through the cv2.imread function and Save it to the img variable. Then we call the cv2.circle function to draw a circle, where the first parameter is the image variable, the second parameter is the center coordinate, the third parameter is the radius, the fourth parameter is the color, and the fifth parameter is the line Width, if set to -1, fills the circle. Finally, we display the image through the cv2.imshow function.

4. Drawing lines

Drawing lines is also a common requirement for drawing geometric shapes, which can be achieved using the line function in the OpenCV library. The following is a sample code:

import cv2

Read the image

img = cv2.imread('image.jpg')

Draw the line

cv2.line(img, (100, 100), (300, 300), (255, 0, 0), 5)

Show picture

cv2.imshow ('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

In the above code, we also first read an image through the cv2.imread function, and save it into img variable. Then we call the cv2.line function to draw a straight line, where the first parameter is the picture variable, the second parameter is the starting point coordinates of the line, the third parameter is the end point coordinates of the line, and the fourth parameter is the color. The fifth parameter is line width. Finally, we display the image through the cv2.imshow function.

5. Draw polygons

You can also use the line function in the OpenCV library to draw polygons. You only need to pass in the coordinates of multiple points. The following is a sample code:

import cv2

Read the image

img = cv2.imread('image.jpg')

Define the polygon Several vertices

pts = np.array([[200, 50], [300, 100], [300, 200], [100, 200], [100, 100]], np.int32 )

Draw polygon

cv2.polylines(img, [pts], True, (255, 0, 255), 3)

Display image

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

In the above code, we also first read through the cv2.imread function An image and save it to the img variable. Then we define an array pts, which contains the coordinates of several vertices of the polygon. Finally, we call the cv2.polylines function to draw polygons, where the first parameter is the image variable, the second parameter is the array of vertices, the third parameter indicates whether to close the polygon, the fourth parameter is the color, and the fifth parameter is the line width. Finally, we display the image through the cv2.imshow function.

Conclusion: This article briefly introduces how to use Python to draw geometric shapes on pictures, and provides sample code for rectangles, circles, lines and polygons. By learning these methods, we can better apply Python for image processing and graphics drawing. Hope this article is helpful to everyone.

The above is the detailed content of How to draw geometric shapes on a picture using Python. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn