1.解决问题
我们能否为SOD设计一个新的网络,允许从头开始进行训练,并获得与基于现有预先训练的骨干相当或更好的性能?
我们能在以低内存和计算成本维护高分辨率特征图的同时加深网络吗?
2.主要贡献
开发了一个新颖而简单的网络架构,称为U2 -Net,它解决了上述两个问题。首先,U2 -Net是一个两级嵌套的u型结构,它是为SOD设计的,不使用任何来自图像分类的预先训练的骨干。它可以从零开始进行训练,以达到竞争中的表现。其次,新的架构允许网络更深入,获得高分辨率,而不显著增加内存和计算成本。
嵌套的u结构:在底层,作者设计了一种新的ReSidual U-block(RSU),它能够提取阶段内的多尺度特征;在顶层,有一个类似U-Net的结构,每个阶段由一个RSU块填充。两级配置导致了一个嵌套的U型结构(见图5)。U2 -Net(176.3 MB)在6个公共数据集上实现了与最先进的(SOTA)方法相比的竞争性能,并在1080Ti GPU上实时运行(30 FPS,输入大小为320×320×3)。为了方便在计算和内存受限的环境中使用我们的设计,我们提供了U2 -Net的一个小版本,称为U2-Net(4.7MB)。U2-Net在40 FPS下获得了与大多数SOTA模型(见图1)的竞争结果。
3.Related Works
多层次深度特征集成方法主要侧重于开发更好的多层次特征聚合策略。另一方面,多尺度特征提取类的方法的目标是设计新的模块,从主干网络获得的特征中提取局部和全局信息。
4. Proposed Method
3.1. Residual U-blocks
局部和全局的上下文信息对于显著的目标检测和其他分割任务都非常重要。在现代CNN设计中,如VGG、ResNet、DenseNet等,大小为1×1或3×3的小卷积滤波器是特征提取最常用的组件。它们很受欢迎,因为它们需要更少的存储空间,而且计算效率也很高。图2(a)-(c)说明了具有较小接受域的典型现有卷积块。浅层的输出特征图只包含局部特征,因为1×1或3×3滤波器的接受域太小,无法捕获全局信息。为了在浅层的高分辨率特征图上获得更多的全局信息,最直接的想法是扩大接受域。图2 (d)显示了一个类似于块[50]的初始区域,它试图通过使用扩张卷积[3]扩大接受域来提取局部和非局部特征。然而,在具有原始分辨率的输入特征图(特别是在早期阶段)上进行多个扩展卷积需要太多的计算和内存资源。为了降低计算成本,PoolNet [22]采用了金字塔池模块(PPM)[57]的并行配置,该模块在降采样特征图上使用小的核滤波器,而不是在原始尺寸特征图上使用扩展卷积。但是,通过直接上采样和串联(或添加)来融合不同尺度的特征,可能会导致高分辨率特征的退化。
受U-Net [34]的启发,我们提出了一种新的模块RSU,以捕获阶段内的多尺度特征。RSU-L(Cin、M、Cout)的结构如图2(e)所示,其中L为编码器中的层数,Cin、Cout表示输入和输出通道,M表示RSU内部层中的通道数。因此,RSU主要由三个组成部分组成:
(i)一个输入卷积层,它将输入特征映射x(H×W×Cin)转换为一个带有Cout通道的中间映射F1(x)。这是一个用于局部特征提取的普通卷积层。
(ii)一个高度为L的对称类似U-Net的编码器-解码器结构,它以中间特征映射F1(x)为输入,并学习提取和编码多尺度上下文信息U(F1(x))。U表示U-Net类结构,如图2(e)所示。较大的L会导致更深的residual U-block(RSU),更多的池化操作,更大范围的接受域和更丰富的局部和全局特征。配置此参数可以从具有任意空间分辨率的输入特征图中提取多尺度特征。从逐步降采样的特征图中提取多尺度特征,并通过逐步上采样、串联和卷积等编码到高分辨率的特征图中。这一过程减轻了由大尺度直接上采样造成的细节损失。
(iii)通过求和融合局部特征和多尺度特征的残余连接
与原始残差块[12]进行比较:残差块中的操作可以概括为H (x) = F2(F1(x))+x,其中H (x)表示输入特征x的期望映射;F2、F1代表权重层,在此设置下是卷积操作。RSU和残差块的主要设计区别是,RSU用U-Net类结构取代了普通的卷积,用权重层转换的局部特征取代了原始特征: ,其中U代表图2(e)所示的多层U结构。
这种设计变化使网络能够直接从每个残差块中从多个尺度中提取特征。更值得注意的是,由于u型结构而造成的计算开销很小,因为大多数操作都是应用在降采样的特征图上的。如图4所示,图2 (a)-(d).中是RSU和其他特征提取模块的计算成本比较密集块(DSE)、初始块(INC)和RSU的计算量都随内部通道M的数量呈二次增长,但RSU在二次项上的系数要小得多,从而提高了效率。与普通卷积(PLN)和残差块(RES)块相比(两者对M都是线性的),它的计算开销没有显著变化,
3.2. Architecture of U2 -Net
为不同的任务堆叠多个类似u-net的结构有许多研究成果。e.g.stacked hourgalss network[31]、DocUNet [28]、CU-Net [38]进行姿态估计等。这些方法通常依次堆叠U-Net类结构来构建级联模型,可以总结为“(U×-Net)”,其中n是重复的U-Net模块的数量。问题是计算量和内存成本被放大了n。
在这里,作者设置n为2来构建U2 -Net。U2 -Net是一个如图5所示的两级嵌套的u型结构。它的顶层是一个由11个阶段组成的大u型结构(图5中的立方体)。每个阶段都由一个配置良好的剩余Ublock(RSU)(底层U型结构)填充。因此,嵌套的u型结构能够更有效地提取阶段内多尺度特征,并更有效地聚合阶段间多级特征。
如图5所示,U2 -Net主要由三部分组成:(1)六级编码器,(2)五级解码器(3)附加有解码器级和最后一个编码器级的显著性图融合模块:
在编码器的En 1、En 2、En 3和En 4阶段,分别使用了residual U-blocks RSU-7、RSU-6、RSU-5和RSU-4。如前所述,“7”、“6”、“5”和“4”表示RSU块的高度(L)。L通常根据输入特征图的空间分辨率进行配置。对于高度和宽度较大的特征图,需要使用更大的L来捕获更大规模的信息。En 5和En 6中的特征图的分辨率相对较低,对这些特征图的进一步降采样会导致有用的上下文的丢失。因此,在En 5和En 6阶段,都使用了RSU4F,其中“F”表示RSU是一个扩展版本,我们用扩展卷积替换了池化和上采样操作(见图5)。这意味着RSU-4F的所有中间特征图与其输入的特征图具有相同的分辨率。
(ii)解码器级与对称编码器级具有相似的结构。在De 5中,还使用了扩展版本的residual U-block RSU-4F,这与在编码器阶段En 5和En 6中使用的类似。每个解码器阶段将上一阶段的上采样特征图与其对称编码器阶段的上采样特征图的连接作为输入,见图5。
最后一部分是用于生成显著性概率映射的显著性映射融合模块。与HED [45]类似,U2 -Net首先通过En 6、De 5、De 4、De 3、De 1阶段生成。然后,它采样的日志(卷积输出函数)的输出显著性映射到输入图像大小和融合连接操作之后是1×1卷积层和s型函数生成最终显著概率映射
(见图5的右下角)。
总之,U2 -Net的设计允许拥有具有丰富的多尺度特性和相对较低的计算量和内存成本的深度架构。此外,由于U2 -Net架构只建立在我们的RSU块上,而没有使用任何适应图像分类的预先训练的骨干,因此它灵活且容易适应不同的工作环境,并且没有明显的性能损失。作者通过使用不同的滤波器数配置,提供了U2 -Net的两个实例:一个普通版本的U2 -Net(176.3 MB)和一个相对较小的版本的U2-Net(4.7MB)。详细的配置见表1的最后两行。
3.3. Supervision
在训练过程中,使用类似于HED [45]的深度监督。其有效性已在HED和DSS中得到证明。训练损失函数被定义为:
其中,(M = 6,如图5中的Sup1,Sup2,···,Sup6)为输出显著性图
的损失,
(图5中的Sup7)为最终融合输出显著性图
的损失。
和
是各损失项的权重。对于每个项l,我们使用标准的二元交叉熵来计算损失:
式中,(r、c)为像素坐标,(H、W)为图像大小:高度和宽度。PG(r、c)和PS(r、c)分别表示地面真实值和预测的显著性概率图的像素值。训练过程试图尽量减少等式的总损失L (1).在测试过程中,选择融合输出作为最终的显著性图。
4. Experimental Results
深度显著对象方法的输出通常是与输入图像具有相同空间分辨率的概率图。预测的显著性映射的每个像素的值都在0和1(或[0,255])范围内。地面真相通常是二进制掩模,其中每个像素要么是0或1(或0和255),其中0表示背景像素,1表示前景显著的对象像素。
为了综合评价这些概率图的质量与地面真相,采用(1)精度召回(PR)曲线、(2)
![](https://i-blog.csdnimg.cn/blog_migrate/07403f5f8649fd728b8e8709fe3c37ba.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cfbdb2659bf68c5a1ecfa8a8f8eb286a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d42359df5e359f14e03c472b7be9d674.png)
(1)基于一组精确召回率对绘制PR曲线。给定一个预测的显著性概率图,通过将其阈值二值掩码与地面真实掩码进行比较,计算其精度和召回率得分。一个数据集的精度和召回率是通过平均这些显著性图的精度和召回率分数来计算的。通过将阈值从0改变到1,我们可以获得一组数据集的平均精度-召回率对。
(2)用于对精度和查全率进行综合评价:
将β2设置为0.3,并报告每个数据集的最大Fβ(maxFβ)
(3) MAE是平均绝对误差,它表示预测的显著性映射与其地面真实掩模之间的平均每像素差。定义为:
其中,P和G分别为显著目标检测的概率图和对应的地面真实值,(H、W)和(r、c)分别为(高度、宽度)和像素坐标。
(4)weighted F-measure ()作为maxFβ的补充度量,克服了“插值缺陷、依赖缺陷和等重要缺陷”[23]可能导致的不公平比较。其定义为:
(5)S-measure(Sm)来评估预测的非二元显著性映射的结构相似性和地面真相。s测度被定义为区域感知Sr和对象感知So结构相似度的加权和:
其中,α通常被设置为0.5。
![](https://i-blog.csdnimg.cn/blog_migrate/d42359df5e359f14e03c472b7be9d674.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d42359df5e359f14e03c472b7be9d674.png)
![](https://i-blog.csdnimg.cn/blog_migrate/44ed17a50c6ac4be6795303acb1ae5a1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/88544dfcc7a1e9d2aef627f7bb311237.png)
![](https://i-blog.csdnimg.cn/blog_migrate/44ed17a50c6ac4be6795303acb1ae5a1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/88544dfcc7a1e9d2aef627f7bb311237.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d42359df5e359f14e03c472b7be9d674.png)
4.3. Implementation Details
在训练过程中,每幅图像首先被调整到320×320,然后随机垂直翻转并裁剪到288×288。网络中没有使用任何现有的骨干网。因此,作者从头开始训练我们的网络,我们所有的卷积层都由Xavier [10]初始化。和
均设置为1。Adam优化器[16]用于训练我们的网络,它的超参数被设置为默认值(初始学习速率lr=1e-3,betas=(0.9,0.999),eps=1e-8,权重衰减=0)。我们训练网络,直到损失收敛,而不使用遵循前面的方法[22,23,50]的验证集。经过600k次迭代(批处理大小为12)后,训练损失收敛,整个训练过程大约需要120个小时。在测试过程中,将输入图像(H×W)调整到320×320,并输入网络以获得显著性图。预测的大小为320×320的显著性图被调整到输入图像的原始大小(H×W)。这两种尺寸调整过程均采用了双线性插值法。训练和测试都是在8核16线程PC上进行的,AMD锐龙1800x 3.5 GHz CPU(32GB内存)和GTX 1080ti GPU(11GB内存)。
4.4. Ablation Study
在阻断消融术中,目标是验证新设计的RSU的有效性。具体来说,我们修复了U2 -Net的外部编码器-解码器架构,并用其他流行的块替换其阶段,包括普通卷积块(RSU块(PLN)、残差块、密集块(DSE)、初始块(INC)和金字塔池模块(PPM),如图2 (a)-(d).所示详细的配置方法见表1。 结果如下表:
4.4.2 Ablation on Architectures
与级联方法对比:对比stacked HourglassNet和CU-Net来比较级联体系结构和嵌套体系结构之间的性能。
4.4.3 Ablation on Backbones
用不同的骨干替换全尺寸U2 -Net的编码器部分: VGG16和ResNet50。实际上,作者对骨干(VGG-16和ResNet- 50)进行了调整,在它们最后的卷积阶段之后增加了一个额外的阶段,以实现与最初的U2 -Net架构设计相同的接受域
4.5. Comparison with State-of-the-arts
作者比较了该模型(全尺寸U2 -Net,176.3 MB和小尺寸U2-Net,4.7MB)和20种最先进的方法,包括一个基于AlexNet的模型: MDF;10基于VGG的模型: UCF,Amulet,NLDF,DSS,RAS,PAGRN,BMPM,PiCANet,MLMS,AFNet;一个基于DenseNet的模型MSWS;一个模型基于ResNeXt;R3Net;七个基于ResNet模型: CapSal,SRM,DGRL,PiCANetR,CPD,PoolNet,BASNet。
结果如下图: