//采用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 ;
}

OpenCV2类批量处理文件夹及文件图像 及批量处理后保存到txt文件的更多相关文章

  1. OpenCV C++ 计算文件夹中对象文件数目及批量处理后保存到txt文件

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

  2. matlab从文件夹名中获得该文件夹下所图像文件名

    function [s,nameC]=get_FileNameFromFolderPath(path) % 函数调用:[s,nameC]=get_FileNameFromFolderPath(path ...

  3. 脚本工具(获取某个文件夹下的所有图片属性批量生成css样式)

    问题描述: 由于有一次工作原因,就是将某个文件夹下的所有图片,通过CSS描述他们的属性,用的时候就可以直接引用.但是我觉得那个文件夹下的图片太多,而且CSS文件的格式又有一定的规律,所有想通过脚本来生 ...

  4. 编写Java程序,在一个文件夹内,查找占用磁盘空间最大的 jpg 文件,并输出文件大小

    查看本章节 查看作业目录 需求说明: 在一个文件夹内,查找占用磁盘空间最大的 jpg 文件,并输出文件大小 实现思路: 创建ImageFileFilter类实现FilenameFilter接口,且重写 ...

  5. 新建childTest文件夹,里面依然放进我们需要的.py文件即可

    一.模块 我们编写文件:a.py,放在C:\Python34\Lib\sit-packages下,里面写上一句代码为: print('this is a') 之后我们就可以在我们的代码里面引用a.py ...

  6. 2. pushd . :将当前文件夹压入栈,使用popd能够回到该文件夹。

    1.man -t  ls | ps2pdf -> ls.pdf生成pdf格式的ls帮助文件. 2. pushd . :将当前文件夹压入栈,使用popd能够回到该文件夹. 3.find -type ...

  7. SQL C# nvarchar类型转换为int类型 多表查询的问题,查询结果到新表,TXT数据读取到控件和数据库,生成在控件中的数据如何存到TXT文件中

    在数据库时候我设计了学生的分数为nvarchar(50),是为了在从TXT文件中读取数据插入到数据库表时候方便,但是在后期由于涉及到统计问题,比如求平均值等,需要int类型才可以,方法是:Conver ...

  8. np.savetxt()——将array保存到txt文件,并保持原格式

    问题:1.如何将array保存到txt文件中?2.如何将存到txt文件中的数据读出为ndarray类型? 需求:科学计算中,往往需要将运算结果(array类型)保存到本地,以便进行后续的数据分析. 解 ...

  9. java算法面试题:编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。

    package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File ...

随机推荐

  1. oracle配置访问白名单教程

    出于提高数据安全性等目地,我们可能想要对oracle的访问进行限制,允许一些IP连接数据库或拒绝一些IP访问数据库. 当然使用iptables也能达到限制的目地,但是从监听端口变更限制仍可生效.只针对 ...

  2. 动态规划入门——数字三角形(Java)

    动态规划的概念对于新手来说枯燥难懂,就算看懂了,做题的时候依旧抓耳挠腮的毫无头绪,这些比较难理解的算法,还是需要根据例子来一步步学习和理解,从而熟练掌握,下面,咱们就通过一个简单的小例子来学习动态规划 ...

  3. 逆袭之旅DAY31.XIA.JDBC

    2018-07-31 MySQL package oop_emp.com.neusoft.dao; import java.sql.Connection; import java.sql.Driver ...

  4. R语言中的采样与生成组合

    不放回采样:sample(1:10, 5, replace = FALSE) 生成组合:

  5. outline: none;

    outline: none:用在去掉某个选中后显示的外边框,(追求细节) http://www.w3school.com.cn/cssref/pr_outline.asp

  6. react中用pace.js

    pace.js不支持npm, 所以只能直接下载下来,当作普通js引入 我在用的时候怎么都引不到组件里去用 后来终于找到方法了,直接上图了 1.先将pace文件下载来放在公共js目录下,pace.les ...

  7. Java单例模式《二》懒汉式

    package com.study.mode; /** * 单例模式: 懒汉式,需要的时候创建. * @ClassName: SingleBean2 * @author BlueLake * @dat ...

  8. commons-logging,log4j和jdklog的调用方式

    commons-logging包含log4j和jdklog. commons-logging: Log log= LogFactory.getLog(getClass());//commons log ...

  9. Linux文件系统命令 mkdir/rmdir

    命令名:mkdir 功能:创建一个文件夹,和touch的区别是,touch是创建一个文件,后面可以跟绝对路径和相对路径 eg: mkdir ren 命令名:rmdir 功能:删除一个文件夹

  10. leetcode55:跳跃游戏

    解题思路1: 从头往后找每一个为0的元素,判断这个0能够跳过,所有的0都能跳过,则返回True,否则返回False 解题思路2: 从前往后遍历数组,设置一个访问到当前位置i时最远可调到的距离maxle ...