opencv_study第四篇|缩放图像

缩放图像

#include <opencv2/opencv.hpp>
#pragma comment(linker,"/subsystem:\"windows\" /entry:\"mainCRTStartup\"")//隐藏控制台窗口
int main()
{
	const char *pstrImageName = "美女001.jpg";
	const char *pstrSaveImageName = "美女001缩放图.jpg";
	const char *pstrWindowsSrcTitle = "原图";
	const char *pstrWindowsDstTitle = "缩放图";

	double fScale=0.5;//缩放倍数
	CvSize czSize;//目标尺寸

	IplImage *pSrcImage = cvLoadImage(pstrImageName,CV_LOAD_IMAGE_UNCHANGED);//从文件中读取图像
	IplImage *pDstImage = NULL;//设置空指针

	czSize.width = pSrcImage->width * fScale;//计算目标图像的宽
	czSize.height = pSrcImage->height * fScale;//计算目标图像的长

	pDstImage = cvCreateImage(czSize,pSrcImage->depth,pSrcImage->nChannels);//创建图像
	cvResize(pSrcImage,pDstImage,CV_INTER_AREA);//缩放图像

	cvNamedWindow(pstrWindowsSrcTitle,CV_WINDOW_AUTOSIZE);//创建窗口
	cvNamedWindow(pstrWindowsDstTitle,CV_WINDOW_AUTOSIZE);//创建窗口看

	cvShowImage(pstrWindowsSrcTitle,pSrcImage);//在指定的窗口中显示图像
	cvShowImage(pstrWindowsDstTitle,pDstImage);//在指定的窗口中显示图像

	cvWaitKey();//使程序暂停

	cvSaveImage(pstrSaveImageName,pDstImage);//保存图像

	cvDestroyWindow(pstrWindowsSrcTitle);//销毁窗口
	cvDestroyWindow(pstrWindowsDstTitle);//销毁窗口
	cvReleaseImage(&pSrcImage);//释放内存
	cvReleaseImage(&pDstImage);//释放内存
	return 0;


}


你可能感兴趣的:(opencv)