Detailed explanation of opencv image cropping method

 

OpenCV is an open source library for computer vision and machine learning. It contains many image processing functions, including cropping pictures. In Python, we can use OpenCV’s `cv2` module to achieve image cropping.
The following are the detailed steps to crop images using OpenCV:
1. Import the required libraries:
```python
import cv2
```
2. Read the image:
```python
image = cv2.imread('path/to/your/ image.jpg')
```
3. Get the width and height of the image:
```python
height, width, _ = image.shape
```
4. Define the cropping area:
```python
start_row, start_col = int(height * 0.25), int(width * 0.25)
end_row, end_col = int(height * 0.75), int(width * 0.75)
```
Here, we set the upper left corner and lower right corner of the image to 1/4 of the original image and 3/4. You can adjust these values ​​as needed.
5. Crop the image:
```python
cropped_image = image[start_row:end_row, start_col:end_col]
```
6. Display the cropped image:
```python
cv2.imshow('Cropped Image', cropped_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
````
7. Save the cropped image:
`` `python
cv2.imwrite('path/to/save/cropped_image.jpg', cropped_image)
```
Integrating the above codes together, you can get a complete program for cropping images:
```python
import cv2
# Read Image
image = cv2.imread('path/to/your/image.jpg')
# Get the width and height of the image
height, width, _ = image.shape
# Define the cropping area
start_row, start_col = int(height * 0.25), int(width * 0.25)
end_row, end_col = int(height * 0.75), int(width * 0.75)
# Cropped image
cropped_image = image[start_row:end_row, start_col:end_col]
# Display the cropped image
cv2.imshow('Cropped Image', cropped_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
# Save the cropped image
cv2.imwrite('path/to/save/cropped_image.jpg', cropped_image)
```
This is how to crop an image using OpenCV. Hope this helps!

The following are several commonly used OpenCV codes for cropping images:

1. Crop the image in the specified area```python import cv2
# Read the image img = cv2.imread('image.jpg') # Specify the cropping area x, y, w, h = 100, 100, 200, 200 # Crop Image crop_img = img[y:y+h, x:x+w] # Display the cropped image cv2.imshow('crop_img', crop_img) cv2.waitKey(0) cv2.destroyAllWindows() ```` 2. According to Proportionally crop the image```python import cv2 # Read the image img = cv2.imread('image.jpg') # Get the image size height, width = img.shape[:2] # Specify the cropping ratio scale = 0.5 # Calculate cropping Area x, y, w, h = int(width*(1-scale)/2), int(height*(1-scale)/2), int(width*scale), int(height*scale) # Cropping Image crop_img = img[y:y+h, x:x+w]

























# Display the cropped image
cv2.imshow('crop_img', crop_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
````
3. Crop the image according to the target size
```python
import cv2
# Read the image
img = cv2 .imread('image.jpg')
# Specify the target size
target_width, target_height = 200, 200
# Adjust the image size
resized_img = cv2.resize(img, (target_width, target_height))
# Display the adjusted image
cv2.imshow('resized_img ', resized_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```

Guess you like

Origin blog.csdn.net/qq_42751978/article/details/130843731