opencv放大缩小图片
时间: 2023-12-04 15:42:00 浏览: 211
下面是使用OpenCV进行图像缩放的示例代码:
```python
import cv2
# 读取原始图像
img = cv2.imread('image.jpg')
# 缩小图像
smaller_img = cv2.resize(img, (0, 0), fx=0.5, fy=0.5)
# 放大图像
bigger_img = cv2.resize(img, (0, 0), fx=2, fy=2)
# 显示原始图像、缩小后的图像和放大后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Smaller Image', smaller_img)
cv2.imshow('Bigger Image', bigger_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们首先使用`cv2.imread()`函数读取原始图像。然后,我们使用`cv2.resize()`函数来缩小和放大图像。`cv2.resize()`函数的第一个参数是原始图像,第二个参数是调整后的图像尺寸,第三个和第四个参数是x轴和y轴上的缩放系数,第五个参数是差值方式。在这个例子中,我们将x轴和y轴上的缩放系数设置为0.5和2,分别对图像进行了缩小和放大操作。最后,我们使用`cv2.imshow()`函数显示原始图像、缩小后的图像和放大后的图像。
相关问题
opencv放大缩小C++
使用OpenCV进行图像的放大和缩小,可以使用cv::resize函数。该函数可以通过指定缩放系数或目标图像大小来实现对图像的缩放。
下面是一个简单的示例代码,演示如何使用cv::resize函数进行图像的放大和缩小:
```c++
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
// 读取图像
Mat image = imread("lena.jpg");
// 缩小图像
Mat small_image;
resize(image, small_image, Size(image.cols / 2, image.rows / 2), 0, 0, INTER_LINEAR);
// 放大图像
Mat large_image;
resize(image, large_image, Size(image.cols * 2, image.rows * 2), 0, 0, INTER_LINEAR);
// 显示图像
imshow("Original Image", image);
imshow("Small Image", small_image);
imshow("Large Image", large_image);
waitKey(0);
return 0;
}
```
在这个例子中,我们首先读取了一个名为lena.jpg的图像。然后,我们使用cv::resize函数来缩小和放大这个图像。缩小图像时,我们将图像的大小减半,并使用INTER_LINEAR插值算法来进行图像的重采样。放大图像时,我们将图像的大小扩大一倍,并再次使用INTER_LINEAR插值算法进行重采样。
最后,我们使用imshow函数显示原始图像、缩小图像和放大图像,并使用waitKey函数等待用户按下任意键。
opencv 放大图片
OpenCV 中放大图片可以使用 `cv2.resize` 函数,该函数可以对图片进行缩放和放大操作。具体用法如下:
```python
cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]]) → dst
```
其中,参数含义如下:
- `src`:待处理的原始图像。
- `dsize`:输出图像的大小,可以是一个元组(宽度,高度),也可以是一个整数表示缩放比例。
- `dst`:输出图像,可以为空。
- `fx`:在水平方向上的缩放比例。
- `fy`:在垂直方向上的缩放比例。
- `interpolation`:缩放插值方法,可以是 `cv2.INTER_NEAREST`、`cv2.INTER_LINEAR`、`cv2.INTER_CUBIC` 等。
下面是一个示例代码,用于对一张图片进行放大操作:
```python
import cv2
# 读取图像
img = cv2.imread('example.jpg')
# 获取原始图像大小
height, width = img.shape[:2]
# 放大图片
resized_img = cv2.resize(img, (2*width, 2*height), interpolation = cv2.INTER_CUBIC)
# 显示结果
cv2.imshow('original', img)
cv2.imshow('resized', resized_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,`example.jpg` 是一张 JPEG 格式的图片,使用 `cv2.imread` 函数读取。使用 `img.shape` 获取原始图像的大小,然后将其放大两倍,并使用 `cv2.imshow` 函数显示原始图像和放大后的图像。
阅读全文