YOLOP三合一:车辆检测+道路面分割+道路线分割

【前言】

原本想写AdderNet的,但这东西有点难顶,GPU训练显存用量明显不对劲,我的小显卡练个resnet20炸显存了,换成CPU炼,炼到天黑都跑不了多少个epoch,不折腾了。中间折腾的时候看到了华科的这个YOLOP的,所以这次就写这个好了。最近事情特别多,有点忙,而且YOLOP这个工作很简单,我也就随便写写算了。

以下解读与见解均为我的个人理解,要是我有哪里曲解了,造成了不必要的麻烦,可以联系我删除文章,也可以在评论区留言,我进行修改。也欢迎大家在评论区进行交流,要是有什么有意思的paper也可以留言,我抽空看一下也可以写一些。正文内容中的“作者”二字,均是指paper的作者,我的个人观点会显式的“我”注明。而文中的图基本都是从paper上cv过来的,我也没本事重做这么多的图,况且作者的图弄得还挺好看的。

Paper基本信息

题目:YOLOP: You Only Look Once for Panoptic Driving Perception

作者:Dong Wu, Manwen Liao, Weitian Zhang Xinggang Wang, 是来自华科的研究团队

链接:https://arxiv.org/abs/2108.11250

Github:https://github.com/hustvl/YOLOP

总结:YOLO车辆检测基础上加两个head实现道路面分割和道路线分割

Paper内容介绍

【网络结构】

这篇Paper的工作其实很简单,不说太多的废话了,一言以蔽之:在常见的目标检测模型的基础上,抽出来两个head,一个做道路面分割,一个做道路线分割。网络结构如下图所示:

YOLOP三合一:车辆检测+道路面分割+道路线分割_第1张图片

没看错的话,基本结构就是YOLO V5那一套,然后在neck最大的特征抽出来两个head就完事了。

【NCNN实现】

我在NCNN上把这个工程跑起来了,fp32计算,在骁龙845上跑起来了,撑死也就3fps。有兴趣的可以去试试:GitHub - EdVince/YOLOP-NCNN: YOLOP running in Android by ncnn

下面贴一下我跑出来的效果:

YOLOP三合一:车辆检测+道路面分割+道路线分割_第2张图片

整体效果还行,就是慢了点,我导了个APP给大家玩玩,也在Github上:YOLOP-NCNN/com.tencent.nanodetncnn-debug.apk at main · EdVince/YOLOP-NCNN · GitHub

【后话】

这个工作很简单,就是常见的单个任务里面利用它中间的特征,抽两个头出来做多任务而已,很常见的工作,不多说了。下一篇写什么暂时还没想好,大家有什么建议的可以说一说。

你可能感兴趣的:(深度学习,自动驾驶)