1、功能描述:
对于已有图片,限定其最长边在某个值之内(最短边原理一致);
2、IplImage*代码实现:
IplImage *ReadImageToResize(
IplImage* pSrcImage, //原图
const int l_side) //最长边阈值
{
int height , width; //记录原图宽、高
int long_side, short_side; //记录原图长边、短边
CvSize czSize; //记录目标图像尺寸
IplImage *pDstImage = NULL; //声明目标图像,初始化为NULL,一定要初始化!
height = pSrcImage->height;
width = pSrcImage->width;
if(height > width){ //获取原图长边与短边
long_side = height;
short_side = width;
}else{
long_side = width;
short_side = height;
}
if(long_side <= l_side){ //原图长边在阈值l_side内,则选用原图
pDstImage = cvCloneImage(pSrcImage);
return pDstImage;
}else if(long_side == height){ //确定长边是高还是宽,已确定目标图像宽高
czSize.width = (int)((l_side*width)/height);
czSize.height = l_side;
}else if(long_side