c++批量读取、处理、保存图片
与上一篇文章所说的opencv批量处理文件夹下图片不同
准备:
1、图片名称列表文件txt格式,如下
2、图片文件夹路径
//存储图片路径
string input_image_path = "C:\\Users\\tudejiang\\Desktop\\超声图像VOC格式标准数据集201911\\VOC2007\\save\\";
3、图片处理后保存路径
//保存图片文件路径
string save_image_path = "C:\\Users\\tudejiang\\Desktop\\超声图像VOC格式标准数据集201911\\VOC2007\\save1\\";
4、批量处理代码
#include<iostream>
#include<fstream>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
//单个图像名称
string name;
//单个图片全名地址
string input_image_name;
//单个图片保存地址
string save_image_name;
//存储图片路径
string input_image_path = "C:\\Users\\tudejiang\\Desktop\\超声图像VOC格式标准数据集201911\\VOC2007\\save\\";
//保存图片文件路径
string save_image_path = "C:\\Users\\tudejiang\\Desktop\\超声图像VOC格式标准数据集201911\\VOC2007\\save1\\";
//图片名称列表
string image_list = "C:\\Users\\tudejiang\\Desktop\\img_set.txt";
// 创建文件流接口
ifstream str_file(image_list);
while (getline(str_file,name))
{
//单个图片全名
input_image_name = input_image_path + name;
cout << input_image_name << endl;
Mat src = imread(input_image_name);
//省去图像处理过程
//*****
Mat dst;
dst= src + 100;
save_image_name = save_image_path + name;
cout << save_image_name << endl;
imwrite(save_image_name, dst);
}
return 0;
}
5、由于c++处理文件夹下需要制作一个图片名称的TXT文件
因此还是opencv批量读取和存储文件夹下代码比较方便