我的待分类的图片是按照时间来保存的,所以分开保存的时候我会用时间来创建新的文件夹,把属于同一秒的图片分到同一个文件夹

`void CFileSeparationDlg::OnBnClickedButton2()
{

CString text;
GetDlgItemText(IDC_EDIT1, text);
USES_CONVERSION;
char* fileName= T2A(text);//读取需要分离的图片的路径CString->char*
std::vector <CString>  imgNames;//用来保存图片的名字
readImgNamefromFile(fileName, imgNames);//读入图片名字到数组
CString str;
//MessageBox(str);
int Length = imgNames.size();//获取图片名字数组长度
//MessageBox(Length);
CString csPath;//保存图片的路径
string picture;//图片名字数组CString->string
string  sttSave;//保存时的图片路径
for (int i = 0; i < Length; i++)
{picture = CT2A(imgNames[i].GetString());//图片名字数组CString->stringstring text2= CT2A(text.GetString());//需要分离的图片的路径CString->string//string srtr = fileName + "\\\\" + picture;cv::Mat img = cv::imread(text2 +"\\"+picture);//从指定路径读取图片,不能用fileName + "\\\\" + picture;因为filename是char*//cv::imshow("ImageShow", img);//opencv显示图片
/*  if (!img.data)return -1;*/int j = imgNames[i].GetLength();//每一个图片名字的长度str = imgNames[i].Mid(0, j - 9);//去掉图片名字后缀//MessageBox(str);//if(Second.)int nRet = std::count(Second.begin(), Second.end(), str);//容器中是否有该名字,没有则创建以该名字命名的文件夹并保存图片,若有,则保存图片if(nRet==0){//MessageBox(_T("bu存在"));Second.push_back(str);//去掉图片名字后缀后的字符串入栈GetDlgItem(IDC_EDIT2)->GetWindowText(csPath);//MessageBox(csPath);      //csPath.Replace(_T("\\"), _T("\\\\"));//csPath.Replace()//MessageBox(csPath);csPath = csPath + "\\" + str;//MessageBox(csPath);//CString m_FilePath(L"C:\\File");if (FALSE == CreateDirectory(csPath, NULL))//创建以该名字命名的文件夹{if (ERROR_ALREADY_EXISTS == GetLastError()){TRACE("\n this path is invalid");}else{TRACE("\n this path is exists");}}sttSave = CT2A(csPath.GetString());//保存时的图片路径CString->string//MessageBox(stt);// string temp = std::to_string(i);string addname = temp + ".jpg";//sttSave.append(addname);string stt2 = sttSave + "\\"+ picture ;//在相应文件夹下保存图片cv::imwrite(stt2, img);//写入图片cv::waitKey(0);}else {//MessageBox(_T("存在"));GetDlgItem(IDC_EDIT2)->GetWindowText(csPath);csPath = csPath + "\\" + str;sttSave = CT2A(csPath.GetString());//保存时的图片路径CString->string          string stt2 = sttSave + "\\" + picture;//在相应文件夹下保存图片cv::imwrite(stt2, img);//写入图片cv::waitKey(0);}}MessageBox(_T("分离图片操作完成!!!!!"));

}
`
以下是readImgNamefromFile函数的代码

