OpenCV中图像的缩放

这里写图片描述

/*************************************************************************
    > File Name: opencv.cpp
    > Author: 
    > Mail: 
    > Created Time: Wed 18 Jul 2018 14:34:42 CST
 ************************************************************************/
/*
OpenCV图像缩放使用的函数是:resize

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_NN      -最近邻插值
     INTER_LINEAR  -双线性插值 (缺省使用)
     INTER_AREA    -使用象素关系重采样,当图像缩小时候,该方法可以避免波纹出现。当图像放大时,类似于 INTER_NN 方法。
     INTER_CUBIC   -立方插值。

说明:dsize与fx和fy必须不能同时为零
*/
#include<iostream>
#include<opencv2/opencv.hpp>
#include<opencv2/imgproc/imgproc.hpp>

using namespace std;
using namespace cv;

int main()
{
    // 读取图片
    Mat srcImage = imread( "./image/3.jpg", CV_LOAD_IMAGE_COLOR );

    if( ! srcImage.data )   //Check for invalid input
    {
        cout << "Could not open or find the image" << endl;
        return -1;
    }

    Mat dstImage1, dstImage2;
    Mat tempImage = srcImage;
    // 显示图片 
    imshow("原图", srcImage);

    // 图片的缩小
    resize( tempImage, dstImage1, Size(tempImage.cols/2, tempImage.rows/2), 0, 0, INTER_NEAREST );
    // 图片的放大
    resize( tempImage, dstImage2, Size(tempImage.cols*2, tempImage.rows*2), 0, 0, INTER_NEAREST );

    imshow("缩小图", dstImage1);
    imshow("放大图", dstImage2);

    waitKey();
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值