OpenCV改变图像大小的操作

来源:互联网 发布:moent.js 编辑:程序博客网 时间:2024/05/16 06:29
FILE *fp;
char buf[250];
char buf_2[250];
Mat img1;
Mat img2;
int ImageIndex ;


struct _finddata_t ff;
long hfindfile; 
ImageIndex=1;
hfindfile=_findfirst("\\00\\*.JPG",&ff);
if (hfindfile!=-1)
{
while(true)
{
strcpy(buf,"D:\\00\\");
strcat(buf,ff.name);
img1=imread(buf,1);
resize(img1,img2,Size(120,120),0,0,CV_INTER_LINEAR);
strcpy(buf_2,"D:\\11\\");
strcat(buf_2,ff.name);
imwrite(buf_2,img2);


if (_findnext(hfindfile,&ff)!=0)
{
break;
}
ImageIndex++;
if (ImageIndex==100)
{
_findclose(hfindfile);
}
}
}

_findclose(hfindfile);



void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR )

各个参数的意义比较直观,但是需要注意的是dsizefxfy必须不能同时为零,也就是说要么dsize不为零而fxfy同时可以为0,要么dsize0fxfy不同时为0resize函数的目标大小可以是任意的大小,可以不保持长宽比率,删除的像素或者新增的像素值通过interpolation(内插)控制;

 


0 0
原创粉丝点击