admin 管理员组

文章数量: 893696

opencv:图像的放大与缩小

1.涉及函数

函数功能

对图像进行缩放操作

函数原型

CV_EXPORTS_W void resize( InputArray src, OutputArray dst,Size dsize, double fx = 0, double fy = 0,int interpolation = INTER_LINEAR );

函数参数

InputArray src – 原始图像
OutputArray dst – 调整尺寸后图像
Size dsize – 调整后的图像尺寸
double fx = 0 – x轴上的缩放系数,一般用默认参数
double fy = 0 – y轴上的缩放系数,一般用默认参数
int interpolation = INTER_LINEAR – 差值方式,一般用默认参数

常用的差值方式
常用的默认差值方式有以下几种:

  • INTER_NEAREST - 最近邻插值
    INTER_LINEAR - 线性插值(默认)
    INTER_AREA - 区域插值
    INTER_CUBIC - 三次样条插值
    INTER_LANCZOS4 - Lanczos插值

返回值

注意:
参数dsize、fx和 fy,不能同时为0。

2. 代码

#include <iostream>
using namespace std;#include "cv.h"
#include "opencv2\opencv.hpp"
using namespace cv;#if _DEBUG
#pragma comment(lib,"opencv_world340d.lib")
#else
#pragma comment(lib,"opencv_world340.lib")
#endifint main()
{Mat src = imread("D:\\OpencvTest\\lena.jpg");if (src.data != NULL){Mat bigImage;//放大图像resize(src, bigImage, Size(src.cols * 2, src.rows * 2));Mat smallImage;//缩小图像resize(src, smallImage, Size(src.cols / 2, src.rows / 2));imshow("原始图像", src);imshow("放大图像", bigImage);imshow("缩小图像", smallImage);cvWaitKey(0);}else{cout << "图片加载失败,请检查文件是否存在!" << endl;}getchar();return 0;
}

本文标签: opencv图像的放大与缩小