void readImgNamefromFile(char* fileName, vector <CString> &imgNames){// vector清零 参数设置imgNames.clear();WIN32_FIND_DATA file;int i = 0;char tempFilePath[MAX_PATH + 1];char tempFileName[50];// 转换输入文件名sprintf_s(tempFilePath, "%s/*", fileName);// 多字节转换WCHAR   wstr[MAX_PATH] = { 0 };MultiByteToWideChar(CP_ACP, 0, tempFilePath, -1, wstr, sizeof(wstr));// 查找该文件待操作文件的相关属性读取到WIN32_FIND_DATAHANDLE handle = FindFirstFile(wstr, &file);if (handle != INVALID_HANDLE_VALUE){FindNextFile(handle, &file);FindNextFile(handle, &file);// 循环遍历得到文件夹的所有文件名    do{sprintf_s(tempFileName, "%s", fileName);imgNames.push_back((file.cFileName));//    imgNames[i].Insert(0, 1);i++;} while (FindNextFile(handle, &file));}FindClose(handle);}

把图片按照图片名字分到不同的文件夹中相关推荐

  1. matlab读取一个文件的图片大小,Matlab读取文件夹中子文件夹中的图片并修改尺寸...

    今天被师兄问到如何利用matlab批处理图片,觉得很简单嘛 就让他去百度 结果只百度到处理文件夹中图片的程序 好吧 这里放上如何处理文件夹中子文件夹的图片 现状:在一个名为casia的文件夹中,里面有 ...

  2. python将图片按照标签分类复制到指定的文件夹

    对文件夹test下的图片进行kmeans聚类之后(这里我将k设为7),得到一个txt文件.txt文件中有两列数据,第一列是对应图片属于的类别,第二列是该图片距离质心的距离.如图所示: 现在我新建了0到 ...

  3. 图片名字存在txt文件中,从另一个装有图片的文件夹中筛选对应的图片。python代码

    txt文件的每一行都存一张图片的名字(带尾缀),从另一个存有全部图片的文件中筛选txt中存在的图片. # -*- coding: UTF-8 -*- # !/usr/bin/env python im ...

  4. python将一个文件夹下图片按比例分在两个文件夹下

    #!/usr/bin/env python # -*- coding:utf-8 -*- # 将一个文件夹下图片按比例分在两个文件夹下,比例改0.7这个值即可 import os import ran ...

  5. 图片重命名,命名方式为:文件夹名字 + _ 顺序 + .jpg

    图片重命名,命名方式为:文件夹名字 + _ 顺序 + .jpg import ospath = "C:/Users/123/Desktop/111/"i = 1 j = 1 for ...

  6. 调用图片文件夹中的任意图片随机显示_他来了,他来了,Mathpix拜拜了~~~文字、表格、公式图片识别神器V0.1测试版...

    (图0) img2txt V0.8 [正式版] 第1步:win10自带截图快捷键:Win+Shift+S,也可以用QQ等截图工具: 第2步:打开软件,完成初始配置(后续调用无需再配置),按需识别: ( ...

  7. python 文件夹中的文件批量处理 高通道tif图片转换成jpg格式

    在数据集的制作中,往往涉及到 文件夹中文件的批量处理操作,而首要的任务便是将获得的数据进行重命名以方便批量读取,随后再进行操作. 一.文件批量重命名 文件夹的批量处理操作关键在于用os库的os.lis ...

  8. 【python】使用python脚本将CelebA中同一人的图片捡到对应单独的文件夹中

    1.目的 CelebA的所有的照片都在一个文件夹中,为了能在dlib训练人脸识别时,方便使用,将CelebA中同一人的图片捡到对应单独的文件夹中. [AI]CelebA数据介绍.下载及说明 2.方法 ...

  9. python如何遍历文件夹中的所有图片_python实现遍历文件夹图片并重命名

    在做深度学习相关项目时,需要标注图片,筛选过后图片名字带有括号,显得比较乱,因此利用python进行统一规范重命名操作 实现方法是利用python的os模块对文件夹进行遍历(listdir),然后使用 ...

最新文章

  1. JZOJ 5372. 【NOIP2017提高A组模拟9.17】猫
  2. Windows下,启动Redis闪退 问题解决方案
  3. jquery与ajax的XMLHttpRequest对象介绍
  4. spark 架构_深入研究Spark内部和架构
  5. Apache Flink,流计算?不仅仅是流计算!
  6. 解决 GDI 贴图的闪烁
  7. python3 学习日志 Microsoft Office 编程
  8. 【解决方法】 Flash cs4 安装之后打不开 启动界面总是一闪而过
  9. python可视化计算器_使用Python自带GUI tkinter编写一个期权价格计算器
  10. 重装助手教你如何在Windows中正确调整屏幕分辨率设置
  11. 5款常用的数据可视化工具推荐!
  12. 黑盒测试 白盒测试
  13. 从 flask 服务端代码自动生成客户端代码 -- flask-native-stubs 库介绍
  14. Windows 10出现0x8000ffff错误应该如何解决?
  15. 对于Python中@property的理解和使用
  16. python 使用百度搜索推广API,获取账户基本信息
  17. 云巡店php源码,云巡店™〡PC端后台管理员设置 讲解视频(下)
  18. 【闲得无聊】写个web版功德无量附代码+静态资源
  19. 欧冠 欧洲杯免费直播平台
  20. Echarts实现多个x轴或y轴曲线图

热门文章

  1. 【C++复习总结回顾】—— 【五】数组与指针
  2. 第7篇:MS12-020蓝屏漏洞在实战中的巧用
  3. 面试(一)2019年春招面试(初学者面试,大佬别见笑)
  4. 中国版LinkedIn到底长什么样
  5. 读书笔记软件调试之道 :从大局看调试-发现代码存在问题
  6. Distilled Dual-Encoder Model for Vision-Language Understanding
  7. 计算机相关新闻 英语,常见的新闻英语短语有什么
  8. 面试经历---UC(2016年01月11日下午面试)
  9. python 爬虫斗图吧 多页图片
  10. 使用搜狐云景部署Ghost博客