当前位置: 首页 > news >正文

C++读取文件夹下多个文件,包括图片等等

话不多说,直接上代码:

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

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

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

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

http://www.lryc.cn/news/178619.html

相关文章:

  • DirectX 12 学习笔记 -结构
  • 【Redis】Redis 的学习教程(十二)之在 Redis使用 lua 脚本
  • 标准/扩展库中对象的导入与使用
  • 87、Redis 的 value 所支持的数据类型(String、List、Set、Zset、Hash)---->List相关命令
  • Celery结合flask完成异步任务与定时任务
  • 前端项目练习(练习-001-纯原生)
  • 基于微信小程序的游戏账号交易买卖平台设计与实现(源码+lw+部署文档+讲解等)
  • 2023 年 Bitget Wallet 测评
  • 医疗图像分割指标
  • 零代码编程:用ChatGPT批量修改文件夹名称中的大小写
  • webpack:详解cache模块常用配置
  • 云原生Kubernetes:Pod控制器
  • 数据库基础与MySQL入门
  • 探索Java爬虫框架:解锁网络数据之门
  • 智慧燃气平台的总体架构到底应怎样设计?
  • MonkeyRunner测试步骤
  • Konva基本处理流程和相关架构设计
  • 人工智能AI知多少?
  • leetcode1610. 可见点的最大数目(java)
  • Apache Flume
  • 【切片】基础不扎实引发的问题
  • CVE-2023-5129 libwebp堆缓冲区溢出漏洞影响分析
  • leetcode做题笔记155. 最小栈
  • 蓝海彤翔亮相2023新疆网络文化节重点项目“新疆动漫节”
  • 【AI视野·今日NLP 自然语言处理论文速览 第四十四期】Fri, 29 Sep 2023
  • 【VsCode】vscode创建文件夹有小图标显示和配置
  • celery分布式异步任务队列-4.4.7
  • 解决M2苹果芯片Mac无法安装python=3.7的虚拟环境
  • Sound/播放提示音, Haptics/触觉反馈, LocalNotification/本地通知 的使用
  • Oracle实现主键字段自增