前言
有时会碰到一张图片太大了,想将它缩小。本文将讲解一个很好用的函数解决这个问题。
图像尺寸调整函数 cvResize()
// 图像尺寸调整函数
void Resize (
const CvArr * src, // 待处理图像
CvArr * dst, // 处理后图像
int interpolation = CV_LINTER_LINTER //插值方法
)
在调用此函数前,需要定制好处理后图像的格式,再将其内存块地址传入第二个参数;对于第三个参数可暂时不去理会,使用默认参数即可,它的作用是提供一种让像素点发现图像缩放后其对应点的( 插值 )方法。
代码示例
下面的程序将原来图像的尺寸缩短一半:
// 此头文件包含图像IO函数的声明
#include "highgui.h"
// 此头文件包含基本的图像处理函数和高级计算机视觉算法
#include "cv.h"
int main (void) {
// 将D盘目录下名为" 1.jpg "的图像加载至内存并获得一个指向该图像内存块的指针img
IplImage * img = cvLoadImage ("D:\\1.jpg");
// 创建一个窗口显示调整前的图像
cvNamedWindow ("处理前", CV_WINDOW_AUTOSIZE);
// 将图像装载进窗口并显示此窗口
cvShowImage ("处理前", img);
// 创建一个新的图像内存块&