“只要思想不滑坡,办法总比困难多,干巴得!”
打工人的一天终于要结束了!拖着疲惫的身躯准备下班,却听到同事小A还在给自己打气。
只见他迅速打开电脑,打开百度、打开知乎豆瓣微博微信......
都输入了同一行字:肖像画简易教程......
还以为他要干什么惊天动地的大事!原来是想给女神古力娜扎(Gulnazar)画一幅肖像画。
年轻人就是年轻人,还有精力追星。
可还没等我离开,他却哭了—"世上无难事,只要肯放弃”,哇的一声!
也是难为他了。无文艺细胞的理工男一枚,没学过画儿,也没画过画儿,现在还想给女神画一幅肖像画儿,看这头秀发哪是一个小白能画出来的。
“这哪是简易教程,构图、划线、起形.....看的我头都大了,效果还只是这样。”
听着小A絮絮叨叨、絮絮叨叨的吐槽,不禁想起了当年的自己,作为一个呆萌理工男也少不了做过同样的蠢事。
“你不知道有很多APP,只要输入照片就可以一秒生成吗?”我忍不住说到。
小A呆住了。
“不过,看来你的要求还挺高,这样,给你推荐一个高阶版神器吧”。我迅速发了一张样图给他:
(别问我为什么可以迅速,问就是早有预谋)[让我看看]
“先看整体感觉,是不是一股艺术气息扑面而来?再看看神情,轻轻皱眉都能捕捉到位,再看看这头发,浓密柔和自然,还根根分明,一看就是专业水准.....%¥#%@#”,不知不觉又暴露了推销老司机的本质....
“赞、太赞、非常赞!一句话,这是用的什么神器?”
“我发给你,就是用的这款AI工具...........%¥#%@#,它的研发者还是我们北大....”
话还没说完,小A就把他的成果图发给了我。
“太棒了,没想到如此轻松就搞定了!”只见他边说边合上电脑、装进书包,穿上外套,大步走向了门口,这速度像极了我平常下班的样子......
最后还不忘转身朝我比了一串串小芯芯......
我呆住了。“先走的不应该是我吗?”,“等等,我话还没说完!”。
“算了,这班我不下了”。
除了他,相信大家对这项AI工具的背后原理「一定」非常感兴趣,那么我就来给大家详细介绍一下。
北大校友出品:显著性目标检测工具
这款AI工具叫U∧2-Net(U Square Net),最近火到不行!
不仅登上了GitHub热榜,收割了2.8k星标,还被顶会ICPR 2020 选中。更关键是,这项研究的一作还是北大校友——秦雪彬。
相信不少开发者朋友对这个名字非常熟悉,他之前提出边界感知显著目标检测网络 BASNet,被用来做了很多好玩的工具,比如『隔空复制粘贴』——AR Cut & Paste
https://twitter.com/cyrildiagne/status/1256916982764646402
只要手机扫一扫,书本、花盆、杂志人物,你能看到的任何现实物体,只需10s统统都可以被“粘贴”到电脑里。
这项研究在Reddit上短短几个小时,就获得了近5K点赞量,之后累计浏览量超过了500万。
秦雪彬以前在北京大学读硕士,现在是加拿大阿尔伯塔大学的一名在读博士。他对计算机视觉技术非常感兴趣,尤其是目标物体检测。最近推出的这款U^2-Net深度网络架构,同样是一个目标检测工具。
之前的BASNet网络被用来做“复制粘贴”测试,效果很好。这次,他就用U^2-Net做了一个生成肖像画测试,结果也火了。
再来感受下精细到毛发的生成效果。
目标检测是计算机视觉和数字图像处理的一个重要分支。计算机视觉对于目标运动的分析大致分为三个层次:图像分割,目标检测;目标跟踪;目标识别与描述。其中,目标检测是最基础且关键的环节。
2006 年,自深度学习三大巨头Hinton、Bengio、Lecun 提出卷积神经网络(CNN),并应用于图像处理以来,目标检测技术得到显著性改善,尤其是随着全卷积神经网络(FCN)的提出,目标检测任务逐步达到最佳SOAT。
在今年的MICCAI 2020(国际医学图像计算与计算机介入)大会上,U^2-Net凭借出色的性能表现,在甲状腺结节分割比赛中获得第六名。
接下来,我们说说它是如何做到的。
任何AI处理过程都分为三个阶段:输入目标——模型训练——输出结果。要想达到高质量的生成效果,除了考验模型精度外,当然输入源也很重要。这一点也是我们所能控制的。
对于U^2-Net而言,高质量的照片源可以获得更多细节,所以在上传照片时要注意以下几点:
-
照片中人头区域应接近或大于512x512像素。
-
照片整体大小最好达到960x1280像素。
-
背景要尽量清晰、无干扰。
如图,秦雪彬还亲自示范做了说明。
接下来是最关键的目标检测模型(SOD)。
U∧2-Net模型:嵌套式双层U型结构
先来看一组与现有最先进SOD模型的比较。
其中红色星标代表U∧2模型(176.3 MB),它在相对小的模型尺寸下,表现出了最高性能。(蓝色星标为4.7 MB的U∧2)
之所以达到如此性能,是因为U∧2拥有两层嵌套式U型结构,其中的ReSidual U-Block(RSU)中混合了大小不同的接收域,能够从不同尺度捕获更多语境信息。另外,由于这些RSU块中使用了池化操作,因此可以深度捕获更多细节,同时不会显著增加计算成本。
最关键的是,这种结构体系能够让模型从头训练深层网络,而无需使用图像分类任务的架构。
现在大多数SOD 网络设计都存在这样一个问题:即专注于利用现有的基础网络提取深度特征,例如 Alexnet、VGG、ResNet、ResNeXt、DenseNet 等。但这些主干网络最初都是为图像分类任务设计的。
它们提取代表语义含义的特征,而不是代表局部性细节或全局对照信息,这对于显著性目标检测至关重要,并且这些网络通常需要在 ImageNet 数据上进行预训练,效率比较低。相比之下,U∧2-Net可以有效地避免上述问题。
U∧2-Net架构
接下来详细介绍其中的Block结构、网络监督策略以及训练损失。
ReSidual U-Block
在图像信息提取中,1×1或3×3的小型卷积滤波器是最常用的特征提取元件。因为它所需内存小且计算效率高。但该元件接收域太小,无法捕获全局信息,因此解决方法只能是采用扩张卷积(Dilated Convolution)的方法来扩大接收域。
然而在原始分辨率的特征图上进行多次扩张卷积(尤其是在初始阶段),会耗费大量的计算和内存资源。
为了降低计算成本,同时又能捕获全局信息,研究人员采用了金字塔池化模块(Pyramid Scene Parseing Network,PSPNet)。该模块在下采样特征映射上使用小核滤波器,而不是在原始尺寸的特征映射上使用扩张卷积的方法。
但通过直接上采样和级联将不同尺度的特征融合,可能会导致高分辨率特征的退化。因此,研究人员受到受U型网络结构的启发,提出了一种全新的ReSidual U-block:RSU,来捕获阶段内的多尺度特征。如图:
从测试数据来看,RSU计算开销确实相对较小。与PLN(普通卷积块)、RES(剩余块)、DSE(密集块)、INC(初始化块)相比,所耗费的GFLOPS浮点数最低。(GFLOPS ,全称Giga Floating-point Operations Per Second,即每秒10亿次的浮点运算数,常作为GPU性能参数)。
Supervision策略
在训练过程中,研究人员采用了类似于HED的深度监督。
其中,训练损失(Training Loss)定义为:
每个项L使用标准二进制交叉熵来计算损失:
在训练过程,等式(1)让总体损失最小化;在测试过程,选择融合输出的lfuse作为最终的显著性图。
比较实验:全尺寸最佳SOTA
在论文中,研究人员将U2模型与其他20多种现有最先进的模型进行了比较。
其中,各模型采用训练数据集是DUTS-TR,它含10553张图像,是目前用于目标检测的最大和最常用的数据集;采用的基准数据集分别为DUT-OMRON、DUTS-TE、HKU-IS、ECSSD、PASCAL-S、SOD六种。
先来看下定性比较的结果:
红色、绿色和蓝色分别表示最佳、第二和第三性能
从表3、表4来看,U∧2-Net在DUT-OMRON、HKU-IS以及ECSSD三个基准数据集上展现了极大先进性,五个评估指标都达到了最佳SOTA。
其中,在DUTS-TE上,U∧2-Net总体性能仅次于PoolNet;在PASCAL-S上,U∧2-Net性能仅略低于AFNet、CPD和PoolNet。此外,在边界质量评估指标(RelaxFbβ)方面,U∧2-Net性能位居第二。
在SOD数据集上, U∧2-Net在整体性能方面也仅此于PoolNet。更重要的是,U∧2-Net模型大小只有4.7 MB,是在显著性目标检测领域型号最小的,而且与其他型号相比,它的参数量也少的多。
定性比较结果:比较了七种SOTA模型,如图:
可以看出,U∧2-Net能够处理不同类型的目标,并均产生了精准的识别结果。
比如,第4行图像充分展示它在分割由大结构和薄结构组成的目标时的性能;在第六行复杂的图像结构下,产生了近乎完美的结果。
总之,U∧2-Net模型能够处理全尺寸和小尺寸图像的各种场景,与其他模型相比,能够产生更高精度的显著目标检测结果。
好了。就这样,希望了解更多论文内容的可以戳这里:https://arxiv.org/pdf/2005.09007.pdf
等了一个小时的滴滴准时到了!
加油,打工人!
相关地址:
https://github.com/NathanUA/U-2-Net
https://github.com/yiranran/APDrawingGAN
https://webdocs.cs.ualberta.ca/~xuebin/
雷锋网雷锋网雷锋网
,