SSD:Single Shot MultiBox Detector 心得 (持续更新中。。。)
2016-07-13 11:02
537 查看
对于文章代码的一些理解, 以此来省去用A4纸记录的苦恼
SSD文章链接:http://arxiv.org/pdf/1512.02325v2.pdf
SSD代码链接:https://github.com/weiliu89/caffe/tree/ssd
一:先说说代码配置编译遇到的问题:
(1)按照代码教程编译caffe 都通过了,运行creat_lis.py通过,但是运行creat_data.py时提示 AttributeError: 'module' object has no attribute 'LabelMap'
方法:添加环境变量"export PYTHONPATH=/path/to/CaffeSSD/python:$PYTHONPATH"然后"source ~/.bashrc"
(2) 运行creat_data.py提示 undefine cudnn_v4
方法: 重新链接一下cudnn . 祥见欧新宇配置caffe教程 ”安装配置nVidia
cuDNN 加速Caffe模型运算“部份。
(3)
运行 python
某个py 文件时提示:
Traceback (most recent call last):
File "examples/ssd/ssd_pascal.py", line 4, in <module>
import caffe
ImportError: No module named caffe
方法:在那个py文件里加入import sys
sys.path.append("/home/duan/caffe-ssd/python")
二:数据集处理部分
为了能直接用别人的代码处理自己的数据,就需要知道怎样处理数据集
(1)需要生成trainval.txt等文件, 运行 "cd$CAFFE_ROOT"以及 "./data/VOC0712/create_list.sh"
文件内容格式为:[图片路径 对应的xml文件路径]
(2)生成lmdb文件, 运行"./data/VOC0712/create_data.sh"(核心代码为"/build/tools/convert_annoset"中所提到的convert_annoset部分,会在后续讲解)
三:训练模型
code中使用VOC2007和2012的train_val数据集进行训练和验证,使用VOC2012的test进行测试
训练模型的代码为 "python
examples/ssd/ssd_pascal.py"(主目录为caffe-ssd)
训练的模型保存在
"$CAFFE_ROOT/models/VGGNet/VOC0712/SSD_300x300/"
job file, log file, python script 保存在
"$CAFFE_ROOT/jobs/VGGNet/VOC0712/SSD_300x300/"
我60k迭代后的mAP=0.71534
四:测试模型
对整个测试集的测试:(默认使用最后存储的模型)
对单张图片测试检测效果:
作者提供两种测试文件:cpp和ipynp文件
我们使用ipynp文件, 文件路径为:examples/ssd_detect.ipynb
步骤:
启动Terminal:"ctrl+alt+t".
转到主文件目录,并取得root权限:"cd
caffe-ssd"."sudo su" 否则会出错
启动ipython/jupyter notebook: "ipython notebook",找到ipynb文件。
按照给定的代码"shift+enter"走下来即可。
SSD文章链接:http://arxiv.org/pdf/1512.02325v2.pdf
SSD代码链接:https://github.com/weiliu89/caffe/tree/ssd
一:先说说代码配置编译遇到的问题:
(1)按照代码教程编译caffe 都通过了,运行creat_lis.py通过,但是运行creat_data.py时提示 AttributeError: 'module' object has no attribute 'LabelMap'
方法:添加环境变量"export PYTHONPATH=/path/to/CaffeSSD/python:$PYTHONPATH"然后"source ~/.bashrc"
(2) 运行creat_data.py提示 undefine cudnn_v4
方法: 重新链接一下cudnn . 祥见欧新宇配置caffe教程 ”安装配置nVidia
cuDNN 加速Caffe模型运算“部份。
(3)
运行 python
某个py 文件时提示:
Traceback (most recent call last):
File "examples/ssd/ssd_pascal.py", line 4, in <module>
import caffe
ImportError: No module named caffe
方法:在那个py文件里加入import sys
sys.path.append("/home/duan/caffe-ssd/python")
二:数据集处理部分
为了能直接用别人的代码处理自己的数据,就需要知道怎样处理数据集
(1)需要生成trainval.txt等文件, 运行 "cd$CAFFE_ROOT"以及 "./data/VOC0712/create_list.sh"
文件内容格式为:[图片路径 对应的xml文件路径]
(2)生成lmdb文件, 运行"./data/VOC0712/create_data.sh"(核心代码为"/build/tools/convert_annoset"中所提到的convert_annoset部分,会在后续讲解)
三:训练模型
code中使用VOC2007和2012的train_val数据集进行训练和验证,使用VOC2012的test进行测试
训练模型的代码为 "python
examples/ssd/ssd_pascal.py"(主目录为caffe-ssd)
训练的模型保存在
"$CAFFE_ROOT/models/VGGNet/VOC0712/SSD_300x300/"
job file, log file, python script 保存在
"$CAFFE_ROOT/jobs/VGGNet/VOC0712/SSD_300x300/"
我60k迭代后的mAP=0.71534
四:测试模型
对整个测试集的测试:(默认使用最后存储的模型)
python examples/ssd/score_ssd_pascal.py
对单张图片测试检测效果:
作者提供两种测试文件:cpp和ipynp文件
我们使用ipynp文件, 文件路径为:examples/ssd_detect.ipynb
步骤:
启动Terminal:"ctrl+alt+t".
转到主文件目录,并取得root权限:"cd
caffe-ssd"."sudo su" 否则会出错
Permission denied: "/root/data/VOCdevkit/results/VOC2007/SSD_300x300/Main"
启动ipython/jupyter notebook: "ipython notebook",找到ipynb文件。
按照给定的代码"shift+enter"走下来即可。
相关文章推荐
- SSD 下的 MySQL IO 优化尝试
- Intel SSD ToolBox自动优化SSD回写盘
- 在没有工具的情况下检查SSD 的TRIM功能有没有打开
- Mac下优化SSD
- SSD装系统实战!Win7装机流程攻略!
- 什么是TLC颗粒?与MLC、SLC区别
- ssd 工作原理
- 存储发展史上10大关键词(转)
- 在VSAN实验环境下如何将普通HDD标注成SSD
- How to Trick ESXi 5 in seeing an SSD Datastore
- PostgreSQL在SSD和HDD上的性能对比
- 欢迎使用CSDN-markdown编辑器
- SSD 从形式到实质之改变
- 基于LDPC的下一代SSD控制器中的软解码
- Flashtec NVRAM加速卡以次微秒级延迟实现一千五百万次 IOPS
- 企业级闪存应用之面面观
- SSD固态硬盘电脑的装机方法
- 编译速度_SSD固态硬盘和机械硬盘编译速度测试
- 基于像素自适应分割的运动目标检测算法
- ubuntu 各个版本都无法安装的解决,同时有集成显卡和独立显卡的机器