基于MindSpore框架Yolov3-darknet模型的篮球动作检测体验

举报
Dasming 发表于 2020/11/11 00:16:14 2020/11/11
【摘要】 基于MindSpore框架Yolov3-darknet模型的篮球动作检测体验


 

本堂课是MindSpore21天实战营的第四堂课,由王老师分享了Yolov3在图像分类、目标检测等方面的实现。通过对篮球动作的分类训练及识别检测实例的讲解和体验,使我们了解了Yolov3模型的原理、架构等基本知识,为日后的深入学习奠定了基础。

本次体验同样基于ModelArts+OBS,基本的操作步骤不复赘述,可以参考之前的文章。作业也同样分为体验作业和进阶作业。

体验作业:输入篮球比赛图片,在ModelArts环境上完成模型推理流程。根据本课提供的代码和操作步骤,是比较容易实现的,在此也不复强调。

进阶作业:输入篮球比赛视频,在ModelArts环境上完成模型推理流程。具体实现步骤如下:

1、下载一段篮球比赛视频,格式最好是mp4、avi等常规格式。用专用播放器下载的特殊格式,还需要转换一下;另外就是考虑到数据量的问题,视频的时间也不宜超过1分钟。本次操作的视频转码mp4后,居然带着水印(试用版),不确定会不会影响后续的识别。

2、对视频进行切分为图片,格式为.jpg。根据本课提供的OpenCV代码,在本地测试成功后,放到ModelArts上调试却不成功,多次调试无果。

2.1本地操作的代码如下图:

2.2 帧率为25,按照10帧取1,共切分出116张图片,图片大小为1920*1080。执行过程如下图所示


2.3 将图片通过OBS-browser-plus上传到OBS桶Yolov3项目数据集路径中;

2.4 修改predit.py代码,使其适应于批量图片的推理,并上传Yolov3代码至OBS桶。 

Ps:2.4.1 图片目录中需按名称顺序读取并处理;

2.4.2 要将detection = DetectionEngine(args)语句置于循环中,否则其导致上一张图的Bounding box的累加复用,导致预测结果错误。如下图所示极端状况:

2.5 将Yolov3代码上传OBS桶Yolov3代码目录,并设置启动predict.py;在输出图片遍历的打印信息后,图片的检测工作就完成了,并输出到设置的OBS输出目录中。ModelArts检测日志见下图:

Ps:需注意增加checkpoint_path的配置,做为推理使用的训练模型。具体设置过程参见进阶作业步骤。

2.6、将图片使用OBS-browser-plus下载到本地,使用代码将其合并为视频。同样,ModelArts尝试运行无果。本地运行代码如下:

 合成操作打印信息如下图所示:

到此,进阶作业的过程基本完成。

后记:

1、  本次课程训练使用的3000张篮球比赛图片,是在ModelArts上使用图片标记完成的,这可以作为深入了解AI模型拓展的一个起点;

2、  本次课程提供了GPU版本的代码,ModelArts上未实现的可以尝试在GPU环境下自动完成图片的切分、检测及合并;

3、  本节课后老师又补充了Yolov4的代码,可以尝试体验相比Yolov3检测精度是否有所提升。此项目前正在处理报错中,尚未成文,等待后补,谢谢!

-------End-------

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。