ArXiv 2020 | 抖音“变身漫画”滤镜背后的技术,难道来自这篇论文?

試著忘記壹切 提交于 2020-08-08 05:29:04

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

Few-shot Knowledge Transfer for Fine-grained Cartoon Face Generation

想必大家对抖音之前推出的一款动漫特效滤镜 “变身漫画” 还印象深刻,这款滤镜能够打破次元壁,将你瞬间转变为二次元画风,让每个用户都能拥有一个独一无二的二次元分身。

著名电竞选手PDD化身二次元美少年

阔爱

萌萌哒

Title

本文作者来自字节跳动 AI Lab,第一作者同时隶属于北京大学。作者提出了一种小样本知识迁移方法 (few-shot knowledge transfer) 来用于生成细粒度 (fine-grained) 的卡通人脸。

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

从一张真实人脸照片生成其对应的卡通人脸可以看做是一个图片到图片迁移 (Image-to-image translation) 的问题,即需要学习一个函数将真实人脸映射到卡通人脸。当前有部分工作研究了这个问题并取得了不错的结果,但这些方法没有考虑到 不同群体之间的差异性,如下图一所示,女性的卡通脸通常有着大眼睛留着长睫毛,而男性的则没有睫毛, 老人的脸通常有皱纹,而孩子则没有。

Cartoon Faces of Various Groups

因此,为了获得更好的性能表现,在收集训练样本和设计模型时就很有必要考虑这些差异。对于数据收集,真实人脸图像很容易在网络上获取,而特定样式的卡通面孔通常难以收集或设计。此外,每个人群类别可用的卡通脸数量也不平衡, 与其他群体相比,年轻女性的卡通面孔一般更为常见。

为了解决这些问题,作者提出了一个细粒度卡通人脸生成方法,其假设尽管每个群体有着其特定外表,但仍然具有相同的卡通风格。因此可以 首先基于普通群体 (女性) 训练一个图像迁移模型,然后仅以少量样本将知识迁移到其他群体。作者为此设计了一个多分支图像迁移网络来用于细粒度的卡通人脸生成,主分支学习普通群体的图像迁移并维护共享特征空间的分布,其他分支学习每个稀有群体的特定特征。通过这种方式学习一个小样本图像迁移模型。作者的贡献在以下三点:

  • 文章提出了两阶段训练策略和多分支图像迁移模型,来用于小样本的细粒度卡通人脸生成;

  • 作者收集了用于完成此类精细图像翻译任务的卡通人脸数据集,该数据集包含小姑娘、小伙子、小朋友和老人四类人群;

  • 文章方法针对特定人群仅提供了很少的样本就取得了良好的表现。

Method

文章的目标是训练一个生成器  ,学习两个域的多个类之间的映射。作者将真实人脸和卡通人脸照片分别表示为域  和  ,这里两个域之间不需要配对的数据。同时作者将人类分为特定群体,即小姑娘、小伙子、小朋友和老人,分别表示为  , ,在这些群体中,group 0 即小姑娘群体包含足够的训练样本,其他类别只有很少的图像。所有这些群体的卡通脸都具有相同的风格,但细节不同。作者首先为  , 训练一个网络  ,然后将其迁移到其他类别  。

Basic Model

作者首先使用  , 训练图像迁移网络,这里一般无监督方法如 CycleGAN,UNIT 等都可以适用,作者这里使用 GitHub 上的开源项目  https://github.com/minivision-ai/photo2cartoon,其基于 U-GAT-IT 修改而来。网络架构如下图所示,是一个 Encoder-Decoder 结构,由几个上采样/下采样块、沙漏块、残差块组成。生成器中使用了一个基于 Class Activation Map (CAM) 的注意力模块来通过辅助分类器指导模型专注于更重要的区域,该分类器有助于区分源域和目标域。在鉴别器中,另一个辅助分类器用于帮助区分真实图像和伪造图像,具体架构和代码可以参考 GitHub 仓库。

Base Model

