首页 > 编程语言 >C++ 17 遍历文件夹图片文件进行循环操作

C++ 17 遍历文件夹图片文件进行循环操作

时间:2023-02-22 18:24:06浏览次数:34  
标签:std 遍历 obj 17 image C++ entry path cv

#include <filesystem>
using namespace std;
namespace fs = std::filesystem;

		
string path = filepath; // 替换为指定目录的路径 for (const auto& entry : fs::directory_iterator(path)) { if (entry.is_regular_file() && entry.path().extension() == ".jpg") { //std::cout << entry.path() << std::endl; // 输出jpg文件路径 fs::path dPath = entry.path(); string ddPath = dPath.string(); cv::Mat m = cv::imread(ddPath, 1); if (m.empty()) { fprintf(stderr, "cv::imread %s failed\n", imagepath); return -1; } double t1 = (double)cv::getTickCount(); std::vector<lineMLSD> lines; detect_mlsd(m, lines); //////////draw///////////////// cv::Mat image = m.clone(); for (size_t i = 0; i < lines.size(); i++) { const lineMLSD& obj = lines[i]; fprintf(stderr, "%d %d %d x %d\n", obj.sp.x, obj.sp.y, obj.ep.x, obj.ep.y); cv::line(image, obj.sp, obj.ep, cv::Scalar(0, 0, 255), 2); } float fps = (double)cv::getTickFrequency() / (cv::getTickCount() - t1); cv::putText(image, "FPS : " + std::to_string(int(fps)), cv::Point(50, 50), cv::FONT_HERSHEY_SIMPLEX, 1.5, cv::Scalar(50, 150, 50), 4); cv::imwrite("out/" + entry.path().filename().string(), image); } }

标签:std,遍历,obj,17,image,C++,entry,path,cv
From: https://www.cnblogs.com/WenJXUST/p/17145414.html

相关文章

  • c++decltype解决模板类型
    1、在模板函数中,通过对模板类型的运算后,并不能确定返回的类型。template<classT1,classT2>voidft(T1x,T2y){?xpy=x+y;}x+y的返回值是无法确定的,可以使用decltyp......
  • JQuery_遍历1_for循环与JQuery_遍历2_each方法
    JQuery_遍历1_for循环遍历1.js的遍历方式for(初始化;循环结束;步长)<!DOCTYPEhtml><html><head><metacharset="UTF-8"><title></ti......
  • C++黑马程序员——P124-126. 赋值 关系运算符重载;函数调用运算符重载
    P124.类和对象——C++运算符重载——赋值运算符重载P125.类和对象——C++运算符重载——关系运算符重载P126.类和对象——C++运算符重载——函数调用运算符重载P124......
  • C++编程思想
    命名空间所有的标准C++标准库都封装在std命名空间中include<iostream.h>相当于:#include<iostread>usingnamespacestd;C++输出格式控制voidtest(){cout<<......
  • XC7A35T-1FTG256C FPGA, Artix-7,MMCM, PLL, 170 I/O,详细参数
    描述Artix-7FPGA能够在多个方面实现更高的性价比,这些方面包括逻辑、信号处理、嵌入式内存、LVDSI/O、内存接口,以及收发器。Artix-7FPGA是全可编程成本优化型产品组合的......
  • 如何使用DevEco Studio创建Native C++应用
     简介本篇主要介绍如何使用DevEcoStudioforOpenAtomOpenHarmony(以下简称“OpenHarmony”)创建一个NativeC++应用。应用采用“NativeC++”模板,实现了通过Node-AP......
  • 算法20:求二叉树最宽的层有多少个节点(层序遍历续)
    ​ 之前我们已经实现了二叉树的层序遍历算法8:LeetCode_二叉树的层序遍历_chen_yao_kerr的博客-CSDN博客和二叉树的序列化与反序列化算法19:LeetCode_二叉树序列化与反序......
  • C++反射机制实现
    直接上代码#include<iostream>#include<map>classBase{public:virtualvoidhello()const=0;};classA:publicBase{public:A(){......
  • C/C++书籍借阅系统[2023-02-22]
    C/C++书籍借阅系统[2023-02-22]1.程序名称:书籍借阅系统2.课题来源:课程组自拟3.课题类型:综合型4.目的和意义:1)综合运用所学知识,解决实际问题2)全面提高学生的程序设计......
  • C++中标准库
    C++中标准库是什么?C++标准库可以分为两部分:标准函数库:由通用的、独立的、不属于任何类的函数组成的。函数库继承自C语言。面向对象类库:这个库是类及其相关函数......