ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

从头开始学习SSD,训练并进行推理部署(步骤详细,可以对照实现)

2022-01-10 20:34:17  阅读:253  来源: 互联网

标签:从头开始 VOC OpenCV 算法 视觉 SSD 推理 下载


本文介绍从头开始训练SSD模型的方法,最后进行推理应用。理论部分没有做详细介绍,读者可以参考图书《深度学习计算机视觉实战》获取更多的讲解细节。
在这里插入图片描述

书中不仅讲了经典算法的理论,还有很多的实战项目,更有在PC和安卓平台上的部署应用,对于找工作的小伙伴来说,这是再好没有的项目经历了哦。
在这里插入图片描述

欢迎关注图书《深度学习计算机视觉实战》与《学习OpenCV 4:基于Python的算法实战》,两本书都以通俗易懂的讲解、丰富的案例帮助初学者学习视觉与图像方向的知识。欢迎关注公众号“计算机视觉与OpenCV”获取更多的学习资料。
1、算法介绍
SSD(Single Shot MultiBox Detector)是 One-stage 算法的另一个代表,很多算法都是使用SSD作为主干网络。SSD 创新地提出了多尺度特征图检测的思想,即使用大尺度的特征图检测小的物体,小尺度的特征图检测大的物体,这一思想在后来的目标检测网络设计中都有应用,极大地提高了检测精度。SSD 还采用了不同尺度和长宽比的先验框,直接使用 CNN 做检测而非在全连接网络之后做检测,这些使 SSD算法在 PASCAL VOC 和 COCO 数据集上达到了 state-of-the-art的效果。
在这里插入图片描述

2、模型训练
(1)源码下载
(i)打开链接下载zip包:https://github.com/lufficc/SSD
(ii)Git clone:git clone git@github.com:lufficc/SSD.git
(iii)打不开,关注“计算机视觉与OpenCV”公众号回复“SSD”下载
(2)安装运行所需的python库
requirements.txt中有运行算法程序所需的python库,并写明了所需的版本,可以通过pip直接安装:

pip install -r requirements.txt

在这里插入图片描述

(3)VOC数据集下载
VOC数据集介绍参考书中8.1.3节。
(i)官网下载链接:https://pjreddie.com/projects/pascal-voc-dataset-mirror/
(ii)打不开,关注“计算机视觉与OpenCV”公众号回复“VOC”下载。
(4)数据集摆放
(i)路径下新建“dataset”文件夹,将下载的数据集解压,按照下图所示的层级摆放。
VOC_ROOT
|__ VOC2007
|_ JPEGImages
|_ Annotations
|_ ImageSets
|_ SegmentationClass
|__ VOC2012
|_ JPEGImages
|_ Annotations
|_ ImageSets
|_ SegmentationClass
|__ …

(ii)设置数据集环境变量

export VOC_ROOT="/path/to/voc_root"

/path/to/voc_root就是dataset文件夹所在的路径,不知道的到dataset路径下用pwd命令查询。
(4)开始训练

python3 train.py --config-file ./configs/vgg_ssd300_voc0712.yaml

但是不久就出现如下的错误:
RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED
这个是因为pytoch版本与cuda版本不匹配造成的。
RuntimeError: CUDA out of memory. Tried to allocate 176.00 MiB (GPU 0; 5.81 GiB total capacity; 3.32 GiB already allocated; 37.50 MiB free; 3.58 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
这个错误是因为batchsize太大造成的,改小一下就好了。
再开始训练就正常了。
在这里插入图片描述

训练完成中得到模型vgg_ssd300_voc0712.pth。
(5)模型推理

执行以下命令就可以完成推理:

python3 demo.py --config-file configs/vgg_ssd300_voc0712.yaml --images_dir demo --ckpt ./inference/vgg_ssd300_voc0712.pth

推理结果如下:

在这里插入图片描述欢迎关注图书《学习OpenCV 4:基于Python的算法实战》,该书刚刚上市,是国内第一本系统讲解OpenCV4各个模块的图书,配套案例深入浅出的讲解,非常适合初学者入门。
在这里插入图片描述

标签:从头开始,VOC,OpenCV,算法,视觉,SSD,推理,下载
来源: https://blog.csdn.net/lxiao428/article/details/122417973

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有