赞
踩
因为最近在做LPR(车牌识别)的小项目,需要把图片样本导入并训练,所以写了一个小程序。
在参考了网上部分资料后,得到目标目录charSamples下,文件夹1里所有50个样本图片文件的路径。
------------------------------------------------------------------
dirent,LINUX系统下的一个头文件,在这个目录下/usr/include,为了获取某文件夹目录内容,所使用的结构体。
引用头文件#include<dirent.h>
struct dirent
{
-------------------------------------------------------------------
这是我保存的图片路径图:
--------------------------------------------------------------------------------------------------------------
执行效果:
-------------------------------------------------------------------------------------------
- #include <dirent.h>
- #include <stdio.h>
- #include<iostream>
- #include<vector>
- using namespace std;
- vector <string> findfile(string path);
- int main(int argc, char *argv[])
- {
- vector<string> Filename = findfile("charSamples/1/");
- }
- vector <string> findfile(string path)
- {
- DIR *dp;
- struct dirent *dirp;
- vector<std::string> filename;
- if( (dp=opendir(path.c_str()) )==NULL )
- perror("open dir error");
- while( (dirp=readdir(dp) )!=NULL )
- filename.push_back(path + string(dirp->d_name));
- for (int i = 2;i<filename.size();i++)
- cout<<i<<":"<<filename[i]<<endl;
- closedir(dp);
- return filename;
- }
有点疑惑:输出的时候,我是以 I = 2 为起始的,因为 I= 0和1 的时候输出的是一个“.”符号,不知道为什么。
最后,图片文件是这样的,其他文件也应该差不多,大家可以多试试。
------------------------------------------------------------------------
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。