专栏首页CVer重磅!YOLO-LITE来了(含论文精读和开源代码)

重磅!YOLO-LITE来了(含论文精读和开源代码)

前戏

本文要介绍一篇新的论文及开源项目:YOLO-LITE

看名字,就知道属于YOLO系列。这篇文章于2018年11月15日首发在arXiv上,考虑到该work开源了,于是Amusi就特意深挖一下推荐给大家。

CVers应该都知道YOLO官方三部曲:YOLOv1—>YOLOv2—>YOLOv3。其实还有很多衍生版,如YOLT和YOLO3D等。

那么YOLO-LITE是与上述work有什么区别呢?接着向下看

注:文末附网络模型和预训练权重

YOLO-LITE

YOLO-LITE是一种实时目标检测模型,可用于便携式设备,如缺少图形处理单元(GPU)的笔记本电脑或手机

该模型在PASCAL VOC数据集和COCO数据集上训练,分别达到33.81%和12.26%的mAP。YOLO-LITE仅有7层和4.82亿FLOPS,其在非GPU计算机上以大约21 FPS运行,在网页上以10 FPS运行。这个速度比最SOTA的SSD Mobilenet v1快3.8倍。

粗看下来,YOLO-LITE就是为了在无GPU的设备上实现实时目标检测,而且YOLO-LITE是基于Tiny-YOLOv2进行改进的。

根据作者描述,YOLO-LITE的设计还有额外的指标:

  1. 在无GPU的电脑上达到不低于10 FPS的速度
  2. 在PASCAL VOC上达到不低于30% mAP

YOLO-LITE主要有两个贡献:

  1. 证明浅层网络(shallow networks)的对于非GPU快速目标检测应用的能力。
  2. 证明batch normalization对于shallow networks是不必要的

YOLO-LITE网络介绍

Table VI 表示Tiny-YOLOv2网络结构,而Table VII表示YOLO-LITE的最佳性能试验(Trial):试验3-无BN

Tiny-YOLOv2由9个卷积层组成,总共3,181个filters和69.7亿个FLOPS。相比之下,试验3 - 无BN的YOLO-LITE仅由7层组成,总共749个filters和4.82亿个FLOPS。Tiny-YOLOv2比YOLO-LITE试验3 - 无BN 具有14倍以上的FLOPS 。

注:原作者对Tiny-YOLOv2进行改进,总共试验次数不低于13组,根据实验结果比较,试验3-无BN是YOLO-LITE最佳版本。所以上述只介绍了YOLO-LITE:试验3-无BN的网格结构。

数据集

  • PASCAL VOC 2007+2012
  • COCO 2014

实验结果

下图显示了试验3-无BN是YOLO-LITE最佳版本,其mAP和FPS的tradeoff最佳。

表VIII 表明了YOLO-LITE比SSD快了3.6倍,比Tiny-YOLOV2快了8.8倍,至于mAP,呃...凑合着看吧

总结

YOLO-LITE实现了将目标检测引入无GPU计算机的目标。此外,YOLO-LITE为目标检测领域提供了多种贡献。首先,YOL-LITE表明,shallow networks 对轻量级实时目标检测网络具有巨大潜力。在无GPU计算机上以21 FPS运行对于如小系统非常有前景。其次,YOLO-LITE表明,当涉及较小的浅层网络时,应该"质疑"是否需要使用batch normalization。

Amusi测试

YOLO-LITE究竟性能如何,让Amusi体验一下

Amusi笔记本:i5-6300HQ + GTX960m

注:Amusi木有找到无GPU的笔记本电脑(尴尬.jpg),并使用很早就配置好的GPU版本的darknet。(偷点懒,没有重新配置无GPU版本的darknet)

要想测试YOLO-LITE,首先要配置darknet(即YOLO环境),你可以在Linux下配置,也可以在Windows下配置,配置好darknet后,然后下载cfg网络模型和weights预训练权重:

1git clone https://github.com/reu2018DL/yolo-lite

下载好上述文件(有点大),便开始测试。

先看看TinyYOLOv2,预测速度是58FPS(17ms)

1darknet detector test data/voc.data cfg\\yolov2-tiny-voc.cfg weights\yolov2-tiny-vocweights dog.jpg

再看看YOLO-LITE,预测速度是200FPS(5ms)

1darknet detector test data/voc.data cfg/tiny-yolov2-trial3-noBatch.cfg weights/tiny-yolov2-trial3-noBatch.weights dog.jpg

速度不错,但检测结果有点感人

评价

Amusi觉得YOLO-LITE就是Tiny-YOLOv2的青春版,也可以理解为更轻量级版。YOLO-LITE在speed和mAP之间的tradeofff不是很可观,但其发现的两个tricks还是蛮有意思的。

参考

arXiv:https://arxiv.org/abs/1811.05588

homepage:https://reu2018dl.github.io/

github:https://github.com/reu2018dl/yolo-lite

本文分享自微信公众号 - CVer(CVerNews)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-11-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 超越YOLOv4!PP-YOLO:更快更好的目标检测网络

    Tricks大法好!PP-YOLO可达45.2% mAP,速度高达72.9 FPS!FPS和mAP均超越YOLOv4,FPS也远超过EfficientDet!

    Amusi
  • 开源 | 深度学习网络模型(model)可视化开源软件Netron

    前两天,Amusi分享了一篇 经典卷积神经网络(CNN)结构可视化工具,该工具可用于可视化各种经典的卷积神经网络结构。如AlexNet、VGG-16、ResNe...

    Amusi
  • 一文看尽10篇目标检测最新论文(SpineNet/AugFPN/LRF-Net/SABL/DSFPN等)

    一周前 Amusi 整理了 目标检测(Object Detection)较为值得关注的论文:

    Amusi
  • 全面解析YOLO V4网络结构

    作者|周威,https://zhuanlan.zhihu.com/p/150127712

    AI算法修炼营
  • vue @import 路径问题

    //这里可以导入其他文件(比如:组件,工具js,第三方插件js,json文件,图片文件等等)

    kirin
  • 小米路由器5G WiFi设置方法

    1、在浏览器中输入:miwifi.com 或者 192.168.31.1—— 输入这台小米路由器的管理密码,登录到设置页面,,如下图所示。

    砸漏
  • C++ push方法与push_back方法

    push与push_back是STL中常见的方法,都是向数据结构中添加元素。初识STL,对于添加元素的方法以产生混淆,这里暂对两种方法作出比较分析。此外,本文还...

    于小勇
  • ssh无密码登陆

    方便我们后续的无密码登陆别的机器,例如要登陆Hadoop、spark、hive等等,也方便我们在公司使用多台服务器。

    营琪
  • 华为深度学习框架MindSpore正式开源:自动微分不止计算图

    今年的华为开发者大会 HDC 2020 上,除了昇腾、鲲鹏等自研芯片硬件平台之外,最令人期待的就是深度学习框架 MindSpore 的开源了。今天上午,华为 M...

    机器之心
  • 聊聊storm WindowTridentProcessor的FreshCollector

    本文主要研究一下storm WindowTridentProcessor的FreshCollector

    codecraft

扫码关注云+社区

领取腾讯云代金券