[学习OpenCV攻略][007][缩小图片]

cvPryDown(输入图片,输出图片)

根据输出图片的大小,把输入图片进行压缩

 

cvPryUp(输入图片,输出图片)

根据输出图片的大小,把输入图片进行放大

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include "cv.h"
#include "highgui.h"
 
IplImage *doPyrUp(IplImage *in){
    //assert(in->width%2 == 0 && in->height%2 == 0);
     
    //IplImage *out = cvCreateImage(cvSize(in->width/2, in->height/2), in->depth, in->nChannels);
    IplImage *out = cvCreateImage(cvSize(in->width*2, in->height*2), in->depth, in->nChannels);
     
    //cvPyrDown(in, out);
    cvPyrUp(in, out);
     
    return out;
}
 
int main(int argc, char **argv){
    IplImage *img = cvLoadImage(argv[1]);
    //IplImage *img2 = cvCreateImage(cvSize(img->width/2, img->height/2), img->depth, img->nChannels);
    IplImage *img2 = cvCreateImage(cvSize(img->width*2, img->height*2), img->depth, img->nChannels);
     
    cvNamedWindow("hello1", CV_WINDOW_AUTOSIZE);
    cvNamedWindow("hello2", CV_WINDOW_AUTOSIZE);
    cvShowImage("hello1", img);
     
    //img2 = doPyrDown(img);
    img2 = doPyrUp(img);
     
    cvShowImage("hello2", img2);
     
    cvWaitKey(0);
     
    cvReleaseImage(&img);
    cvReleaseImage(&img2);
    cvDestroyWindow("hello1");
    cvDestroyWindow("hello2");
     
    return 0;
}

 

posted @   盛夏夜  阅读(312)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示