论文地址:https://arxiv.org/pdf/2005.09007.pdf

内容简介

  • 这个网络是用来做显著目标检测的(SOD),能够取得出色的效果,同时模型文件较小,更适合于移动设备
  • 不同于原有的SOD网络,没有使用用于图像分类的backbone(如resnet),而是重头开始做了一个,避免受ImageNet数据分布的影响
  • 网络结构能做的更深,能够更好的利用更高分辨率下(更准确的说,多尺度下)的特征

网络结构


其原型也是一个UNet,思想也非常直接:

既然UNet(Encoder-Decoder)架构能在很多任务上取得出色的性能,而原有的Encode直接pool下采样和Decode直接conv上采样又感觉太简单了,要看看能不能加点什么东西。

而这里的思路就十分清奇了,直接加UNet进去提取特征,进行套娃(所以叫U2Net),最后也确实能取得十分出色的效果。原文表示甚至还能继续往下套娃(不过会too complicated to be implemented)。

U block

结构中的一个个小U Net在文中称为U block,一共有11个(En_1~De_1)。
En_1~En_4: U block的高度在逐渐降低(7,6,5,4),因为特征图的尺寸也在逐渐降低,如果此时高度仍不变的话则容易在深层造成特征丢失。实际上在代码中高度参数也是可以调整的,从而适应不同尺寸的原始输入,比如输入特征图尺寸更大的话则可以适当调高U block高度。
En_5~De_5: 此时由于特征图的尺寸已经很低了,因此U block中就没有再进行下采样上采样,防止特征损失,只使用空洞卷积来提取特征。
De_4~De_1: 与Encode部分基本对称,并且同样引入了skip connection。

Side Output

也就是中间Decoder的输出,在图中为S1~S6。由于低层的中间结果尺寸较低,因此也会采用双线性插值回原尺寸。最后对这六张结果(按通道)连接后进行1×1卷积压缩为单通道,获得最终的输出。

这种利用中间结果的思想可能来源于HED(Holistically-Nested Edge Detection)。

Loss

直接使用的是BCE Loss,将六个side output与最终结果各自的bce loss进行平均。需要注意还是由于side output的尺寸较低,因此同样也会上采样再计算loss。

简单总结

输入: 任意尺寸的RGB图像,首先被resize为320×320,然后random crop至288×288。
最终网络的输入为288×288。
Encoder: 共6个Encoder,其中前五个对特征图进行1/2的下采样,因此输入最终被采样至输入特征图的1/32(在这里为9×9)。
Decoder: 共5个Decoder,每次上采样2倍,最后将特征图恢复为原始尺寸(在这里为288×288)。
输出: 原尺寸的特征图。综合六层中间结果进行输出,由于之前resize和random crop过,因此会有个双线性插值过程。
Loss: 使用各层bce loss的平均。
训练: 作者训练该网络时没有使用任何预训练模型,因此训练了120小时(1080Ti)。

