• thundernet


    在移动端部署检测模型时,因为速度原因,通常采用的是轻量级的backbone+one stage detector的方式。我之前在项目里就是采用的

    就是这种方案,但精度始终没法和two-stage相比,而two-stage又太慢,之前测过速度之后就没再考虑在移动端采用two-staget方案,

    而thundernet重新给了我在移动端采用two-stage的希望。

    先来看下网络的整体结构图,主要分成了backbone、RPN、ROI-head,主要针对前两个部分改进,roi-head部分延续了light-head的roi,

    下面分别看一下。

    一、backbone 

             基于shufflenetV2(共三个),为了扩大感受野,将所有的3*3 depth conv 替换为5*5 depth conv。对于SNet146和535,移除conv5,

    对于SNet49,conv输出一个比较薄的feature map。

    二、RPN

      对于PRN部分,主要增加了一个CEM模块和SAM模块。

      (1)CEM

        如图,其实就是一个特征融合模块,跟FPN没啥关系。

        注意:这里比lighe-head用了更少的特征图:7*7*5

      

         (2)将融合后的特征fcem经过5*5 dwconv + 1*1conv(替换原来的3*3conv),生成frpn,这一部分用于生成rois。

        (3)RPN是做背景-目标的二分类模型,作者认为这个特征可以用来做attention:更加专注于目标,而非背景。

                    frpn 经过1*1conv+BN,再经过sigmoid,产生0~1之间的值,然后与fcem做点乘(?),输出fsam,这个

    特征用于后续的psRoIAlign。

        (4)最后就是roi head, 延续light-head rcnn,使用1024维的全连接层,然后分类、回归位置。

                    

                    

     想法

    总体感觉就是shufflenetV2 + light-head ,使用大的分离卷积核扩大感受野,特征融合+attention获得更好的

    特征,同时进一步的削减rpn特征图的厚度,来减小计算量。代码目前没有公布预训练模型,手上也没有机器,挺想用

    实际数据去测试一下的。

  • 相关阅读:
    解决OpenERP依赖库问题
    用TcpTrace监控OpenERP客户端和服务器之间的通信
    Python相关文章索引
    将OpenERP日志输出到控制台
    培训模块(1):基本框架/教师管理
    点抽稀
    资源
    sharpMap学习笔记之一
    用openlayer显示google地图
    Map Tile 地图切片小工具
  • 原文地址:https://www.cnblogs.com/573177885qq/p/12397370.html
Copyright © 2020-2023  润新知