//采用windows控制台实现计算文件夹中对象总数以及批量读取对象

 //#include <afx.h> //和windows.h是一样的作用
#include <opencv2/opencv.hpp>
#include <windows.h> using namespace cv;
using namespace std; int CBRelationship(string buffer); int main()
{ int count = ; //记录文件夹中对象数目 WIN32_FIND_DATA p; //p是一个用于保存文件信息的结构体
HANDLE h = FindFirstFile("C:/Users/Administrator/Desktop/区分高架定位/*.jpg",&p);
cout<<p.cFileName<<endl;//打印被找到的第一个*.jpg的文件名
while(FindNextFile(h,&p)) //p不断后移,寻找下一个、下下一个*.jpg
{
cout<<p.cFileName<<endl;
count++;
}
cout<<"count="<<count<<endl; //依次自动的对每一幅图像进行相应处理
int i;//处理图像的序号
int result;//处理图像得到的结果
char buffer[];
char imageDirectory[] = "C:/Users/Administrator/Desktop/区分高架定位";//存放图像的目录
char imageFileType[] = "jpg";//图像类型 FILE *fp=fopen("C:/Users/Administrator/Desktop/区分高架定位/result.txt","w");//打开并写入文件 for ( i = ;i <= count;i++)
{ sprintf(buffer,"%s/%d.%s", imageDirectory,i, imageFileType); //创建可变得图像路径buffer result = CBRelationship( buffer);//函数处理后返回值result fprintf(fp,"%d\t",result);//将result存入到文件中 } fclose(fp); //关闭文件
return ;
}

  

2. 利用OpenCV类批量处理文件夹及文件图像并重命名

代码:

 #include <opencv2/opencv.hpp>
#include <iostream>
#include <vector> using namespace cv;
using namespace std; int main()
{
//用于存储训练的数据
cv::Directory TrainDir;//用于遍历路径下文件的类
string path1 = "E:/train/9";//训练样本所在文件夹 9为手动修改文件夹
string exten1 = "*.bmp";//训练样本的后缀名
bool addPath1 = true;//true; //是true则函数返回文件绝对路径和文件名,是false则返回文件名 vector<string> Train_pathnames = TrainDir.GetListFiles(path1, exten1, addPath1);//存储所有待训练样本的路径+文件名 char image_name[] = { };
int digit_tag = path1[path1.size() - ] - ; //遍历目标文件夹,读入所有待训练样本,
for (int i = ; i < Train_pathnames.size(); i++)
{
Mat Image = imread(Train_pathnames[i]);
sprintf_s(image_name, "E:/%d/%d-%d.bmp", digit_tag, digit_tag, i);//定义文件名 可变
imwrite(image_name, Image);
}
return ;
}

OpenCV C++ 计算文件夹中对象文件数目及批量处理后保存到txt文件的更多相关文章

  1. OpenCV2类批量处理文件夹及文件图像 及批量处理后保存到txt文件

    //采用windows控制台实现计算文件夹中对象总数以及批量读取对象 //#include <afx.h> //和windows.h是一样的作用 #include <opencv2/ ...

  2. 如何使用命令将文件夹中的文件名(包括路径)写入到txt文件中

    在cmd中使用 cd /d 路径,进入当前文件夹中 使用 dir /s /b > 0.txt 如图:

  3. sublime text 3 的在文件夹中查找的快捷键没有反应 的bug冲突

    11:19 2015/11/18 sublime text 3 的在文件夹中查找的快捷键没有反应 的bug冲突 在文件夹查找的快捷键:ctrl shift f没有反应,后来发现是百度输入法与它有问题, ...

  4. 得到一个文件夹中所有文件的名称的几个方法(命令指示符, C++, python)

    因为最近一直需要获得一个文件下的所有图片的名称,自己又总是跨平台使用,所以把自己在不同环境之下使用的方法总结如下 1.cmd 模式下 优点:简单 例如,我想将一个文件夹下的所有".jpg&q ...

  5. python批量处理文件夹中文件的问题

    用os模块读取文件夹中文件 原来的代码: import osfrom scipy.misc import imread filenames=os.listdir(r'./unprocess')for ...

  6. 在存放源程序的文件夹中建立一个子文件夹 myPackage。例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage)。在 myPackage 包中创建一个YMD类,该类具有计算今年的年份、可以输出一个带有年月日的字符串的功能。设计程序SY31.java,给定某人姓名和出生日期,计算该人年龄,并输出该人姓名、年龄、出生日期。程序使用YM

    题目补充: 在存放源程序的文件夹中建立一个子文件夹 myPackage.例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage).在 m ...

  7. C++读取文件夹中所有的文件或者是特定后缀的文件

    由于经常有读取一个文件夹中的很多随机编号的文件,很多时候需要读取某些特定格式的所有文件. 下面的代码可以读取指定文件家中的所有文件和文件夹中格式为jpg的文件 参考: http://www.2cto. ...

  8. IO流的练习2 —— 复制单级文件夹中的文件

    需求:把C:\Users\Administrator\Desktop\记录\测试里面的所有文件复制到 C:\Users\Administrator\Desktop\新建文件夹\copy文件夹中 分析: ...

  9. 使用ftp读取文件夹中的多个文件,并删除

    public class FTPUtils { private static final Logger LOG = LoggerFactory.getLogger(FTPUtils.class); / ...

随机推荐

  1. Windows手动添加开机启动项

    @方法1. 添加程序完整路径到注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run下 或者添加到HKEY_CURREN ...

  2. Android中直播视频技术探究之---采集摄像头Camera视频源数据进行推流(采用金山云SDK)

    一.前言 在之前已经详细介绍了Android中的一种视频数据源:Camera,不了解的同学可以点击进入:Android中Camera使用详解 ,在这篇文章中我们介绍了如何采集摄像头的每一帧数据,然后进 ...

  3. 2016年10月28日 星期五 --出埃及记 Exodus 19:13

    2016年10月28日 星期五 --出埃及记 Exodus 19:13 He shall surely be stoned or shot with arrows; not a hand is to ...

  4. C#获取CPUID(MD5输出),网卡ID,主DNS,备用DNS

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...

  5. Limiting To Select Only 5 Check Boxes Out Of Ten In Oracle Forms

    Suppose you want to give an option to user to select only 5 check boxes from given any number of che ...

  6. Linux简介与厂商版本

    Linux简介与厂商版本   作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 1. Linux简介 Linux可以有狭义和广义两种 ...

  7. 打开Domion 提示: 管理员ID过期

    今天打开Domion 提示 管理员ID过期,什么操作都做不了,如是在网上趴了下,发现以下方法好用: 管理员ID文件被设置为允许超期,同时又没有其他ID文件可以用于访问服务器.如果尝试用已经超期的管理员 ...

  8. C#形参,实参,值传递参数,引用传递参数,输出参数,参数数组的学习

    1)形参 形参顾名思义就是形式上的参数,不是实际的参数,它代替实际传入方法的值.在方法体代码中代表了值本身参与运算.形参定义于参数中,它不同于方法体内局部变量,因为是一个变量,在它的作用域内不允许存在 ...

  9. DataTable字符串类型的数字,按照数字类型排序

    protected void Page_Load(object sender, EventArgs e)     {         DataTable dt = new DataTable();   ...

  10. php xml 操作。

    参考 文章:http://www.cnblogs.com/zcy_soft/archive/2011/01/26/1945482.html DOMDocument相关的内容. 属性: Attribut ...