论文阅读:U2 Net: Going Deeper with Nested U-Structure for Salient Object Detection相关推荐

  1. 论文阅读:A Progressive Architecture With Knowledge Review Network for Salient Object Detection

    论文地址:https://ojs.aaai.org/index.php/AAAI/article/view/16408 发表于:AAAI 2021 Abstract 显著目标的定位与分割是显著目标检测 ...

  2. 论文阅读笔记五十三:Libra R-CNN: Towards Balanced Learning for Object Detection(CVPR2019)

    论文原址:https://arxiv.org/pdf/1904.02701.pdf github:https://github.com/OceanPang/Libra_R-CNN 摘要 相比模型的结构 ...

  3. 【目标检测论文阅读笔记】QueryDet: Cascaded Sparse Query for Accelerating High-Resolution Small Object Detection

    Abstract 虽然深度学习的通用目标检测在过去几年取得了巨大成功,但检测小目标的性能和效率却远不尽如人意.促进小目标检测的最常见和有效的方法是使用高分辨率图像或特征图.然而,这两种方法都会导致昂贵 ...

  4. 【论文阅读】【三维目标检测】StarNet: Targeted Computation for Object Detection in Point Clouds

    文章目录 StarNet Center selection Featurizing local point clouds After Constructing final predictions fr ...

  5. [论文阅读] Stereoscopically Attentive Multi-scale Network for Lightweight Salient Object Detection

    论文地址:https://dx.doi.org/10.1109/TIP.2021.3065239 代码:https://mmcheng.net/SAMNet 发表于:TIP 2021 Abstract ...

  6. U2-Net: Going Deeper with Nested U-Structure for Salient Object Detection|环境搭建|人物素描 测试 简记 |

    这个代码非常强大,最近作者更新了模型 我也特别更新一篇博文 [最新同步更新教程链接 – 2021-9-3 ]-- 敬请移步 文章目录 U2-Net: Going Deeper with Nested ...

  7. 论文阅读:Salient Object Detection: A Benchmark

    论文阅读:Salient Object Detection: A Benchmark 南开大学的显著性检测benchmark 链接:http://mmcheng.net/zh/salobjbenchm ...

  8. 【论文阅读】SIGMOD‘19 FITing-Tree: A Data-aware Index Structure

    [论文阅读]SIGMOD'19 FITing-Tree: A Data-aware Index Structure 介绍 传统的索引结构(比如B+tree),需要消耗大量的空间,在一些OLTP负载下, ...

  9. [论文阅读] Boosting Salient Object Detection with Transformer-based Asymmetric Bilateral U-Net

    论文地址:https://arxiv.org/abs/2108.07851 发表于:Arxiv 2021.08 Abstract 现有的显著目标检测(SOD)方法主要依靠基于CNN的U型结构,通过跨层 ...

  10. [论文阅读] Looking for the Detail and Context Devils: High-Resolution Salient Object Detection

    论文地址:https://dx.doi.org/10.1109/TIP.2020.3045624 发表于:TIP 2021 Abstract 近年来,随着大规模基准测试与深度学习技术的成就,显著目标检 ...

最新文章

  1. 总结是学习最好的方式(转)
  2. 中兴SDH原理介绍及中兴E300网管介绍
  3. PHP复制和移动目录
  4. httpWebRequest 错误
  5. Windows 下配置Apache+MySql+PHP环境(原创)
  6. wordpress安装时网页无法打开-调试办法(还没整理完)
  7. nginx+uwsgi部署Django
  8. atheros有线网卡LINUX驱动,请问有知道atheros无线网卡Linux驱动官方下载地址是什么吗?...
  9. 8 使用SubMenu创建子菜单
  10. 14.Linux/Unix 系统编程手册(上) -- 文件系统
  11. 简述物联网感知技术_雄芯一号芯片发布 智慧城市物联网感知体系升级换新
  12. 使用Docker部署前端项目实战教程,该踩的坑我都帮你踩了!
  13. Android原生支持组件编译,从0开始编译android类原生系统
  14. 歌单音乐播放器php源码,thinkphp多风格网页音乐播放器源码
  15. 计算机读不到u盘如何修复u盘,U盘读不出来怎么办?U盘无法读取修复方法
  16. 大富豪5.3全网首发,真正的5.3正版破解授权,不是高防端
  17. 《基于数字信号处理的相干光通信技术》读书笔记chapter III——单载波相干检测及其关键技术
  18. CSS3之其他常用属性
  19. 用错错错错错错知知中算改改不不写一句富含哲理的话
  20. C++:实现量化Jump-diffusion跳跃扩散过程测试实例

热门文章

  1. php 可变变量 数组赋值,PHP可变变量学习小结
  2. 音乐计算机官方.,Boom音乐电脑版
  3. python class类的self_Python类class参数self原理解析
  4. python编程狮app题库_‎Python编程狮-零基础学Python App Storessa
  5. php 如何打乱数组顺序,【PHP打乱数组顺序的方法有哪些,这样的程序你真的会写吗】- 环球网校...
  6. SQLite基础知识学习
  7. 剑指 Offer 55 - I. 二叉树的深度
  8. 目标检测——Anchor-Based算法的学习笔记
  9. vue如何保存登录状态到全局?【vue状态管理】
  10. distributed--根索引