OpenCV 利用命令行(cmd)训练模型
来源:互联网 发布:怎样下载cad软件 编辑:程序博客网 时间:2024/05/21 14:06
0 cmd当前路径设置
制定一个问价夹,该文件下放置数据,cmd当前目录转至此目录。
1 正样本准备
a)MATLAB编程准备文件
filename1='D:\Users\Administrator\Downloads\Data\face\train\face';
file1=dir([filename1 '\*.pgm']);
fidout=fopen('train_positive.dat','w');//红色为文本文件名
for ii=1:length(file1)
fprintf(fidout,'%s %d %d %d %d %d\n', [filename1 '\' file1(ii).name],1,1,1,19,19);
end
fclose(fidout);
//文件格式如下
D:\Users\Administrator\Downloads\Data\face\train\face\face00001.pgm 1 1 1 19 19
D:\Users\Administrator\Downloads\Data\face\train\face\face00002.pgm 1 1 1 19 19
D:\Users\Administrator\Downloads\Data\face\train\face\face00003.pgm 1 1 1 19 19
......
b)命令行调用命令生成vec文件
"D:\Users\Administrator\Downloads\opencv\build\x86\vc10\bin\opencv_createsamples.exe" -info "train_positive.dat" -vec vecpositive.vec -num 4000 -w 19 -h 19
//红色为opencv库使用的EXE文件
2负样本准备
a)matlab 程序
filename2='D:\Users\Administrator\Downloads\Data\face\train\non-face';
file2=dir([filename2 '\*.pgm']);
fidout=fopen('train_negative.dat','w');
for ii=1:length(file2)
fprintf(fidout,'%s\n', [file2(ii).name]);
end
fclose(fidout);
pix2
上图为负样本数据文件夹,其中train_negative.dat 为文件名汇总文档(放置在负样本目录中),文件格式如下
3 训练
训练前,请在cm当前目录建一个文件夹(本次为modeldatacascade文件夹)
下行为cmd控制台输入的命令
"D:\Users\Administrator\Downloads\opencv\build\x86\vc10\bin\opencv_traincascade.exe" -data modeldatacascade -vec vecpositive.vec -bg "D:\Users\Administrator\Downloads\Data\face\train\non-face\train_negative.dat" -numPos 1000 -numNeg 1000 -mode all -w 19 -h 19
其中train_negative.dat数据的绝对路径要给出,因为需要找到负样本的位置。
。。。等待结果
4 常见问题
a) train dataset for temp stage can not be filled ?
1) 部分认为是程序内部问题 (参见http://villager5.blog.163.com/blog/static/8273636201462452037527/)试过无效,实际上可能性更大的问题是数据格式(数据位置,相对路径,绝度路径等)。
本人犯了一个错误是:负样本样本和dat文件位置关系错了,dat文件中使用了绝对路径。改正后正确
b) parameter can not be written.....
参见:http://blog.csdn.net/wiseclown/article/details/37662897
- OpenCV 利用命令行(cmd)训练模型
- 在cmd下利用命令行发送邮件(QQ邮箱)
- 利用qt进入cmd(dos命令行控制台)自动输入cmd指令
- 利用opencv训练分类器
- opencv的opencv_haartraining.exe训练器训练模型
- opencv之利用opencv_traincascade训练分类器
- 说一说solr命令行(cmd)
- 利用caffe-ssd训练物体检测模型
- cmd 命令行
- cmd 命令行
- cmd 命令行
- CMD命令行
- cmd 命令行
- cmd命令行
- 利用WScript.Shell对象隐藏cmd命令行运行
- win7下利用注册表修改cmd命令行默认路径
- SMTP协议--在cmd下利用命令行发送邮件
- JAVA利用cmd命令行调用WINRAR解压及压缩
- List中使用继承关系泛型 实战
- NSUserDefaults 简介,使用 NSUserDefaults 存储自定义对象
- halcon基本示例之灰度直方图
- Scala深入浅出实战经典:38,List伴生对象操作方法代码实战
- Node.js中的DNS模块
- OpenCV 利用命令行(cmd)训练模型
- Windows下使用VS编译Lua
- Scala深入浅出实战经典:39,ListBuffer、ArrayBuffer、Queue、Stack操作代码实战
- 【c++ templates读书笔记】【1】函数模板
- Hibernate 应用
- Android SDK Manager
- Scala深入浅出实战经典:40,Set、Map、TreeSet、TreeMap操作代码实战
- arraylist add(int index) 方法时 index是处于前半部分还是后半部分效率高
- NYOJ -2括号配对问题