PicoDet:专为移动CPU优化的快速目标检测

概述

PicoDet是在2021年11月发布的一种机器学习模型。它将最近在目标检测模型方面的研究成果集成到一个轻量级模型中,以在移动CPU上实现高准确度和高速目标检测。

c8577f9bcc9943b302f51592c8b7b9f1.png

COCO dataset

架构

PicoDet通过使用轻量级结构作为骨干,提高了特征提取的速度。通过改进损失函数,它还提高了训练的稳定性和效率。

最近几年来,基于无锚点的检测器在目标检测中变得越来越受欢迎,而全卷积单阶段目标检测(FCOS)解决了重叠的地面实况标签问题。而典型的锚框为每个坐标都有多个锚点,FCOS为每个坐标只有一个中心点;使用FCOS的无锚点方法具有无需超参数调整的优势。

然而,通常无锚点的检测器用于服务器端处理的模型,这些模型相对较大。用于移动应用的无锚点模型仅限于NanoDet和YOLOX-Nano。对于轻量级无锚点检测器来说,很难平衡准确性和效率。PicoDet是一种受FCOS和广义焦点损失(GFL)启发的新尝试。

082354355ce7393c93906d556d316929.png

PicoDet

CSP是ResNet等模型中使用的“跳跃连接”机制的进化。它通过添加一个机制来切断和连接先前阶段的特征图,而无需进行卷积运算,从而便于反向传播并减少操作量。在PicoDet中,将3x3深度卷积扩展为5x5深度卷积,以扩大感受野。

b96ae68558329ebe12a4ce474fe74b75.png

CSPNet

为了改善标签分配策略,采用了SimOTA,并采用了Varifocal Loss(VFL)和GIoU损失作为损失函数。

SimOTA也用于YOLOX。在确定预测边界框与地面实况边界框之间的映射以计算损失时,该方法不是分配最近的地面实况,而是解决了一个优化问题,以分配更合适的地面实况。SimOTA是OTA(Optimal Transport Assignment)的更快版本。

bc02f6e014ae6e28d03adc1a86fe82f7.png

SimOTA

在这个目标检测模型中,通过将地面实况边界框分配给HEAD预测的每个边界框,并反向传播损失来进行学习。地面实况边界框可能会重叠。如果预测边界框落在该区域内,我们将出现一种称为“模糊锚点”的情况,我们不知道要分配哪个地面实况。OTA具有一种算法,使将地面实况边界框分配给模糊锚点变得困难。

a0030d4fde0b16ab095ad57b63856b68.png

模糊锚点

以下是OTA分配的结果示例。图像中的点是预测边界框的中心点,红色椭圆显示了分配策略的差异。

02e1377becad79eded32c6a8322679d1.png

OTA分配的结果

PicoDet中用于特征提取的骨干是Enhanced ShuffleNet,这是ShuffleNetV2的改进版本,是一种适用于移动设备的高效模型架构。ShuffleNet引入了“逐点组卷积”和“通道混洗”操作,以加速1x1卷积,这是MobileNet的瓶颈。

919dc840c19151d96048b5bf42e98baa.png

Enhanced ShuffleNet

一次性神经架构搜索(NAS)被引入以搜索每层的最佳通道数量。搜索结果显示,使通道数量成为8的倍数对提高推断速度的贡献最大。

性能

以下是使用高通骁龙865 CPU的性能。在使用NCNN在CPU上运行时,YOLOX-Tiny在mAP 32.8时需要32.77毫秒,而PicoDet在mAP 30.6时需要12.37毫秒。在17.39毫秒内可以实现mAP 34.3。

579da1531080927bd3cfed0d9a017adb.png

这种性能提升是在CPU上运行推断时可以测量到的,而在GPU上运行时它们表现相同。因此,YOLOX-Tiny可能更适用于Jetson设备,而PicoDet可能最适合树莓派等设备。

用法

可以使用以下命令将PicoDet与ailia SDK一起用于检测网络摄像头视频流中的对象。

$ python3 picodet.py -v 0

ax Inc. 开发了ailia SDK,该SDK支持跨平台、基于GPU的快速推断。ax Inc. 提供从咨询和模型创建到基于AI的应用程序和SDK开发的广泛服务。如有任何疑问,请随时与我们联系。

·  END  ·

HAPPY LIFE

7015e0c6f9467a29ec4b4cac5f4326e5.png

本文仅供学习交流使用,如有侵权请联系作者删除

  • 25
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值