写一段OpenCV裁剪图片的代码,要求 抓的大小是2000 * 1536裁剪至1920* 1536
时间: 2024-01-17 10:31:05 浏览: 143
下面是使用OpenCV库进行图片裁剪的示例代码,将图片从2000x1536裁剪为1920x1536:
```python
import cv2
def crop_image(image_path, output_path, crop_width, crop_height):
# 读取图片
image = cv2.imread(image_path)
# 获取原始图片的宽度和高度
height, width = image.shape[:2]
# 计算裁剪的起始位置
start_x = (width - crop_width) // 2
start_y = (height - crop_height) // 2
# 裁剪图片
cropped_image = image[start_y:start_y+crop_height, start_x:start_x+crop_width]
# 保存裁剪后的图片
cv2.imwrite(output_path, cropped_image)
# 示例用法
image_path = 'input.jpg'
output_path = 'output.jpg'
crop_width = 1920
crop_height = 1536
crop_image(image_path, output_path, crop_width, crop_height)
```
在这个示例中,我们使用了OpenCV库的`imread`函数读取输入图片,并使用`shape`属性获取图片的宽度和高度。然后,通过计算裁剪的起始位置,即原始宽度减去目标宽度除以2,原始高度减去目标高度除以2,确定裁剪的区域。最后,我们使用切片操作来裁剪图片,并使用`imwrite`函数保存裁剪后的图片到指定的输出路径。
请确保安装了OpenCV库,并将输入图片和输出路径替换为实际的文件路径。
阅读全文