opencv保存图片到指定路径(opencv保存图片到指定路径需要新建文件夹吗)

[img]

简介:

OpenCV是一款非常流行的计算机视觉库,它提供了许多图像处理的功能。其中,保存图片是非常常见的操作之一。本文将介绍如何使用OpenCV保存图片到指定路径。

多级标题:

一、保存图片

二、指定路径保存图片

三、完整代码

内容详细说明:

一、保存图片

在OpenCV中,我们可以使用imwrite函数来保存一张图片。该函数的语法如下:

```

bool imwrite(const String& filename, InputArray img, const std::vector& params = std::vector())

```

其中,filename表示保存的文件名,img表示要保存的图片对象。params表示一些可选参数,例如图片质量、压缩等级等。该函数返回bool类型。

下面的示例展示了如何保存一张图片:

```

#include

#include

using namespace cv;

using namespace std;

int main(int argc, char** argv)

Mat img = imread("test.jpg"); // 读取一张图片

imwrite("output.jpg", img); // 保存图片

return 0;

```

在上述示例中,我们首先使用imread函数读取了一张图片。接着,使用imwrite函数将其保存在了工程目录下命名为output.jpg的文件中。

二、指定路径保存图片

如果我们想将图片保存在指定路径下,可以在filename参数中加上路径信息。例如,下面的代码将图片保存在了D盘下的test文件夹中:

```

imwrite("D:/test/output.jpg", img);

```

如果路径中包含了空格等特殊字符,可以用双引号括起来,例如:

```

imwrite("\"D:/My Pictures/output.jpg\"", img);

```

三、完整代码

下面是一个完整的保存图片到指定路径的示例代码:

```

#include

#include

using namespace cv;

using namespace std;

int main(int argc, char** argv)

Mat img = imread("test.jpg"); // 读取一张图片

if (img.empty())

{

cout << "Failed to load image" << endl;

return -1;

}

string path = "D:/test/"; // 指定路径

string filename = path + "output.jpg"; // 带路径的文件名

imwrite(filename, img); // 保存图片

cout << "Image saved to " << filename << endl;

return 0;

```

在上述代码中,我们首先读取了一张图片,并判断其是否加载成功。接着,定义了一个路径path,表示要保存的文件夹路径。然后,将带有路径的文件名filename组合成一个完整的文件路径,最后使用imwrite函数将图片保存在了该文件路径下。

总结:

本文介绍了如何使用OpenCV保存图片到指定路径。需要注意的是,在保存图片时要注意文件名和路径的拼接,以及转义特殊字符等问题。

标签列表