使用DPM训练自己的模型
来源:互联网 发布:企业it解决方案 编辑:程序博客网 时间:2024/05/18 00:59
首先说一下配置环境:
硬件:内存至少4G以上,64位,其他当然越高越好;
软件:Ubantu14.04+gcc4.64+MATLAB2014a
(环境已配置好请跳过1-3步)
1.Ubantu 14.04
参考连接:http://www.linuxidc.com/Linux/2014-04/100369.htm,具体不再复述,亲测可用;
2.gcc4.64
我用的办法是直接安装到最新版本,然后在不同版本之中更改
1)安装到最新版本
方法一:
该方法超简单:
sudo apt-get build-dep gcc
就上面这条命令就可以搞定
方法二:
sudo apt-get install build-essential
还是简单,一句命令也可以搞定
2)切换版本
参考这篇文章,只需把4.7换成4.6即可
http://blog.csdn.NET/ppp036/article/details/51126468
3.MATLAB2014a
参考连接:http://blog.csdn.Net/lanbing510/article/details/41698285 具体不再复述,亲测可用;
首先下载DPM的工程源码,给出链接:
http://www.cs.berkeley.edu/~rbg/latent/
http://yun.baidu.com/share/link?shareid=562087174&uk=4228141104 下载VOCdevkit2011,vocdata可根据需要下载.
5.配置
记得在MATLAB中的路径加入release5.0的路径。
1)在compile.m第64行,第72行,跟别将-O改为-output;
2)运行compile.m看是否有问题;
3)将VOCdevkit_25-May-2011放置在release5.0文件夹内,为了方便,将其改名为VOC2011,这时候文件夹中有VOC2007,VOC2010,和VOC2011,其中VOC2007和VOC2010都是之前训练好的模型。
4) 配置VOCconfig
22行 BASE_DIR = '/var/tmp/rbg';改为你VOC2011存放放根路径,
25行 PASCAL_YEAR = '2007'; 改为PASCAL_YEAR = '2011';
5)配置VOCinit
在./VOC2011/VOCdevkit/VOCcode路径中,打开VOCinit,将
30行VOCopts.testset='val';改为VOCopts.testset='test';
6. *数据的准备
正样本:因为训练大多用到VOC或者INria的数据库,这里写了一段C++实现数据文本转换的代码,功能是将VOC或INria中的单个文本数据转换成我们所要用的数据格式。如:1.jpg 2 x0 y0 x1 y1 x2 y2 x3 y3
图片路径之后的数字代表其中的正样本个数;
代码连接:http://blog.csdn.net/ppp036/article/details/51233279
负样本:负样本的数据只需要文件名,这里给出一段代码,可以将文件夹中所有文件的文件名保存在一个TXT文件中。
代码连接:http://blog.csdn.net/ppp036/article/details/51126539
其中,正样本的TXT保存为pos.txt,负样本保存为neg.txt。
7.修改pascal_data文件
参考本人另外一篇文章:
http://blog.csdn.net/ppp036/article/details/51261106
12行修改为步骤6的pos.txt保存的路径。
13行修改为步骤6的neg.txt保存的路径。
14行为图片存放的根目录。
139行第一个路径就是一个存放data的路径,可以自行修改。
至此,大功基本告成!
然后输入 pascal('model_name', N); 数字N表示训练的结果为2*N个partment。例如 pascal('MAN', 1);
切记,model_mane不可和已经存在的model名称相似,否则就不是训练了。
如果需要然后VOCdata做验证的话,就将VOCdata也拷贝进去,如果不需要,将pascal第 65行注释掉,或者不需要也可以,运行到这里会停止,其实这时候我们的MODEL已经训练完毕。
可以先加载自己训练的MODEL,然后输入visualizemodel(model)查看模型。
如下是一个攀爬和行走在一起的人体模型。
检测效果还是比较可观的。
参考文章:
http://www.cnblogs.com/zero1665/archive/2009/11/03/1595510.html
http://blog.csdn.net/ppp036/article/details/51126468
http://www.cs.berkeley.edu/~rbg/latent/
http://blog.csdn.net/ppp036/article/details/51233279
http://www.cnblogs.com/louyihang-loves-baiyan/p/4965992.htm
http://blog.csdn.net/ppp036/article/details/51236425
- 使用DPM训练自己的模型
- 使用DPM训练自己的模型
- DPM Release5 在Windows编译及训练自己的模型
- 用DPM训练自己的模型,并用于视频检测
- DPM检测模型 训练自己的数据集 读取接口修改
- DPM检测模型 训练自己的数据集 读取接口修改
- 用Deformable Part Model(DPM)voc-release3.1训练自己的模型
- 使用判别训练的部件模型进行目标检测(DPM)
- DPM在windows下配置并使用自己标定的数据进行训练
- 在windows下运行Felzenszwalb的Deformable Part Model(DPM)源码voc-release3.1来训练自己的模型
- 在windows下运行Felzenszwalb的Deformable Part Model(DPM)源码voc-release3.1来训练自己的模型
- 在windows下运行Felzenszwalb的Deformable Part Model(DPM)源码voc-release3.1来训练自己的模型
- 用DPM(Deformable Part Model,voc-release3.1)算法在INRIA数据集上训练自己的人体检测模型
- 用DPM(Deformable Part Model,voc-release4.01)算法在INRIA数据集上训练自己的人体检测模型
- 用DPM(Deformable Part Model,voc-release3.1)算法在INRIA数据集上训练自己的人体检测模型
- 用DPM(Deformable Part Model,voc-release3.1)算法在INRIA数据集上训练自己的人体检测模型
- 使用faster rcnn训练自己的模型
- 使用faster-rcnn训练自己的模型
- Python3.6 psutil官方开发文档
- Android 打包、资源合并问题 "Manifest merger failed with multiple errors" and "Could not expand ZIP"
- 在python中安装Numpy、MatPlotLib、SciPy
- oj2335——0-1背包问题
- 算法提高 数字黑洞
- 使用DPM训练自己的模型
- Js高级函数式编程
- oracle时间函数(二),trunc()
- 最佳乘法问题
- android实现倒计时,最简单实现RecyclerView倒计时+SwipeRefreshLayout下拉刷新
- Spring异常默认映射HTTP状态码
- 约束优化方法之拉格朗日乘子法与KKT条件
- 如何替换RatingBar评分控件图片
- u3d物体跟随摄像头旋转角度