#include "stdafx.h" #include #include #include IplImage * doPryDown(IplImage * in,int filter=CV_GAUSSIAN_5x5) { IplImage * out=cvCreateImage(cvSize(in->width/2,in->height/2),in->depth,in->nChannels); cvPyrDown(in,out,CV_GAUSSIAN_5x5);//filter=7 目前只支持CV_GAUSSIAN_5x5 return (out); } IplImage * doPyrUp(IplImage * in,int filter=CV_GAUSSIAN_5x5) { IplImage * out=cvCreateImage(cvSize(in->width*2,in->height*2),in->depth,in->nChannels); cvPyrUp(in,out,CV_GAUSSIAN_5x5);//filter=7 目前只支持CV_GAUSSIAN_5x5 return (out); } int main() { cvNamedWindow("in"); cvNamedWindow("out"); IplImage * in= cvLoadImage("C:\\Users\\Administrator\\Desktop\\1001.png"); cvShowImage("in",in); IplImage * out = doPryDown(in); cvShowImage("out",out); cvWaitKey(0);//key point cvReleaseImage(&in); cvReleaseImage(&out); cvDestroyWindow("in"); cvDestroyWindow("out"); }
/* Smoothes the input image with gaussian kernel and then down-samples it. dst_width = floor(src_width/2)[+1], dst_height = floor(src_height/2)[+1] */ CVAPI(void) cvPyrDown( const CvArr* src, CvArr* dst, int filter CV_DEFAULT(CV_GAUSSIAN_5x5) ); /* Up-samples image and smoothes the result with gaussian kernel. dst_width = src_width*2, dst_height = src_height*2 */ CVAPI(void) cvPyrUp( const CvArr* src, CvArr* dst, int filter CV_DEFAULT(CV_GAUSSIAN_5x5) );