int main(int argc,char** argv){
//图像金字塔是图像的集合,集合中所有的图像都来源于一个原始图像,并且是通过对原始图像不断的降采样获得
IplImage*src=cvLoadImage("3.jpg",1);
IplImage*down=cvCreateImage(cvSize(src->width/2,src->height/2),IPL_DEPTH_8U,src->nChannels);
IplImage*up=cvCreateImage(cvSize(src->width*2,src->height*2),IPL_DEPTH_8U,src->nChannels);
//cvPyrDown()函数是从金字塔中的上一级生成下一级图像,删除了所有的偶数行和偶数列,使面积缩小到1/4
cvPyrDown(src,down,CV_GAUSSIAN_5x5);
//拉普拉斯金字塔是从金字塔底层图像中向上采样重建图像,新增的偶数行、列用0填充,使面积变为原来的4倍。
cvPyrUp(src,up,CV_GAUSSIAN_5x5);
cvNamedWindow("origal");
cvNamedWindow("up image");
cvNamedWindow("down image");
cvShowImage("origal",src);
cvShowImage("down image",down);
cvShowImage("up image",up);
cvWaitKey(0);
cvReleaseImage(&src);
cvReleaseImage(&down);
cvReleaseImage(&up);
cvDestroyAllWindows();
}
初学opencv-图像金字塔
最新推荐文章于 2023-03-07 13:46:49 发布