如何用cv2.resize()把图片等比例缩小
时间: 2023-04-06 12:03:33 浏览: 649
可以使用cv2.resize()函数来缩小图片,具体方法如下:
1. 读取图片,使用cv2.imread()函数。
2. 获取图片的宽度和高度,使用img.shape属性。
3. 计算缩小后的宽度和高度,可以使用等比例缩小的公式:new_width = int(old_width * scale_factor),new_height = int(old_height * scale_factor),其中scale_factor是缩小比例。
4. 调用cv2.resize()函数,将图片缩小到指定大小。
5. 保存缩小后的图片,使用cv2.imwrite()函数。
下面是一个示例代码:
import cv2
# 读取图片
img = cv2.imread('image.jpg')
# 获取图片的宽度和高度
old_height, old_width, _ = img.shape
# 计算缩小后的宽度和高度
scale_factor = 0.5
new_width = int(old_width * scale_factor)
new_height = int(old_height * scale_factor)
# 缩小图片
resized_img = cv2.resize(img, (new_width, new_height))
# 保存缩小后的图片
cv2.imwrite('resized_image.jpg', resized_img)
相关问题
cv2.resize更改图片大小
cv2.resize是一个OpenCV库中的函数,用于改变图片的尺寸。可以通过设置参数来实现图像大小的调整。具体使用方法如下:
- src:输入图像
- dsize:变化后的尺寸
- dst:输出图像,默认为None
- fx,fy:沿x轴和y轴方向的缩放比例
- interpolation:插值算法,用于决定如何调整图像的大小
举个例子,如果要将一张图片调整为512x512的尺寸,可以使用以下代码:
``` python
import cv2
img = cv2.imread('input.jpg') # 读取输入图像
resized_img = cv2.resize(img, (512, 512)) # 调整图像大小为512x512
cv2.imwrite('output.jpg', resized_img) # 将调整后的图像保存为output.jpg
```
在这个例子中,我们使用了cv2.imread读取输入图像,然后使用cv2.resize将图像大小调整为指定的尺寸,最后使用cv2.imwrite保存调整后的图像为output.jpg。<em>1</em><em>2</em><em>3</em>
#### 引用[.reference_title]
- *1* *3* [opencv改变图片大小,cv2.resize方法详解](https://blog.csdn.net/m0_51545690/article/details/123957299)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item]
- *2* [python——使用cv2.resize改变图像大小(含代码)](https://blog.csdn.net/wenqiwenqi123/article/details/128836487)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item]
[ .reference_list ]
用cv2.resize写一个示例代码,两种不同缩放方法
好的,下面是一个使用cv2.resize函数进行图像缩放的示例代码,其中包括了两种不同的缩放方法:
```python
import cv2
# 读取图像
img = cv2.imread('test.jpg')
# 缩放方法1:指定输出图像大小
resized1 = cv2.resize(img, (500, 500))
# 缩放方法2:按比例缩放
resized2 = cv2.resize(img, None, fx=0.5, fy=0.5, interpolation=cv2.INTER_LINEAR)
# 显示原图和缩放后的图像
cv2.imshow('Original', img)
cv2.imshow('Resized1', resized1)
cv2.imshow('Resized2', resized2)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
上述代码中,我们首先使用cv2.imread函数读取了一张图像,然后使用cv2.resize函数进行了两种不同的缩放方法:
- 缩放方法1:指定输出图像的大小为(500, 500),即将原图缩放为500x500的大小。
- 缩放方法2:使用了fx=0.5和fy=0.5参数,按比例将原图缩小为一半大小。
最后,我们使用cv2.imshow函数将原图和缩放后的图像显示出来。