DPM在windows下配置并使用自己标定的数据进行训练
2017-07-25 13:10
218 查看
1.DPM原理
最近因为需要一直在研究DPM相关的东西,先要搞清楚DPM的原理其中我主要使用的是
http://blog.csdn.net/masibuaa/article/details/17924671使用判别训练的部件模型进行目标检测
http://blog.csdn.net/masibuaa/article/details/17533419判别训练的多尺度可变形部件模型
这两位大神的资料,据说这是相关论文翻译过来的中文版 讲解比较详细,下一步就要在windows下配置文件开始训练,
2.DPMwindows下的配置
首先需要下载voc-release5的原code 下面给出github中下载的地址
https://github.com/rbgirshick/voc-dpm
当前下载下来的code是在linux下编译训练测试的,因为我没有用过Linux的编译,所以需要在windows下编译需要配置,具体可以看这位大神的配置方法,http://blog.csdn.net/seu_nuaa_zc/article/details/52412771,配置结束后可以在MATLAB的命令行中输入compile就可以进行编译,编译完成可以开始训练了。
注意:在配置的过程中一定要细心,我在配置fv_cache.cc 的过程中因为有一个大括号}没有注释,一直出现警告: Maybe you need to call fv_cache('unlock') first,当出现这个警告是就需要去检查配置过程有没有什么疏漏。
这是我编译好的http://download.csdn.net/download/wakojosin/9919065
如果按照上面所说方法配置是完全没有问题的。
3.训练
编译完成,需要开始训练,在训练之前需要准备DMP的相关文件,VOCdevkit,VOC2007文件库
相关下载地址
VOCdeviket http://pascallin.ecs.soton.ac.uk/challenges/VOC/voc2007/
VOC2007 http://host.robots.ox.ac.uk/pascal/VOC/#bestpractice
下载完成后解压需要将VOCdeviket文件放入到voc-release5的文件夹中,将VOC2007放入到VOCdeviket文件夹中如下图所示
其中VOC2007中保存着原code中的训练的图像。
需要修改训练路径,主要修改的是
(1)voc_config.m
BASE_DIR = 'E:/qinyanhong/DPM/code/voc-release5new/voc-release5'; 修改为自己的voc-release5的路径
conf = cv(conf, 'pascal.dev_kit', [conf.paths.base_dir '/VOCdevkit/']); 修改为vocdeviket的路径
按照上图路径创建文件夹,2007中保存训练结果
(2)pascal_data.m
我训练的图像使用的是自己标定的图像,标定后的txt格式为1.jpg 2 x1 y1 x2 y2 x1_1 y1_1 x2_1 y2_1
其中需要注意的是x1>x2 y1>y2 x1_1>x2_1 y1_1>y2_1,如果不满足条件会在创建金字塔模型时出现错误。可以通过修改金字塔中的坐标对应关系解决
修改pascal_data.m文件夹我是参照这位大神的来完成的http://www.cnblogs.com/louyihang-loves-baiyan/p/4965992.html
其中正样本positive.txt(标定后的样本)和负样本negtive.txt (只包含图像名称)都保存在PosImageFile中
开始训练模型
训练的过程
最近因为需要一直在研究DPM相关的东西,先要搞清楚DPM的原理其中我主要使用的是
http://blog.csdn.net/masibuaa/article/details/17924671使用判别训练的部件模型进行目标检测
http://blog.csdn.net/masibuaa/article/details/17533419判别训练的多尺度可变形部件模型
这两位大神的资料,据说这是相关论文翻译过来的中文版 讲解比较详细,下一步就要在windows下配置文件开始训练,
2.DPMwindows下的配置
首先需要下载voc-release5的原code 下面给出github中下载的地址
https://github.com/rbgirshick/voc-dpm
当前下载下来的code是在linux下编译训练测试的,因为我没有用过Linux的编译,所以需要在windows下编译需要配置,具体可以看这位大神的配置方法,http://blog.csdn.net/seu_nuaa_zc/article/details/52412771,配置结束后可以在MATLAB的命令行中输入compile就可以进行编译,编译完成可以开始训练了。
注意:在配置的过程中一定要细心,我在配置fv_cache.cc 的过程中因为有一个大括号}没有注释,一直出现警告: Maybe you need to call fv_cache('unlock') first,当出现这个警告是就需要去检查配置过程有没有什么疏漏。
这是我编译好的http://download.csdn.net/download/wakojosin/9919065
如果按照上面所说方法配置是完全没有问题的。
3.训练
编译完成,需要开始训练,在训练之前需要准备DMP的相关文件,VOCdevkit,VOC2007文件库
相关下载地址
VOCdeviket http://pascallin.ecs.soton.ac.uk/challenges/VOC/voc2007/
VOC2007 http://host.robots.ox.ac.uk/pascal/VOC/#bestpractice
下载完成后解压需要将VOCdeviket文件放入到voc-release5的文件夹中,将VOC2007放入到VOCdeviket文件夹中如下图所示
其中VOC2007中保存着原code中的训练的图像。
需要修改训练路径,主要修改的是
(1)voc_config.m
BASE_DIR = 'E:/qinyanhong/DPM/code/voc-release5new/voc-release5'; 修改为自己的voc-release5的路径
conf = cv(conf, 'pascal.dev_kit', [conf.paths.base_dir '/VOCdevkit/']); 修改为vocdeviket的路径
按照上图路径创建文件夹,2007中保存训练结果
(2)pascal_data.m
我训练的图像使用的是自己标定的图像,标定后的txt格式为1.jpg 2 x1 y1 x2 y2 x1_1 y1_1 x2_1 y2_1
其中需要注意的是x1>x2 y1>y2 x1_1>x2_1 y1_1>y2_1,如果不满足条件会在创建金字塔模型时出现错误。可以通过修改金字塔中的坐标对应关系解决
修改pascal_data.m文件夹我是参照这位大神的来完成的http://www.cnblogs.com/louyihang-loves-baiyan/p/4965992.html
其中正样本positive.txt(标定后的样本)和负样本negtive.txt (只包含图像名称)都保存在PosImageFile中
开始训练模型
训练的过程
相关文章推荐
- 【神经网络与深度学习】Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning
- Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning
- 【caffe】使用自己的图像数据训练lenet并用opencv进行预测
- 深度学习文章5:使用caffe对自己的图像数据进行训练并测试
- Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning
- 如何使用ssd训练自己的数据(windows下)
- caffe学习笔记3:使用caffe对自己的图像数据进行训练和测试
- 使用Microsoft excel 2007 进行数据分析---环境配置
- 使用Git在Mac和Windows系统之间进行同步数据
- windows下 使用ADT Bundle自带Eclipse 配置Cygwin、CDT进行C/C++开发过程
- 在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework进行GPS NMEA data数据分析的开发
- Windows+OpenLDAP+MySQL配置及使用详解(三)——LDAP数据的维护
- 如何使用gem5进行指定选项配置模拟自己的程序
- 在本地使用SVN进行源代码管理,配置自己的SVN Repository
- windows下 使用ADT Bundle自带Eclipse 配置Cygwin、CDT进行C/C++开发过程
- ArrayList 与HashSet的比较,及应用反射读取properties配置文件中的数据进行实例化再调用,以及类加载器的使用;还有HashCode的分析,及导致内存泄露,内存溢出的原因之一
- 使用JMeter进行一次简单的带json数据的post请求测试,json可配置参数
- Windows+OpenLDAP+MySQL配置及使用详解(三)——LDAP数据的维护
- 配置 Windows 时间服务以使用外部时间源 进行时间同步
- 在本地使用SVN进行源代码管理,配置自己的SVN Repository