0

我确实有一个用指针作为参数创建的函数。该参数将用于在最后保存图像。每次我想使用所需参数调用该函数时,我希望保存的图像文件具有指定的名称。我向你展示如何:

void SaveImage(IplImage *img)
{
...
cvSaveImage("C:/img.png", img);
...
}

调用函数时:SaveImage(image1),我想在我的 C:/ 上有一个名为 image.png 的图像

你能帮我解决这个问题吗?

4

1 回答 1

2

显然,你不能用唯一可行的答案来回答这个问题,因为你被否决了......

所以,我将改写我的答案:

您需要将两个变量传递给 SaveImage:

void SaveImage(const char *name, IplImage *img)
{
   ...
   cvSameImage(name, img);
}

然后您的调用代码将必须生成正确的名称,例如:

SaveImage("c:\image.png", image);

SaveImage("c:\other.png", other);

现在,当然,如果您真正想要的只是一个唯一名称,而不是反映代码中变量名称的名称,那么还有很多其他可能性,例如使用包含序列号的格式化字符串,随机数tmpnam()或其他类似方案。

于 2013-03-11T11:28:06.847 回答