RSU
与Res block
的主要设计区别在于RSU
用U-Net
结构代替了普通的单流卷积,用一个权重层(weight layer)
形成的局部特征来代替原始特征。这种设计的变更使网络能够从多个尺度直接从每个残差块提取特征。更值得注意的是,U结构的计算开销很小,因为大多数操作都是在下采样的特征映射上进行的。
3.2 U^2-Net的结构
U^2-Net
的网络结构如下:
与U-Net的网络结构做一个对比:
直观上可以发现,U^2-Net
的每一个Block
都是一个U-Net
结构的模块,即上述Residual U-blocks
。当然,你也可以继续Going Deeper
, 每个Block
里面的U-Net
的子Block
仍然可以是一个U-Net
结构,命名为U^3-Net
。然后同理继续...,正所谓:子又生孙,孙又生子;子又有子,子又有孙;子子孙孙无穷匮也!
4. 性能表现
作者所提出的模型是使用DUTS-TR
数据集进行训练,该数据集包含大约10000个样本图像,并使用标准数据增强技术进行扩充。研究人员在6个用于突出目标检测的基准数据集上评估了该模型:DUT-OMRON
、DUTS-TE
、HKU-IS
、ECSSD
、PASCAL-S
和SOD
。评价结果表明,在这6个基准点上,新模型与现有方法具有相当好的性能。
U^2-Net
的实现是开源的,并为两种不同的方法提供了预训练的模型:U^2-Net
(176.3M
的较大模型,在GTX 1080Ti GPU
上为30 FPS
)和一个仅为4.7mb
的较小的U^2-Net
版本,最高可达到40 FPS
。代码和预训练模型都可以在Github找到:https://github.com/NathanUA/U-2-Net
。
5. Online demo试玩版
笔者参考论文作者开源的代码和预训练模型,在网站cvpy.net
上面做了一个在线体验的Demo,供大家体验。可以通过最下方二维码或者网址https://www.cvpy.net/studio/cv/func/DeepLearning/matting/matting/page/
前往体验。
本文分享自微信公众号 - CVPy(x-cvpy)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。