我正在使用opencv C ++库开发图像处理项目。我已经能够使用glob()
函数读取图像名称并将文件夹中的图像加载到我的代码中。我遇到的问题是如何以二维数组方式(行列方式)组织图像。 我想为100个人每个人加载10张图片并将其存储在MAT
数组/向量 中,以便我的主题由行和图像表示主题是专栏。
此代码抛出未处理的异常错误。
#include <opencv2/opencv.hpp>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
using namespace cv;
int main()
{
String folder = "E:\\Face Databases\\FG-NET DATASET\\images\\*.JPG";
vector<String> filenames;
int start = folder.find("*");//get the start of the real image label
//cout << "Position = " << start << endl;
glob(folder, filenames, false);
String label[1001];
ofstream labels;
labels.open("labels.csv");
vector<vector<Mat>> myImage;
for (size_t i = 0; i < filenames.size(); ++i)
{
vector<Mat> myImage = imread(filenames[i]);
label[i] = filenames[i].substr(start, 6);
labels << label[i] << "\n";//write labels to a csv file
}
waitKey(0);
return 0;
}