我确实有一个用指针作为参数创建的函数。该参数将用于在最后保存图像。每次我想使用所需参数调用该函数时,我希望保存的图像文件具有指定的名称。我向你展示如何:
void SaveImage(IplImage *img)
{
...
cvSaveImage("C:/img.png", img);
...
}
调用函数时:SaveImage(image1),我想在我的 C:/ 上有一个名为 image.png 的图像
你能帮我解决这个问题吗?
我确实有一个用指针作为参数创建的函数。该参数将用于在最后保存图像。每次我想使用所需参数调用该函数时,我希望保存的图像文件具有指定的名称。我向你展示如何:
void SaveImage(IplImage *img)
{
...
cvSaveImage("C:/img.png", img);
...
}
调用函数时:SaveImage(image1),我想在我的 C:/ 上有一个名为 image.png 的图像
你能帮我解决这个问题吗?
显然,你不能用唯一可行的答案来回答这个问题,因为你被否决了......
所以,我将改写我的答案:
您需要将两个变量传递给 SaveImage:
void SaveImage(const char *name, IplImage *img)
{
...
cvSameImage(name, img);
}
然后您的调用代码将必须生成正确的名称,例如:
SaveImage("c:\image.png", image);
SaveImage("c:\other.png", other);
现在,当然,如果您真正想要的只是一个唯一名称,而不是反映代码中变量名称的名称,那么还有很多其他可能性,例如使用包含序列号的格式化字符串,随机数tmpnam()
或其他类似方案。