Image Processing with Python OpenCV

Image Processing with Python OpenCV

OpenCV is an open source computer vision library for processing image and video data. It provides many functions including image processing, feature detection, object recognition, etc. This article will introduce how to use Python and OpenCV for image processing.

Install OpenCV

First, we need to install the OpenCV library. Run the following command in a terminal:

pip install opencv-python

Load and display images

Before we can start working with images, we need to load the image and display it. Assuming we have an image file named "image.jpg", the image can be loaded and displayed using the following code:

import cv2

# 加载图像
image = cv2.imread("image.jpg")

# 显示图像
cv2.imshow("Image", image)
cv2.waitKey(0)
cv2.destroyAllWindows()

After running the above code, a window will pop up showing the loaded image.

Image Processing

OpenCV provides many image processing functions. Here are some examples of commonly used image processing operations:

Grayscale

Converting color images to grayscale can simplify image processing tasks. Convert the image to grayscale using the following code:

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("Gray Image", gray_image)
cv2.waitKey(0)
cv2.destroyAllWindows()

edge detection

Edge detection is a commonly used image processing technique for detecting boundaries in images. Here is an example of how to use the Canny edge detection algorithm for edge detection:

edges = cv2.Canny(image, 100, 200)
cv2.imshow("Edges", edges)
cv2.waitKey(0)
cv2.destroyAllWindows()

image scaling

Resizing an image can change the dimensions at which it is displayed or processed. Here's an example of how to scale an image:

resized_image = cv2.resize(image, (500, 500))
cv2.imshow("Resized Image", resized_image)
cv2.waitKey(0)
cv2.destroyAllWindows()

image rotation

Images can be rotated using a rotation matrix. Here's an example of how to rotate an image:

rows, cols = image.shape[:2]
rotation_matrix = cv2.getRotationMatrix2D((cols/2, rows/2), 45, 1)
rotated_image = cv2.warpAffine(image, rotation_matrix, (cols, rows))
cv2.imshow("Rotated Image", rotated_image)
cv2.waitKey(0)
cv2.destroyAllWindows()

image save

The processed image can be saved to a file using the following code:

cv2.imwrite("processed_image.jpg", image)

Summarize

This article explains how to use Python and OpenCV for image processing. We learned how to load and display images, and some common image manipulation operations. Hope this article helps you!

Guess you like

Origin blog.csdn.net/sinat_35773915/article/details/131978959