我有代码输入图像名称,如IMG01。
ostringstream input;
input << z << ".jpg";
string filename = input.str();
const char* filename1 = filename.c_str(); [image processing here...]
然后,我想保存使用cvSaveImage
名称bwIMG01.jpg的图像结果。经验:
cvSaveImage("bwIMG01.jpg", imgBW);
我的问题是编写更改每个图像的输出名称。我已经尝试了下面的代码,但它是不工作....
char savedImg [30];
string savedCode = "bw";
savedImg = savedCode+filename;
cvSaveImage(savedImg, imgBiner);
任何想法?
改为:
cvSaveImage(string(savedCode+filename).c_str(), imgBiner);
建议:因为你使用的是c++,你应该使用新的c++ API来代替,它会直接工作:
imwrite(savedCode+filename, imgBiner);
请使用c++ api和方便的cv::format()代替:
cv::Mat imBW;
for ( int i=0; i<30; i++ )
imwrite( format("bwIMG%02d.jpg", i), imgBW);
再次,请避免使用旧的c-api,它不再开发