string file_path = "H:\\image data\\";
string search_path = file_path + "*.jpg";
vector<string> file_list;
if (!get_filelist_from_dir(search_path, file_list))
cout << "open file error!" << endl;
for (int i = 0; i < file_list.size(); i++)
{
string image_path = file_path + file_list[i];
Mat image = imread(image_path);
/*处理*/
}
get_filelist_from_dir()函数的定义如下:
#include <io.h>
bool get_filelist_from_dir(string path, vector<string>& files)
{
long hFile = 0;
struct _finddata_t fileinfo;
files.clear();
if((hFile = _findfirst(path.c_str(), &fileinfo)) != -1)
{
do
{
if(!(fileinfo.attrib & _A_SUBDIR))
files.push_back(fileinfo.name);
}while(_findnext(hFile, &fileinfo) == 0);
_findclose(hFile);
return true;
}
else
return false;
}

本文介绍了一个使用C++编写的函数get_filelist_from_dir,该函数可以从指定路径下检索所有.jpg格式的文件,并将文件名存入一个字符串向量中。此功能对于批量读取图像进行处理非常有用。
785

被折叠的 条评论
为什么被折叠?



