当前位置:   article > 正文

C++读取文件夹下多个文件,包括图片等等_windows c++ 获取文件夹下的所有图片

windows c++ 获取文件夹下的所有图片

话不多说,直接上代码:

  1. int main()
  2. {
  3. //读入图片路径下的所有文件,D:\APP\VS\vs_projects_repos\Isp\images
  4. string imgdirpath="D:\\APP\\VS\\vs_projects_repos\\Isp\\proimages\\";
  5. // 只读取文件夹下的png的文件名,也可以改成“*.bmp”或者其他格式
  6. string imgpath = imgdirpath + "*.png";
  7. vector<String> filesVec;//注意只是读取存储文件名的具体路径,不是读取文件
  8. //遍历文件夹,两个参数分别表示文件的路径和保存图像具体路径的Vector容器。
  9. glob(imgpath, filesVec);
  10. if (filesVec.size() == 0)
  11. {
  12. cout << "File is empty!" << endl;
  13. return -1;
  14. }
  15. //此时,filesVec[]里面已经存放了具体到文件夹下各个文件名的路径
  16. //利用循环读取图片进行处理,换成自己想要处理的函数
  17. for (int i = 0; i < filesVec.size(); i++)
  18. {
  19. cout <<endl<< filesVec[i] <<" processing···"<< endl;
  20. Mat dst=imread(filesVec[i]);
  21. //读取自行处理
  22. //如何把处理的多张Mat图片再存到文件夹中可以看下面
  23. }
  24. return 0;
  25. }

vector<String> filesVec在glob()赋值后,filesVec[i]为string类型,如果需要改成char型才能处理,例如有一个自定义函数void rawread(const char* filename),可以在上面的循环加入如下操作:

  1. //将 string 类型的变量转换为 const char* 类型的参数
  2.  Mat src = rawread(filesVec[i].c_str());//

对于如何把处理的多张Mat图片再存到文件夹中可以参考:http://t.csdn.cn/N3n1k

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/281796
推荐阅读
相关标签
  

闽ICP备14008679号