cv2.resize例子
时间: 2023-07-05 19:32:57 浏览: 120
下面是一个使用cv2.resize函数调整图像大小的简单示例:
```python
import cv2
# 读取原始图像
img = cv2.imread('image.jpg')
# 调整大小为指定宽度和高度
new_img = cv2.resize(img, (400, 300))
# 显示原始图像和调整大小后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Resized Image', new_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个示例代码将会把`image.jpg`这个文件调整为宽度为400像素,高度为300像素的大小,并显示原始图像和调整大小后的图像。
相关问题
np.resize与cv2.resize的差别
np.resize和cv2.resize是两个不同的函数,它们的作用也不同。
- np.resize(arr, new_shape)函数是用于调整数组大小的函数,它会返回一个新的数组,新数组的大小由new_shape参数指定。如果新数组的大小比原数组大,那么新数组的内容将会是原数组的重复;如果新数组的大小比原数组小,那么新数组的内容将会是原数组的截取。需要注意的是,np.resize函数不会改变原数组的大小。
- cv2.resize(src, dsize, dst=None, fx=None, fy=None, interpolation=None)函数是用于调整图像大小的函数,它会返回一个新的图像,新图像的大小由dsize参数指定。如果dsize是一个整数,那么新图像的大小将会是原图像大小的dsize倍;如果dsize是一个元组,那么新图像的大小将会是(dsize, dsize)。需要注意的是,cv2.resize函数会改变图像的大小。
下面是一个使用np.resize函数的例子:
```python
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
new_arr = np.resize(arr, (3, 3))
print(new_arr)
```
输出结果为:
```
array([[1, 2, 3],
[4, 5, 6],
[1, 2, 3]])
```
下面是一个使用cv2.resize函数的例子:
```python
import cv2
img = cv2.imread('test.jpg')
new_img = cv2.resize(img, (640, 480))
cv2.imshow('new_img', new_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个例子中,我们读取了一张名为test.jpg的图片,然后将其大小调整为640x480,并显示在屏幕上。
cv2 .resize
cv2.resize是OpenCV中的一个函数,用于调整图像的大小。它可以将输入图像缩小或放大,并支持不同的插值方法。
常见的插值方法有以下几种:
- cv2.INTER_AREA:适用于缩小图像,使用像素区域关系进行重采样。
- cv2.INTER_CUBIC:适用于缩小和放大图像,使用3x3像素邻域进行立方插值。
- cv2.INTER_LINEAR:适用于缩小和放大图像,使用像素之间的线性关系进行重采样。
- cv2.INTER_NEAREST:适用于缩小和放大图像,使用最近邻像素进行重采样。
函数原型如下:
```
cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]])
```
其中,src是输入图像,dsize是输出图像的大小,fx和fy是水平和垂直方向上的缩放比例(当dsize为None时,fx和fy必须指定),interpolation是插值方法。
举个例子,如果要将一个图像放大两倍并使用双线性插值,则可以使用以下代码:
```
import cv2
img = cv2.imread('lena.jpg')
resized_img = cv2.resize(img, None, fx=2, fy=2, interpolation=cv2.INTER_LINEAR)
```
阅读全文