mtcnn训练及出现问题总结
2017-08-23 11:09
344 查看
mtcnn/train at master:https://github.com/dlunion/mtcnn mtcnn下载
无关键点的步骤:
1.准备好训练的样本图片放到samples文件夹;
2.准备好对应的label.txt,格式是:samples/filename.jpg xmin ymin xmax ymax;(放到train文件夹中)
3.执行callpy-gen-data12.bat生成样本数据;
4.执行callpy-12.bat生成训练需要用到的train-label.txt;
5.执行make-lmdb-12.bat生成lmdb数据库;
6.执行train-12.bat开始训练;
7.相对应的其他24、48网络也类似就好了;
经过上述步骤,模型就训练好了。(三个文件夹:model-12,model-24,model-48)
8.将上述文件夹中的caffemodel文件(最后一个)分别复制到caffemodel_2_mtcnnmodel文件中,并分别改名为det1,det2,det3。执行文件夹中的sln文件。生成mtcnn_models.h。
9.将生成的mtcnn_models.h复制到mtcnn-lights文件夹中。执行文件夹中的sln文件。
出现的问题
1.执行bat文件时候,提示No module named cv2
解决方法:找到cv2.pyd(python2.7),复制到Python的安装目录。
2.在执行执行train-12.bat开始训练时,出现路径不对,'exist' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 'ho' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 系统找不到指定的路径等问题:
解决方法:更改路径(不能有中文,文件名不能有空格),添加环境变量即可(conver_imageset.exe的路径)
对于训练caffe.exe、转换数据集convert_imageset.exe(因为用到了--backend=mtcnn)用到的程序,全在https://github.com/dlunion/CCDL/tree/master/caffe-easy
这个版本的caffe里面,该caffe主要运行在windows下,可以复制里面主要的层和程序也可以完成任务,也可以下载编译好的程序http://www.zifuture.com/fs/12.github/mtcnn/caffe-build-cuda8.0.rar 来训练,里面有提供。
3.训练模型时vs15若出现找不到 libprotobuf
库文件中能找到libprotobuf,并且路径已在库目录中添加,说明是版本问题。
解决方法:需要用vs13来打开caffemodel的sln文件,或者用vs15重新编译libprotobuf。
4.生成数据样本(正样本,负样本,部分样本)时,一定要把之前的文件夹清空。有可能会出现样本数据覆盖不完全的问题。
5.训练的人脸检测模型,像素太高(图片太大)和像素太低(人脸不清晰,用的是之前行人检测的图片样本)的图片都无法进行检测。
6.训练生成的模型,用测试集检测效果明显比训练集的效果好得多。这是为啥呢?
训练集在测试过程中会出现漏检,误检。
而测试集检测在测试过程中并没有出现漏检,误检。
持续更新...
无关键点的步骤:
1.准备好训练的样本图片放到samples文件夹;
2.准备好对应的label.txt,格式是:samples/filename.jpg xmin ymin xmax ymax;(放到train文件夹中)
3.执行callpy-gen-data12.bat生成样本数据;
4.执行callpy-12.bat生成训练需要用到的train-label.txt;
5.执行make-lmdb-12.bat生成lmdb数据库;
6.执行train-12.bat开始训练;
7.相对应的其他24、48网络也类似就好了;
经过上述步骤,模型就训练好了。(三个文件夹:model-12,model-24,model-48)
8.将上述文件夹中的caffemodel文件(最后一个)分别复制到caffemodel_2_mtcnnmodel文件中,并分别改名为det1,det2,det3。执行文件夹中的sln文件。生成mtcnn_models.h。
9.将生成的mtcnn_models.h复制到mtcnn-lights文件夹中。执行文件夹中的sln文件。
出现的问题
1.执行bat文件时候,提示No module named cv2
解决方法:找到cv2.pyd(python2.7),复制到Python的安装目录。
2.在执行执行train-12.bat开始训练时,出现路径不对,'exist' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 'ho' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 系统找不到指定的路径等问题:
解决方法:更改路径(不能有中文,文件名不能有空格),添加环境变量即可(conver_imageset.exe的路径)
对于训练caffe.exe、转换数据集convert_imageset.exe(因为用到了--backend=mtcnn)用到的程序,全在https://github.com/dlunion/CCDL/tree/master/caffe-easy
这个版本的caffe里面,该caffe主要运行在windows下,可以复制里面主要的层和程序也可以完成任务,也可以下载编译好的程序http://www.zifuture.com/fs/12.github/mtcnn/caffe-build-cuda8.0.rar 来训练,里面有提供。
3.训练模型时vs15若出现找不到 libprotobuf
库文件中能找到libprotobuf,并且路径已在库目录中添加,说明是版本问题。
解决方法:需要用vs13来打开caffemodel的sln文件,或者用vs15重新编译libprotobuf。
4.生成数据样本(正样本,负样本,部分样本)时,一定要把之前的文件夹清空。有可能会出现样本数据覆盖不完全的问题。
5.训练的人脸检测模型,像素太高(图片太大)和像素太低(人脸不清晰,用的是之前行人检测的图片样本)的图片都无法进行检测。
6.训练生成的模型,用测试集检测效果明显比训练集的效果好得多。这是为啥呢?
训练集在测试过程中会出现漏检,误检。
而测试集检测在测试过程中并没有出现漏检,误检。
持续更新...
相关文章推荐
- 针对《面试心得与总结—BAT、网易、蘑菇街》一文中出现的技术问题的收集与整理(2)
- ios应用提交审核出现的问题总结
- 未将对象引用设置到对象的实例--可能出现的问题总结
- 劲舞团出现问题的解决方法总结
- 未将对象引用设置到对象的实例--可能出现的问题总结
- 总结前端面试过程中最容易出现的问题
- 列不属于表--可能出现的问题总结
- apache服务出现Forbidden 403问题的解决方法总结
- 用户连接samba出现问题总结
- 未将对象引用设置到对象的实例--可能出现的问题总结
- 查看别人源码出现的问题总结
- 未将对象引用设置到对象的实例 - 可能出现的问题总结
- 总结前端面试过程中最容易出现的问题
- LoadRunner出现error问题及解决方法总结
- 未将对象引用设置到对象的实例--可能出现的问题总结
- 针对《面试心得与总结—BAT、网易、蘑菇街》一文中出现的技术问题的收集与整理(4)
- SQL Server安装过程出现的问题总结
- UITableView和UICollectionView使用中出现的问题总结
- Android内存溢出整理总结 OOM(Out Of Memory) 加载的图片太多或图片过大时经常出现OOM问题
- Microsoft Dynamics CRM 2011 IFD 配置出现的问题 总结