ssd目标检测代码要改哪些

深度学习界的 “吃鸡挂”——目标检测 SSD 实验
深度学习界的 “吃鸡挂”——目标检测 SSD 实验
“卧槽,又被 LYB 干了!” 背后传来一声哀嚎。
哈哈,看来,沉迷吃鸡的室友又被戒网瘾了。作为一个充满着正义的 LYB 的游戏,这人不长点眼力还真的不行啊。不过这时候一张图片吸引了我的兴趣:
网易《荒野行动》的车辆检测
能识别出视频中的汽车和人,这,不是外挂么?想到专业制裁 LYB 们的透视挂,这波我很强好吧。
“卧槽,又被 LYB 干了!” 背后传来一声哀嚎。
哈哈,看来,沉迷吃鸡的室友又被戒网瘾了。作为一个充满着正义的 LYB 的游戏,这人不长点眼力还真的不行啊。不过这时候一张图片吸引了我的兴趣:
网易《荒野行动》的车辆检测
能识别出视频中的汽车和人,这,不是外挂么?想到专业制裁 LYB 们的透视挂,这波我很强好吧。为探秘这 “外挂” 效果有多强,那我就来复现这个深度学习界的 “吃鸡挂”——SSD 目标检测。
SSD 目标检测介绍
SSD 是一种 Object Detection 方法。本文的源代码是基于论文 SSD: Single Shot MultiBox Detector(https://arxiv.org/abs/ ),实现的 keras 版本。
该文章在既保证速度,又要保证精度的情况下,提出了 SSD 物体检测模型,与现在流行的检测模型一样,将检测过程整个成一个 single deep neural network。便于训练与优化,同时提高检测速度。 SSD 将输出一系列离散化(discretization)的 bounding boxes,这些 bounding boxes 是在不同层次(layers)上的 feature maps 上生成的,并且有着不同的 aspect ratio。
使用 RussellCloud 复现
做深度学习的,大家都知道最纠结的莫过于配置环境了。那么多框架那么多库那么多版本,稍有不注意,成倍的时间都花在踩坑上了。这在做复现的时候尤为明显,我不过是想跑一下别人的代码看看效果,结果完全搞不定。
使用 RussellCloud,轻松搞定环境问题,要啥,写个 requirement 就行了!
复现前准备:
注册 RussellCloud 账号
(注册邀请码可至论坛跟帖求助获取,每位已经注册的用户也有五枚好友邀请码)
安装 russell-cli 终端工具
$ sudo pip install -U russell-cli
Clone 项目代码,Git 地址 RussellCloud/SSD_keras
# clone代码
$ git clone https://github.com/RussellCloud/SSD_keras.git
使用命令行登录:
# 使用russell login命令
$ russell login
输入 y,网页登录后在网页端拷贝账户的 Token,粘贴进终端,回车。如果你使用 Windows 的命令行,可能会出现粘贴不进的情况,请右键窗口粘贴(或者点击左上角图标)。
成功登录输出:
Login Successful as XXX
新建项目:
来到 RussellCloud 主页,进入控制台,新建一个项目。项目名随便起一个,很多都可以不填,比较重要的是默认容器环境一定要选择:keras 。
RussellCloud 创建项目页
初始化项目:
项目创建完成后记得在项目主页复制概览 ID,用于项目初始化。
# 绑定远程项目,此处&project_id&是在网页上复制的项目概览 ID
$ russell init --id &project_id&
初始化成功输出:
Project "XXX" initialized in current directory
运行项目:
初始化完成后我们就可以用 russell run 命令运行项目了,这里我们项目下实现的是一个 IPython Notebook 工程,所以我们要使用 Jupyter 模式来启动我们的项目。
# russell run 以Jupyter模式启动项目
$ russell run --mode jupyter --data df:model
成功运行 task 输出:
--------------------------------
------------------
780a8e053ffaabc9f2694
RussellCloud/ssd:1
Setting up your instance and waiting for Jupyter notebook to become available ...
Path to jupyter notebook: http://cpu.russellcloud.com/notebook/780a8e053ffaabc9f2694/
To view logs enter:
russell logs 780a8e053ffaabc9f2694
然后我们就会浏览器自动打开一个页面,这就进入到了我们的 Jupyter 环境下。
在线的 jupyter
然后我们可以看到我们所有的项目文件都展现在这个网页中了,当然我们还有挂载的 SSD_Weight 数据集在 / input/model 目录下没有显示出来。接下来我们就是打开这个 SSD.ipynb 开始运行啦!不过这里的代码有一些目录还还没有对应改好哦,所以我们这里按 cell 运行时候要及时查错,把相应的目录修改好。
成功运行完一遍,OK!
检测效果演示
“小编你这不是耍我么,吃鸡挂呢?”
当然我是有做测试的啦!只是效果不太理想(哭脸)。先上两张图感受一下。
这两张图都是来源于《绝地求生:大逃杀》的官方宣传片。第一张图算是识别出了人,可是,你识别自己有啥用喂喂喂。虽然玩家面前还有另一个人开着一辆跑车疾驰而来,但是它并没有识别出来。第二张图,穿着吉利服的 LYB,结果确实识别出来是一个鸟…… 好吧这还看着是有点像个鸟头。
我这里做的都只是一个图片的目标检测。如果做视频的目标检测,我想它应该能识别出来那辆疾驰而来的车。至于这个吉利服选手,怕是识别不出来了哈哈哈。看来,这个 “吃鸡挂” 的功力还远远不够。
但在其他图片上,这个 SSD 目标检测还是有不错的效果的:
检测出来的小猫咪
转自:“卧槽,又被 LYB 干了!” 背后传来一声哀嚎。
哈哈,看来,沉迷吃鸡的室友又被戒网瘾了。作为一个充满着正义的 LYB 的游戏,这人不长点眼力还真的不行啊。不过这时候一张图片吸引了我的兴趣:
网易《荒野行动》的车辆检测
能识别出视频中的汽车和人,这,不是外挂么?想到专业制裁 LYB 们的透视挂,这波我很强好吧。为探秘这 “外挂” 效果有多强,那我就来复现这个深度学习界的 “吃鸡挂”——SSD 目标检测。
SSD 目标检测介绍
SSD 是一种 Object Detection 方法。本文的源代码是基于论文 SSD: Single Shot MultiBox Detector(https://arxiv.org/abs/ ),实现的 keras 版本。
该文章在既保证速度,又要保证精度的情况下,提出了 SSD 物体检测模型,与现在流行的检测模型一样,将检测过程整个成一个 single deep neural network。便于训练与优化,同时提高检测速度。 SSD 将输出一系列离散化(discretization)的 bounding boxes,这些 bounding boxes 是在不同层次(layers)上的 feature maps 上生成的,并且有着不同的 aspect ratio。
使用 RussellCloud 复现
做深度学习的,大家都知道最纠结的莫过于配置环境了。那么多框架那么多库那么多版本,稍有不注意,成倍的时间都花在踩坑上了。这在做复现的时候尤为明显,我不过是想跑一下别人的代码看看效果,结果完全搞不定。
使用 RussellCloud,轻松搞定环境问题,要啥,写个 requirement 就行了!
复现前准备:
注册 RussellCloud 账号
(注册邀请码可至论坛跟帖求助获取,每位已经注册的用户也有五枚好友邀请码)
安装 russell-cli 终端工具
$ sudo pip install -U russell-cli
Clone 项目代码,Git 地址 RussellCloud/SSD_keras
# clone代码
$ git clone https://github.com/RussellCloud/SSD_keras.git
使用命令行登录:
# 使用russell login命令
$ russell login
输入 y,网页登录后在网页端拷贝账户的 Token,粘贴进终端,回车。如果你使用 Windows 的命令行,可能会出现粘贴不进的情况,请右键窗口粘贴(或者点击左上角图标)。
成功登录输出:
Login Successful as XXX
新建项目:
来到 RussellCloud 主页,进入控制台,新建一个项目。项目名随便起一个,很多都可以不填,比较重要的是默认容器环境一定要选择:keras 。
RussellCloud 创建项目页
初始化项目:
项目创建完成后记得在项目主页复制概览 ID,用于项目初始化。
# 绑定远程项目,此处&project_id&是在网页上复制的项目概览 ID
$ russell init --id &project_id&
初始化成功输出:
Project "XXX" initialized in current directory
运行项目:
初始化完成后我们就可以用 russell run 命令运行项目了,这里我们项目下实现的是一个 IPython Notebook 工程,所以我们要使用 Jupyter 模式来启动我们的项目。
# russell run 以Jupyter模式启动项目
$ russell run --mode jupyter --data df:model
成功运行 task 输出:
--------------------------------
------------------
780a8e053ffaabc9f2694
RussellCloud/ssd:1
Setting up your instance and waiting for Jupyter notebook to become available ...
Path to jupyter notebook: http://cpu.russellcloud.com/notebook/780a8e053ffaabc9f2694/
To view logs enter:
russell logs 780a8e053ffaabc9f2694
然后我们就会浏览器自动打开一个页面,这就进入到了我们的 Jupyter 环境下。
在线的 jupyter
然后我们可以看到我们所有的项目文件都展现在这个网页中了,当然我们还有挂载的 SSD_Weight 数据集在 / input/model 目录下没有显示出来。接下来我们就是打开这个 SSD.ipynb 开始运行啦!不过这里的代码有一些目录还还没有对应改好哦,所以我们这里按 cell 运行时候要及时查错,把相应的目录修改好。
成功运行完一遍,OK!
检测效果演示
“小编你这不是耍我么,吃鸡挂呢?”
当然我是有做测试的啦!只是效果不太理想(哭脸)。先上两张图感受一下。
这两张图都是来源于《绝地求生:大逃杀》的官方宣传片。第一张图算是识别出了人,可是,你识别自己有啥用喂喂喂。虽然玩家面前还有另一个人开着一辆跑车疾驰而来,但是它并没有识别出来。第二张图,穿着吉利服的 LYB,结果确实识别出来是一个鸟…… 好吧这还看着是有点像个鸟头。
我这里做的都只是一个图片的目标检测。如果做视频的目标检测,我想它应该能识别出来那辆疾驰而来的车。至于这个吉利服选手,怕是识别不出来了哈哈哈。看来,这个 “吃鸡挂” 的功力还远远不够。
但在其他图片上,这个 SSD 目标检测还是有不错的效果的:
检测出来的小猫咪
转自:“卧槽,又被 LYB 干了!” 背后传来一声哀嚎。
哈哈,看来,沉迷吃鸡的室友又被戒网瘾了。作为一个充满着正义的 LYB 的游戏,这人不长点眼力还真的不行啊。不过这时候一张图片吸引了我的兴趣:
网易《荒野行动》的车辆检测
能识别出视频中的汽车和人,这,不是外挂么?想到专业制裁 LYB 们的透视挂,这波我很强好吧。为探秘这 “外挂” 效果有多强,那我就来复现这个深度学习界的 “吃鸡挂”——SSD 目标检测。
SSD 目标检测介绍
SSD 是一种 Object Detection 方法。本文的源代码是基于论文 SSD: Single Shot MultiBox Detector(https://arxiv.org/abs/ ),实现的 keras 版本。
该文章在既保证速度,又要保证精度的情况下,提出了 SSD 物体检测模型,与现在流行的检测模型一样,将检测过程整个成一个 single deep neural network。便于训练与优化,同时提高检测速度。 SSD 将输出一系列离散化(discretization)的 bounding boxes,这些 bounding boxes 是在不同层次(layers)上的 feature maps 上生成的,并且有着不同的 aspect ratio。
使用 RussellCloud 复现
做深度学习的,大家都知道最纠结的莫过于配置环境了。那么多框架那么多库那么多版本,稍有不注意,成倍的时间都花在踩坑上了。这在做复现的时候尤为明显,我不过是想跑一下别人的代码看看效果,结果完全搞不定。
使用 RussellCloud,轻松搞定环境问题,要啥,写个 requirement 就行了!
复现前准备:
注册 RussellCloud 账号
(注册邀请码可至论坛跟帖求助获取,每位已经注册的用户也有五枚好友邀请码)
安装 russell-cli 终端工具
$ sudo pip install -U russell-cli
Clone 项目代码,Git 地址 RussellCloud/SSD_keras
# clone代码
$ git clone https://github.com/RussellCloud/SSD_keras.git
使用命令行登录:
# 使用russell login命令
$ russell login
输入 y,网页登录后在网页端拷贝账户的 Token,粘贴进终端,回车。如果你使用 Windows 的命令行,可能会出现粘贴不进的情况,请右键窗口粘贴(或者点击左上角图标)。
成功登录输出:
Login Successful as XXX
新建项目:
来到 RussellCloud 主页,进入控制台,新建一个项目。项目名随便起一个,很多都可以不填,比较重要的是默认容器环境一定要选择:keras 。
RussellCloud 创建项目页
初始化项目:
项目创建完成后记得在项目主页复制概览 ID,用于项目初始化。
# 绑定远程项目,此处&project_id&是在网页上复制的项目概览 ID
$ russell init --id &project_id&
初始化成功输出:
Project "XXX" initialized in current directory
运行项目:
初始化完成后我们就可以用 russell run 命令运行项目了,这里我们项目下实现的是一个 IPython Notebook 工程,所以我们要使用 Jupyter 模式来启动我们的项目。
# russell run 以Jupyter模式启动项目
$ russell run --mode jupyter --data df:model
成功运行 task 输出:
--------------------------------
------------------
780a8e053ffaabc9f2694
RussellCloud/ssd:1
Setting up your instance and waiting for Jupyter notebook to become available ...
Path to jupyter notebook: http://cpu.russellcloud.com/notebook/780a8e053ffaabc9f2694/
To view logs enter:
russell logs 780a8e053ffaabc9f2694
然后我们就会浏览器自动打开一个页面,这就进入到了我们的 Jupyter 环境下。
在线的 jupyter
然后我们可以看到我们所有的项目文件都展现在这个网页中了,当然我们还有挂载的 SSD_Weight 数据集在 / input/model 目录下没有显示出来。接下来我们就是打开这个 SSD.ipynb 开始运行啦!不过这里的代码有一些目录还还没有对应改好哦,所以我们这里按 cell 运行时候要及时查错,把相应的目录修改好。
成功运行完一遍,OK!
检测效果演示
“小编你这不是耍我么,吃鸡挂呢?”
当然我是有做测试的啦!只是效果不太理想(哭脸)。先上两张图感受一下。
这两张图都是来源于《绝地求生:大逃杀》的官方宣传片。第一张图算是识别出了人,可是,你识别自己有啥用喂喂喂。虽然玩家面前还有另一个人开着一辆跑车疾驰而来,但是它并没有识别出来。第二张图,穿着吉利服的 LYB,结果确实识别出来是一个鸟…… 好吧这还看着是有点像个鸟头。
我这里做的都只是一个图片的目标检测。如果做视频的目标检测,我想它应该能识别出来那辆疾驰而来的车。至于这个吉利服选手,怕是识别不出来了哈哈哈。看来,这个 “吃鸡挂” 的功力还远远不够。
但在其他图片上,这个 SSD 目标检测还是有不错的效果的:
检测出来的小猫咪
转自:http://blog.csdn.net/Y0W1as5eg37urFdS/article/details/
用云栖社区APP,舒服~
【云栖快讯】新手小白必看!编程语言系列讲座火爆进行中,与行业资深专家一起学习Python、C++、JavaScript、Java!从入门到进阶&&
阿里云机器学习是基于阿里云分布式计算引擎的一款机器学习算法平台。用户通过拖拉拽的方式可视化的...
基于深度学习技术及阿里巴巴多年的海量数据支撑, 提供多样化的内容识别服务,能有效帮助用户降低...
服务底层使用经国家密码管理局检测认证的硬件密码机,通过虚拟化技术,帮助用户满足数据安全方面的...
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效...
订阅广场全新上线857被浏览58,879分享邀请回答6060 条评论分享收藏感谢收起, 源代码在这里: 请自己到链接里面学习代码.
SSD(SSD: Single Shot MultiBox Detector)是采用单个深度神经网络模型实现目标检测和识别的方法。该方法是综合了Faster R-CNN的anchor box和YOLO单个神经网络检测思路(YOLOv2也采用了类似的思路,详见YOLO升级版:YOLOv2和YOLO9000解析),既有Faster R-CNN的准确率又有YOLO的检测速度,可以实现高准确率实时检测。
在300*300分辨率,SSD在VOC2007数据集上准确率为74.3%mAP,59FPS;512*512分辨率,SSD获得了超过Fast R-CNN,获得了80%mAP/19fps的结果。
SSD关键点分为两类:模型结构和训练方法。模型结构包括:多尺度特征图检测网络结构和anchor boxes生成;训练方法包括:ground truth预处理和损失函数。
course/ml/ssd.txt & 最后更改:
10:03 由 whyx
除额外注明的地方外,本维基上的内容按下列许可协议发布:目标检测算法SSD在window环境下GPU配置训练自己的数据集
时间: 23:12:12
&&&& 阅读:645
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&由于最近想试一下牛掰的目标检测算法SSD。于是乎,自己做了几千张数据(实际只有几百张,利用数据扩充算法比如镜像,噪声,切割,旋转等扩充到了几千张,其实还是很不够)。于是在网上找了相关的介绍,自己处理数据转化为VOC数据集的格式,在转化为XML格式等等。具体方法可以参见以下几个博客。具体是window还是Linux请自行对号入座。
Linux:http://blog.sina.com.cn/s/blog_4ax7yd.html
window:http://blog.csdn.net/buaalei/article/details/
数据转换好以后,接下来的工作就是在window下搭建SSD训练环境了,这里面有很多地雷,我本人也是反复尝试反复修改几天后才得以成功。
1 首先看你的电脑配置是否有GPU,如果没有GPU那就很好办了,首先下载SSD模型,链接:,(当然也要的人是下载window-caffe的,然后再往里面添加SSD相关的文件,但是很明显多此一举了)。所以我们还是站在巨人的肩膀上吧。
2 下载好了ssd的caffe环境,接下来就是安装CUDNN,CUDA,PYTHON等的配置,这里参考的文献很多我就不再赘叙了,当然如果你是CPU环境,那么不需要配置CUDNN环境。
3 安装好了SSD环境后,由于SSD训练还需要第三方库,这里也有提供,链接:http:
(1)在caffe-master\src\caffe下新建3rdparty文件夹,里面添加hungarian.cpp &
(2)在caffe-master\include\caffe下新建3rdparty文件夹,里面添加hungarian.hpp
4 接下来这个一定要改,不改的话会反复出现类似于:error MSB3721: 命令“"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc.exe" ....等错误。我本人在此被坑几天,头发都掉了一地,哎。这里的解决办法是在detection_output_layer.cu,detection_output_layer.cpp两个文件中注释掉所有出现的regex和rv的语句;然后再detection_output_layer.hpp中将语句#include&&boost/regex.hpp&注释掉。此外,在libcaffe项目下的bbox_util.cu文件,注释掉thrust相关的内容,如下所示: &
期待能得到好的结果,也祝大家好运。有什么问题欢迎留言交流,哈哈。最后附上一些好的相关博客:
http://blog.csdn.net/gxb0505/article/details/
http://blog.csdn.net/maweifei/article/details/
https://github.com/weiliu89/caffe标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:http://www.cnblogs.com/zy230530/p/7932021.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!目标检测算法安装(19)
最近一直在搞object detection玩,之前用的是faster-rcnn,准确率方面73.2%,效果还不错,但是识别速度有点欠缺,我用的GPU是GTX980ti, 识别速度大概是15fps.最近发现SSD(single shot multibox detector) 这篇论文效果和速度都不错,我自己实验了一下,速度确实比faster-rcnn快不少。下面分两部分来介绍。第一部分介绍SSD的安装,第二部分介绍如何基于SSD训练自己的数据集。第一部分 SSD安装系统:ubuntu 14.04 语言:python ssd项目主页: 首先,我们把项目代码clone下来, 然后编译:git clone https:
git checkout ssd接下来,我们开始编译caffe,编译caffe非常容易,这里我们滤过,如若感兴趣,可参考我之前的博客:,此篇讲的是caffe + cpu + ubuntu14.04的安装, GPU版安装需修改Makefile.config文件, 修改完成后:make
make py到这里我们就完成了SSD的安装,接下来我们讲一下如何训练自己的数据集。第二部分 训练自己的数据集首先我们不妨先跑一下项目的demo, 需要下载数据集,提前训练好的数据集等。 下载预训练的模型,链接:,下载完成后保存在:caffe/models/VGGNet/下载VOC2007和VOC2012数据集, 放在/data目录下:cd data
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
tar -xvf VOCtrainval_11-May-2012.tar
tar -xvf VOCtrainval_06-Nov-2007.tar
tar -xvf VOCtest_06-Nov-2007.tar创建lmdb格式的数据:cd caffe
./data/VOC0712/create_list.sh
# It will create lmdb files for trainval and test with encoded original image:
- $HOME/data/VOCdevkit/VOC0712/lmdb/VOC0712_trainval_lmdb
- $HOME/data/VOCdevkit/VOC0712/lmdb/VOC0712_test_lmdb
./data/VOC0712/create_data.sh训练和测试:python examples/ssd/ssd_pascal.py论文中,作者已经预训练好模型,下载链接:,我们不必自己再去训练, 下载完成后放入指定的文件夹下。 测试时,我们使用/example/ssd/目录里的ssd_detect.ipynb,运行这个文件,需要安装ipython及ipython-notebook, 或者直接把里面的代码拷贝出来,写到一个新的python文件里,比如命名ssd_detector.py.OK, 下面修改一系列文件来训练自己的数据集 两种方案, 第一:保持原来的文件目录结构及文件名不变, 只替换里面的数据。第二:重新新建一个与之前类似的目录结构,改成自己命名的文件夹,第二种方法,有一定的风险性,需要修改程序里涉及数据路径的代码。在之前讲解的faster-rcnnan那篇博客中, 我们采用第一种方案。本次我们采用第二种方案。 在/data目录下创建一个自己的文件夹:cd /data
mkdir mydataset把/data/VOC0712目录下的create_list.sh 、create_data.sh、labelmap_voc.prototxt 这三个文件拷贝到/mydataset下:cp data/create* ./mydataset
cp data/label* ./mydatasetlabelmap_voc.prototxt, 此文件定义label。在/data/VOCdevkit目录下创建mydataset, 并放入自己的数据集:cd data/VOCdevkit
mkdir mydataset
cd mydataset
mkdir Annotations
mkdir ImageSets
mkdir JPEGImages
cd ImageSets
mkdir Layout
mkdir Main
mkdir Segmentation其中Annotations中存放一些列XML文件,包含object的bbox,name等; ImageSets中三个子目录下均存放train.txt, val.txt, trainval.txt, test.txt这几个文件,文件内容为图片的文件名(不带后缀); JPEGImages存放所有的图片;在/examples下创建mydataset文件夹:mkdir mydataset文件夹内存放生成的lmdb文件。上述文件夹创建好后, 开始生成lmdb文件, 在创建之前需要修改相关路径:./data/mydataset/create_list.sh
./data/mydataset/create_data.sh此时,在examples/mydataset/文件夹下可以看到两个子文件夹, mydataset_trainval_lmdb, mydataset_test_lmdb;里面均包含data.dmb和lock.到此为止,我们的数据集就做好了。接下来就开始训练了。训练程序为/examples/ssd/ssd_pascal.py,运行之前,我们需要修改相关路径代码:cd /examples/ssd
vim sd_pascal.py, 修改如下:
57行: train_data路径;
59行:test_data路径;
197-203行:save_dir、snapshot_dir、job_dir、output_result_dir路径;
216-220行: name_size_file、label_map_file路径;
223行:num_classes 修改为1 + 类别数
315行:num_test_image:测试集图片数目另外, 如果你只有一个GPU, 需要修改285行: gpus=”0,1,2,3” ===& 改为”0” 否则,训练的时候会出错。 修改完后运行python ./examples/ssd/ssd_pascal.py 训练完, 修改ssd_detector.py中模型路径, 任意找一张图片识别,看看效果怎么样。

我要回帖

更多关于 ssd目标检测训练步骤 的文章

 

随机推荐