Resize
图像大小变换
void cvResize( const CvArr* src, CvArr* dst, int interpolation=CV_INTER_LINEAR );
-
src
- 输入图像. dst
- 输出图像. interpolation
- 插值方法:
- CV_INTER_NN - 最近邻插值,
- CV_INTER_LINEAR - 双线性插值 (缺省使用)
- CV_INTER_AREA - 使用象素关系重采样。当图像缩小时候,该方法可以避免波纹出现。当图像放大时,类似于 CV_INTER_NN 方法..
- CV_INTER_CUBIC - 立方插值.
函数 cvResize 将图像 src 改变尺寸得到与 dst 同样大小。若设定 ROI,函数将按常规支持 ROI.
实现代码:
/*
* 改变图像的尺寸
*/
#include "highgui.h"
#include "cv.h"
void doResize(IplImage* img)
{
IplImage* dst = cvCreateImage(
cvSize(img->width/2, img->height/2),
img->depth,
img->nChannels
);
cvResize(img, dst,CV_INTER_NN);
cvNamedWindow("dst");
cvShowImage("dst",dst);
cvReleaseImage(&dst);
cvWaitKey(0);
cvDestroyWindow("dst");
}结果:
本文介绍了如何使用OpenCV库中的cvResize函数调整图像尺寸,并详细解释了不同插值方法的效果及适用场景。通过示例代码展示了如何减小图像尺寸。
27万+

被折叠的 条评论
为什么被折叠?



