python 的opencv调整图像大小
时间: 2024-08-14 18:02:29 浏览: 49
基于python OpenCV 数字图像处理软件
在Python中使用OpenCV调整图像大小,通常通过`cv2.resize()`函数实现。这个函数的基本语法如下:
```python
import cv2
def resize_image(image_path, new_width=None, new_height=None, output_path=None):
# 读取图像
img = cv2.imread(image_path)
# 如果只指定新尺寸的一个值,另一个会保持原来的宽度或高度比
if new_width is not None and new_height is None:
ratio = new_width / img.shape
new_height = int(img.shape * ratio)
elif new_height is not None and new_width is None:
ratio = new_height / img.shape
new_width = int(img.shape * ratio)
# 调整图像大小
resized_img = cv2.resize(img, (new_width, new_height), interpolation=cv2.INTER_LINEAR) # 或者选择其他插值方法如cv2.INTER_CUBIC等
# 写入到新的文件(如果指定了output_path)
if output_path:
cv2.imwrite(output_path, resized_img)
else:
return resized_img
# 使用示例
resized_img = resize_image('input.jpg', new_width=800)
```
在这个例子中,你可以通过`new_width`和`new_height`参数直接指定新的宽度和高度,也可以让其中一个保持原始比例。`interpolation`参数控制缩放过程中的插值方法。
阅读全文