发布时间:2023-04-20 文章分类:电脑百科 投稿人:赵颖 字号: 默认 | | 超大 打印

学习视频:U2Net网络结构讲解_哔哩哔哩_bilibili

论文名称:U2-Net: Goging Deeper with Nested U-Structure forSalient Object Detetion

论文下载地址:https://arxiv.org/abs/2005.09007

官方源码(Pytorch实现):https://github.com/xuebinqin/U-2-Net

介绍

U2-net是阿尔伯塔大学(University of Alberta)在2020年发表在CVPR上的一篇文章。该文章中提出的U2-net是针对Salient ObjectDetetion(SOD)即显著性目标检测任务提出的。而显著性目标检测任务与语义分割任务非常相似,只不过显著性目标检测任务是二分类任务,它的任务是将图片中最吸引人的目标或区域分割出来,故只有前景和背景两类。

U2-net网络详解
U2-net网络详解

如上图,是这个任务结果比较

第一列为原始图像,第二列为GT,第三列为U2-net的结果、第四列为轻量级的U2-net结果,其他列为其他比较主流的显著性目标检测网络模型,可以看到不管是U2-net还是轻量级U2-net结果都比其他模型更出色。

U2-net网络详解

一、前言

U2-net网络详解

SOD任务是将图片中最吸引人的目标或者区域分割出来,这相当于语义分割中的二分类任务

U2-net网络详解

这是一张在ECSSD数据集上比较U2-net与其他主流模型的结果图,主要比较累模型的大小以及MaxF measure指标

U2-net网络详解

通过对比能发现U2-net不管在模型大小还是maxF measure效果都很好,图中红色星为标准的模型,蓝色星的为轻量级的模型

U2-net网络详解

二、网络结构解析

U2-net网络详解

如图所示,网络结构为大型的U-net结构的每一个block里面也为U-net结构,因此称为ᵄ82-net结构

U2-net网络详解

在原文中作者称每一个block为ReSidual U-block

图中block其实分为两种,一种是Encoder1到Encoder4加上Decoder1到Decoder4这八个结构相似,Encoder5与Encoder6,Decoder5又是另外一种结构。

第一种block

在Encoder阶段,每通过一个block后都会通过最大池化层下采样2倍,在Decoder阶段,通过每一个block前都会用双线性插值进行上采样

论文作者给出了block的结构,如下图

U2-net网络详解

这个block称为RSU-7,7是因为有7层,绿色代表卷积+BN+ReLU,蓝色代表下采样+卷积+BN+ReLU,紫色代表上采样+卷积+BN+ReLU,在RSU-7中下采样了5次,也即把输入特征图下采样了32倍,同样在Decoder阶段上采样了32倍还原为原始图像大小。

下图为视频作者为了更清楚的解释RSU-7,重新绘制了它的结构,重新加入了shape这个特征,让结构更加清晰,具体细节可以参考U-net网络。

U2-net网络详解

事实上RSU-7对应的是整体网络结构中的Encoder1和Decoder1,RSU-6对应的是整体网络结构中的Encoder2和Decoder2,RSU-5对应的是整体网络结构中的Encoder3和Decoder3,RSU-4对应的是整体网络结构中的Encoder4和Decoder4(如下图所示),相邻block差的是一次下采样和上采样,例如RSU-7里面是下采样32倍和上采样32倍,RSU-6是上采样16倍和下采样16倍。

U2-net网络详解

第二种block

U2-net网络详解

Encoder5和Decoder5,Encoder6使用是这个第二种block,由于经过了几次下采样,原图已经很小了,所以不再进行下采样,若再进行下采样,恐怕会丢失很多信息,这个block称为RSU-4F,主要是再RSU-4的基础上,将下采样和上采样换成了膨胀卷积,整个过程中特征图大小不变。

最后

将每个阶段的特征图进行融合,主要是收集Decoder1、Decoder2、Decoder3、Decoder4、Decoder5、Encoder6的输出结果,对他们做3*3的卷积,卷积核个数为1,再用线性插值进行上采样恢复到原图大小,进行concat拼接,使用sigmoid函数输出最终分割结果。

三、损失计算

U2-net网络详解

如图,为计算的损失公式,在这里M=6,表示Decoder1、Decoder2、Decoder3、Decoder4、Decoder5、Encoder6有六个输出,Wfuse代表的是最终的预测概率图的损失

四、评价准则

U2-net网络详解

如图为显著性目标检测的评价指标

Precision(精准度)

Recall(召回率)

Precision和Recall往往是一对矛盾的性能度量指标;

提高Precision == 提高二分类器预测正例门槛 == 使得二分类器预测的正例尽可能是真实正例;

提高Recall == 降低二分类器预测正例门槛 == 使得二分类器尽可能将真实的正例挑选出来;

precision代表准,recall代表全

五、DUTs数据集

DUTs数据集简介:

U2-net网络详解