Knowledge Transfer for Few-shot Learning

在为 group 0 训练好生成器之后,接下来集中于如何迁移知识,仅用很少的样本来学习其他群体的映射函数。作者将这个问题看作不同群体之间的域自适应 (domain adaptation) 任务。

整个方法的流程如下图所示,基于为 group 0 训练的生成器,首先为其他每个群体分别增加一个群体相关 (group-specific) 的分支,这些新的分支初始化为基本模型预训练的参数。作者将生成器中群体相关的编码器层和解码器层分别表示为  和  ,群体共享 (group-shared) 的编码器层和解码器层分别表示为  和  ,这里  和  分别为源域和目标域,都可以是真实人脸或卡通人脸。则对于群体  中的一张图片  ,从  到  的映射函数可以定义为

对于这里的小样本多群体图片迁移任务, 和  使得所有群体有着相同的结构和风格,由于 group 0 包含大量的训练数据,作者这里假设基于此数据训练的基本模型保留了共享特征的分布。其他群体中的少量样本用于更新其对应群体的相应参数。

假设  表示一个训练样本,则四个群体的迁移可以分别表示为

这里带上划线的表示该结构在训练时权值固定,即在训练小样本群体时共享结构中的参数在反向传播时不更新。

The Whole Pipeline

Loss Function

损失函数包含 Adversarial loss,Cycle loss,Identity loss,CAM loss,Face ID loss,Group classification loss,具体公式参见原始论文。

Experiments

Datasets

作者的数据集来自已有数据和互联网,并聘请专业画家为小样本群体绘制了卡通人脸。对于小姑娘,有1000张来自 CelebA 的真实人脸照片,200 张来自开源项目[2]的卡通人脸照片,对于其他群体,作者收集了75张小伙子照片、50张小朋友照片和50张老年人照片,并让画家画了15张小伙子卡通照片,10张小朋友和10张老年人卡通照片。

Comparisons

Comparisons with Simple Baselines

作者将文章方法和一些 baseline 进行了比较,结果如下图所示。

Compared with several Simple Baselines

Basic Model:基本模型在小姑娘数据集上训练的模型,结果如图4第二列所示,对于小姑娘图片结果较好,但是对于其他群体结果很差,得到的小伙子小朋友卡通照都有着长睫毛。

Baseline1:将所有数据混合在一起训练基本模型,得到的结果如图4第3列所示,虽然结果相对于基本模型有较大改善,但其他类别的结果仍然偏女性化。

Baseline2:将其他群体的数据混合在一起,对基本模型进行微调,结果如图4第4列所示,小伙子和小朋友的结果有了很大的改善,但小姑娘的结果不行了,网络似乎学会了新群体的迁移,忘记学习的之前群体的知识了。

Baseline3:对每个群体分别微调基本模型,为了简单作者这里仅对小伙子数据进行了微调,结果如下图5第3行所示,生成的结果不够稳定,作者相信这是因为训练数据太少,使得网络过拟合导致的。而文章方法的结果与输入图片更加匹配。

Compared with Baseline3

Comparisons on Selective Backpropagation

前面讲到对于普通群体更新整个网络,但在训练小样本群体时只更新群体相关的参数,即进行选择性反向传播。作者测试了在训练时去除掉选择性反向传播,即在训练小样本数据时也更新群体共享参数。结果如下图6所示,得到的结果会产生很多瑕疵。

Comparisons on Selective Backpropagation

Results

下面展示了文章方法在四个群体中的卡通画效果,总体来说效果还是不错的。

Results of Young Women

Results of Young Men

Results of Kids

Results of the Elderly

参考

  1. Few-shot Knowledge Transfer for Fine-grained Cartoon Face Generationg. Nan Zhuang, Cheng Yang. ArXiv, 2020.

  2. https://github.com/minivision-ai/photo2cartoon

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

「3D视觉工坊」公众号后台回复:3D视觉优质源码即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

整理不易,请给工坊点赞和在看

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!