您的位置:首页 > 编程语言 > C语言/C++

3.使用cvPyrDown()缩放图像(一个复杂一点的变换)

2016-08-14 22:49 197 查看
转发自:http://www.cnblogs.com/scut-fm/p/3733560.html

</pre></p><p><pre name="code" class="cpp">// 此头文件包含图像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);

// 定制一个新的图像内存块,以存放缩放结果。
IplImage * out = cvCreateImage (
cvSize (img->width/2, img->height/2),    // 大小为原图的一半
img->depth,    // 深度相同
img->nChannels    // 通道数相同
);

// 该函数实现对图像的缩放功能
cvPyrDown (
img,    // 原图像
out        // 缩放后的图像( 一定要先创建好了才进入函数 )
);

// 创建一个窗口显示缩放后的图像
cvNamedWindow ("缩放后", CV_WINDOW_AUTOSIZE);

// 将图像装载进窗口并显示此窗口
cvShowImage ("缩放后", out);

// 该函数的参数为 0 时,程序将等待用户触发一个按键操作。
// 若参数为正整数,则程序将暂停该整数个毫秒单位直至用户有任何按键。
cvWaitKey (0);

// 释放图像内存块
cvReleaseImage (&img);
cvReleaseImage (&out);

// 关闭窗口同时释放窗口内存块
cvDestroyWindow ("缩放前");
cvDestroyWindow ("缩放后");

return 0;
}


运行结果:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ opencv 图片 函数
相关文章推荐