opencv实现对图片的批量读取、处理、存储:
1.准备工作:
将文件下的图片的名字转为txt的形式保存命名,保存路径也是。
std::ifstream file("E:\\caffetu\\ab\\new 2.txt");
std::ifstream file1("E:\\caffetu\\ab\\new 3.txt");
std::ifstream file2("E:\\caffetu\\ab\\new 4.txt");
while (!file.eof())
{
char dest1_cont[100];
file1.getline(dest1_cont,100);
char dest2_cont[100];
file2.getline(dest2_cont,100);
char txt_cont[100];
file.getline(txt_cont,100);
IplImage *img=cvLoadImage(txt_cont,-1);
//处理
IplImage*out1=cvCreateImage(cvGetSize(img),img->depth,img->nChannels);
IplImage*out2=cvCreateImage(cvGetSize(img),img->depth,img->nChannels);
cvFlip(img,NULL,1);//左右镜像
cvCopy(img, out1);
cvFlip(img,NULL,0);//上下镜像
cvCopy(img, out2);
//保存
cvSaveImage(dest1_cont,out1);
cvSaveImage(dest2_cont,out2);
}
能运行,但是最后有个错误,希望能被改正,谢谢了。