如何从OpenCV中的目录中依次读取文件?
我是 OpenCV 的新手.我想读取目录中的 XML 文件.我正在使用 FindFirstFile,但我不知道如何获取文件名以进一步作为 cvLoad 的输入.这是我正在使用的代码:
I am new to OpenCV. I want to read XML files in a directory. I am using FindFirstFile, but I am not getting how can I get file names to give as input to cvLoad further. Here is the code I am using:
HANDLE hFind;
WIN32_FIND_DATA FindFileData;
wchar_t* file = L"D:\zainb_s\M.phil\thesis\dataset\dataset_3\RGB_3\RGB\s01_e01- Copy\1_walking\depth\*.xml";
hFind = FindFirstFile(file, &FindFileData);
cout << FindFileData.cFileName[0];
FindClose(hFind);
我想在一个数组中包含文件名以进一步读取文件以进行处理.
I want to have filenames in an array to read files further to process.
推荐答案
如果您使用的是最新版本的 OpenCV,最好避免使用特定于操作系统的方法:
If you're using a recent version of OpenCV, you're better off avoiding OS-specific methods:
vector<string> fn; // std::string in opencv2.4, but cv::String in 3.0
string path = "e:/code/vlc/faces2/*.png";
cv::glob(path,fn,false);
// Now you got a list of filenames in fn.
(哦,再一次,避免不推荐使用的 C-API 函数,比如 cvLoad地狱,拜托!!)
(Ohh, and again, avoid deprecated C-API functions like cvLoad like hell, please!!)
相关文章