侵权投诉

基于GANs的新型自拍卡通化方法

将门创投 2019-05-06 09:57 次阅读

刚刚假期归来的你,一定在手机里存了美美的自拍。如果可以把这些自拍变成卡通效果的美照,在朋友圈里一定会独树一帜。

这样的画风比起自拍多了些艺术的气息。但是要实现高质量的卡通艺术p图没有一定的美术基础很难做出令人满意的效果。那近日,来自京东AI研究院的研究人员们提出了一种基于GANs的新型自拍卡通化方法,在保证五官和面部表情细节的前提下,通过三种不同的损失函数将自拍像转换为高质量的卡通化图像。相比于传统方法在细节和保留和局部纹理的抽象上都有了大幅度的提升。卡通化的自拍在日常生活中一直有着很大的需求。人们可以将卡通化的自拍作为社交网络的头像,在彰显个性的同时也在一定程度上保护隐私。此外在在线游戏和艺术海报、插画设计中也十分重要。但高质量的卡通化自拍需要画师花费大量的时间,如何高效的生成高质量的自拍图像成为摆在研究人员面前需要解决的问题。对于这个问题,目前的方法主要分为两类。传统方法主要基于草图抽取的方法,并基于一定的颜色和形状后处理来生成卡通化自拍,这种方法在很多拍照app中广泛使用。谷歌应用商店里就有许许多多类似的应用。

但这些方法常常需要人类工程师精心设计算法,对于不同的风格都需要进行特殊的算法设计和调整,同时在细节方面与插画师还有很大距离。这些方法一般通过人脸识别分割出五官位置,随后利用卡通的渲染方法或特殊滤波器来对图像处理得到卡通化图像。虽然这些方法可以在手机上实现实时处理,但他们对于面部的细节保持和图像抽象还不完善。近年来深度学习的发展给出了新的解决方案。神经风格迁移(Neural Style Transfer,NST)可以将风格图像的风格迁移到内容图像中去。但通用的NST在应用于卡通化时缺乏针对性的风格化能力。另一种基于生成对抗网络的方法通过对抗的方法来实现图像域迁移,研究人员们相继提出了pix2pix、Bicycle等方法将图像从一个域映射到另一个域中。然而其最大的缺点在于需要大量的配对数据来实现训练,这对于很多图像迁移任务来说很不现实。为了解决这一问题,研究人员们又开发出了CycleGAN和UNIT等非监督的域迁移方法来使用非配对数据训练模型。对于图像卡通化,CartoonGAN、DAGAN等模型已经进行了很多有益的探索,但在捕捉图像细节、特别是对于自拍图像生成高质量结果方面还存在很多问题。如何尽可能的保留面部特征细节同时保持艺术作品的风格化是研究人员们需要解决的问题。针对自拍卡通化任务,目前主要面临三个挑战:缺乏针对人类自拍像以及对应卡通像的公开数据集;如何保留卡通化风格,包括内容的抽象和纹理特征的简化;最后在生成卡通像时,如何保持最主要的面部轮廓特征,同时又要避免引入大量无用的细节问题?

Selfie Cartoonization GANs

为了解决这一问题,研究人员基于GAN的架构和循环注意力损失提出了针对自拍像卡通化的架构scGANs,充分利用了注意力对抗网络来强化面部特定区域同时忽视低层次的纹理细节。模型的架构如下图所示:

架构图中显示了自拍到卡通的训练过程,省略了卡通到自拍的过程。

生成器首先将自拍转换为手绘卡通图像,最后另一个生成器又将生成的手绘卡通转换会自拍照。对于卡通图像来说也基于同样的过程来训练模型。考虑到卡通图像的纹理特征和数据集的大小,模型中使用了Unet的架构,可以更好的保证面部及五官的边缘特征。判别器则使用了基于图像片的方法,不仅需要判别卡通形式的对抗损失,在模型的另一方面训练中还需要判断真实图像的对抗损失。除了对抗损失外研究人员在这一架构中加入了三项新的损失,分别是注意力循环损失、总变分损失和感知损失。受到cycleGAN中循环连续损失的启发,研究人员提出了注意力循环损失来引导生成更好的生成面部的主要细节。例如眼影、瞳孔、鼻翼、嘴角等。针对这些面部区域网络给予更多的注意。在这一工作中,研究人员利用人脸识别方法标记出了4个区域,分别是完整自拍、眼睛、鼻子和嘴。针对每个区域设置对应的权重来构造损失。

此外由于卡通图像具有高度简化的特征和均匀的颜色,需要在像素级损失上进行引导。研究人员观察到画师的作品(左)仅仅在边缘具有较大的梯度变化,而大多数区域中梯度变化较小。生成的图像则全局都具有杂乱的梯度场。

从上面的梯度图中可以看出,要生成高质量的卡通化自拍,还需要在保持主要边缘梯度的情况下移除其他区域的提出。所以研究人员提出了总变分作为损失来最小化合成图像与手绘图像间的梯度差,这一方法可以很好的移除脸颊处的阴影,更精确的刻画鼻子。最后为了保留输出图像中的空间结构和内容特征,研究人员利用VGG中conv4_4层来计算生成图像与对应图像间的感知损失。最后的损失函数如下所示:

为了训练模型,研究人员通过谷歌图片搜索利用关键词搜索了3524张肖像照,同时从在线绘画商店中下载了手绘、水彩和动漫等不同风格共计4580张卡通图像。通过训练后,下图是与目前几种基于深度学习方法的对比:

最后一列是本文提出的方法

可以看到这种方法在整体上优于目前的深度学习方法。NST虽然保留了面部细节但无法有效学习风格特征,cartoonGAN生成的效果则无法保留原始图像中的内容信息,特别是眼部特征丢失严重。UNIT和cycleGAN的效果稍好,但是在脸颊、嘴和鼻子等位置还有很多令人不满意的地方。下表是本文方法的感知评断得分表,明显好于其他几种方法:

研究人员随后还对三种损失进行了消融性分析。下图中的be没有加总变分损失tv,而cf则加入了总变分损失。可以看到加入损失后眼线更加清晰、脸颊也更加平滑无影。这对于现实情况中复杂的光照和背景十分有用。

对于注意力循环和感知损失的消融性分析,可以看到在只使用循环损失时效果并不好,而加入了注意力循环损失后五官的生成质量得到了提升,感知损失同时保留了更多低层级的重要特征(眉毛和唇色)。

最后让我们在来体会下各种卡通的自拍照吧,看看动漫的头像:

或者来个水彩风格:

今天开工了,给自己换个美丽的头像好好加油啊!!


原文标题:假期归来,安利一款玩转自拍的黑科技给你:基于GANs的新型自拍卡通化方法

文章出处:【微信号:thejiangmen,微信公众号:将门创投】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

傅里叶变化入门教程之傅里叶分析PDF电子书免费下载

 傅里叶,Jean Baptiste Joseph Fourier(简·巴普蒂斯·约瑟夫·傅里叶,1....
发表于 12-06 15:36 17次 阅读
傅里叶变化入门教程之傅里叶分析PDF电子书免费下载

ESP8266_09基于IIC控制的OLED屏幕

上面代码中出现的函数,例如i2c_master_start()、i2c_master_writeBy....
的头像 单片机爱好者 发表于 12-06 15:12 139次 阅读
ESP8266_09基于IIC控制的OLED屏幕

C语言函数的实验详细资料说明

实验目的和要求(1)掌握C语言函数的定义方法、函数的声明及函数的调用方法。(2)掌握函数实参和形参的....
发表于 12-06 08:00 23次 阅读
C语言函数的实验详细资料说明

具P Laplace算子的分数阶微分方程边值问题解的存在性论文说明

分数阶微积分理论是整数阶微积分理论的推广,发展至今已有300多年的历史。特别是近几十年来,分数阶微分....
发表于 12-05 15:53 21次 阅读
具P Laplace算子的分数阶微分方程边值问题解的存在性论文说明

如何使用谱回归核判别分析实现候机楼室内快速定位算法的论文详细说明

针对机场候机楼客流量大、室内环境复杂多变的特点,提出了一种基于谱回归核判别分析(SRKDA)的室内定....
发表于 12-05 15:27 15次 阅读
如何使用谱回归核判别分析实现候机楼室内快速定位算法的论文详细说明

使用LabVIEW数字波形图显示一个数字信号的步骤详细说明

用digital waveform graph 显示一个数字信号的步骤1.采集一个数字信号。2.构建....
发表于 12-05 14:59 18次 阅读
使用LabVIEW数字波形图显示一个数字信号的步骤详细说明

C语言相关文件函数的功能与用法详细说明

fopen(打开文件) 相关函数 open,fclose 表头文件 #include《s....
发表于 12-04 08:00 54次 阅读
C语言相关文件函数的功能与用法详细说明

了解物联网数据集成的需求

物联网数据集成的效用主要来源于所收集到的海量数据、数据的多样性以及收集数据的精确度。然而,不断增加的....
的头像 物联网技术 发表于 12-03 16:27 229次 阅读
了解物联网数据集成的需求

3个C语言编程易犯的错误

对比过后显然是错误的,大家一眼看出a要写成&a,这没问题。但也有人说可以把*pa改成&pa,这样行吗....
的头像 嵌入式ARM 发表于 12-03 15:47 169次 阅读
3个C语言编程易犯的错误

激光物理学的PDF电子书免费下载

在本书中我们论述辐射与物质的相互作用,并特别注意它对于典型地存在于激光器中的增益(放大)介质的应用。....
发表于 12-02 08:00 30次 阅读
激光物理学的PDF电子书免费下载

C语言的习题集资料合集免费下载

本文档的主要内容详细介绍的是C语言的习题集资料合集免费下载包括了:第一单元 程序设计和C语言,第二单....
发表于 12-02 08:00 42次 阅读
C语言的习题集资料合集免费下载

自动化所在视觉物体检测与识别领域取得系列进展

物体检测是计算机视觉与模式识别领域的核心问题,一直以来受到学术界与工业界的广泛关注。当前物体检测最大....
的头像 MEMS 发表于 11-29 15:42 277次 阅读
自动化所在视觉物体检测与识别领域取得系列进展

介绍网络压缩算法,知识蒸馏

那么如何训练一个小网络呢?我们可以先考虑一下在数值分析中,用一个函数S(x)来逼近另外一个函数f(x....
的头像 FPGA开发圈 发表于 11-29 11:30 259次 阅读
介绍网络压缩算法,知识蒸馏

复变函数西安交大第4版PDF电子书免费下载

在我们已经学过的《高等数学》课程中,研究的主要对象是实变函数。理论的探讨和生产实践的发展,又提出了对....
发表于 11-29 08:00 42次 阅读
复变函数西安交大第4版PDF电子书免费下载

西安交大第4版复变函数答案合集免费下载

复变函数就是自变量为复数的函数。本课程研究的主要对象是在某种意义之下可导的复变函数,通常称为解析函数....
发表于 11-29 08:00 38次 阅读
西安交大第4版复变函数答案合集免费下载

C语言深度解剖完美PDF电子书免费下载

《C语言深度解剖》是2012年出版的图书,作者是陈正冲。本书作者结合自身多年嵌入式C语言开发经验和平....
发表于 11-28 15:35 53次 阅读
C语言深度解剖完美PDF电子书免费下载

带大家领略sqrt的神奇之处:开平方的7种算法介绍

sqrt()函数,是绝大部分语言支持的常用函数,它实现的是开方运算;开方运算最早是在我国魏晋时数学家....
的头像 算法与数据结构 发表于 11-28 09:29 347次 阅读
带大家领略sqrt的神奇之处:开平方的7种算法介绍

MATLAB语言程序的基础知识详细说明

本章旨在介绍关于MATLAB的基本知识,使读者可以更好的理解后续章节中的内容。其实,对于MATLAB....
发表于 11-27 16:43 58次 阅读
MATLAB语言程序的基础知识详细说明

基于二阶锥规划的MIMO系统抗信道失配的鲁棒盲分离的资料说明

针对多输入多输出(MIMO)系统中由于信道失配而导致的容量损失和信源恢复性能下降的问题,研究了一种抗....
发表于 11-27 16:43 37次 阅读
基于二阶锥规划的MIMO系统抗信道失配的鲁棒盲分离的资料说明

Finsh的基本使用实验的详细资料说明

Finsh 是RT-Thread 的shell 组件,通过它能够直接在shell 中调用系统函数,访....
发表于 11-27 15:36 50次 阅读
Finsh的基本使用实验的详细资料说明

如何使用随机模拟技术和神经网络讲解随机机会约束的规划问题

为更有效地求解随机机会约束规划问题,提出一种基于克隆选择算法( CSA) 、随机模拟技术及神经网络的....
发表于 11-27 15:02 49次 阅读
如何使用随机模拟技术和神经网络讲解随机机会约束的规划问题

单片机C语言如何产生随机数

C语言中有三个通用的随机数发生器,分别为 rand函数、random函数、randomize 函数,....
的头像 玩转单片机 发表于 11-26 14:25 408次 阅读
单片机C语言如何产生随机数

C语言函数为什么不能返回数组?

要知道,C语言结构体通常很小,只有几十到几百字节,增加结构体赋值能力无疑能够大大方便程序员编写代码。....
的头像 电子工程技术 发表于 11-26 11:25 336次 阅读
C语言函数为什么不能返回数组?

电子元器件可靠性工程PDF电子书免费下载

电子元器件的可靠性是各类电子整机及装备可靠性的基础和核心,而在以往从事整机装备制造的工程技术人员对元....
发表于 11-26 08:00 95次 阅读
电子元器件可靠性工程PDF电子书免费下载

神经网络技术的诞生正是受到人脑神经元的启发

计算能力越来越强大。GPU(graphics processing unit,图形处理器)的运行速度....
的头像 人工智能学家 发表于 11-24 09:55 467次 阅读
神经网络技术的诞生正是受到人脑神经元的启发

使用OpenCV实现形态学操作和腐蚀膨胀及开闭运算的实例说明

本文档的主要内容详细介绍的是的是使用OpenCV实现形态学操作和腐蚀膨胀及开闭运算的实例说明。 ....
发表于 11-22 16:52 42次 阅读
使用OpenCV实现形态学操作和腐蚀膨胀及开闭运算的实例说明

模糊控制理论与系统原理PDF电子书免费下载

“模糊控制”是一种基于模糊数学理论,采用语言规则与模糊推理和先进控制策略,它是近代智能控制理论中的一....
发表于 11-22 15:29 61次 阅读
模糊控制理论与系统原理PDF电子书免费下载

广义线性模型介绍

从线性回归,logistic回归,softmax回归,最大熵的概率解释来看,我们会发现线性回归是基于....
的头像 人工智能头条 发表于 11-22 15:10 300次 阅读
广义线性模型介绍

ReID行人重识别再破行业新高,多目标定位与追踪精准呈现

近日,海格星航在AI人工智能领域中的ReID行人重识别算法取得重大技术突破,在人体特征提取方面取得“....
的头像 安全自动化 发表于 11-22 11:10 531次 阅读
ReID行人重识别再破行业新高,多目标定位与追踪精准呈现

关于ESP8266的ADC,相关的性能参数有哪些?

如上所示,U1的2脚为ADC管脚,而且整个模块有且仅有这一个电压采集管脚。CDS1是一个光敏电阻,它....
的头像 单片机爱好者 发表于 11-20 14:31 647次 阅读
关于ESP8266的ADC,相关的性能参数有哪些?

基于DCT的JPEG压缩编码主要过程

JPEG是一个适用范围很广的静态图像压缩技术,既可用于灰度图像又可用于彩色图像。JPEG算法与色彩空....
的头像 讯维官方公众号 发表于 11-19 15:47 251次 阅读
基于DCT的JPEG压缩编码主要过程

" 画面分割器"的根本在于"图像拼接"技术

多画面分割器的基本原理是采用数字图像压缩处理技术,将多个摄像机的图像信号经过模/数转换,并经过适当比....
的头像 讯维官方公众号 发表于 11-19 15:44 215次 阅读
" 画面分割器"的根本在于"图像拼接"技术

分辨率有两种:即显示分辨率和图像分辨率

用像分辨是组成一幅图像的像素密度的度量方法。对同样大小的一幅图,组成该图的国像素数目越多,则说明图像....
的头像 讯维官方公众号 发表于 11-19 15:27 512次 阅读
分辨率有两种:即显示分辨率和图像分辨率

嵌入式c语言的编码规范是怎样的

对于所有有特定含义的变量、常量、宏、结构体等数据结构,如果其命名不是充分自注释的,在声明时都必须加上....
发表于 11-19 15:26 165次 阅读
嵌入式c语言的编码规范是怎样的

视频编码图片格式与质量

对于图像质量的评定,有主观评定法和客观评定法。主观评定法即是将图像序列呈现到评价人员面前,评价人员对....
的头像 讯维官方公众号 发表于 11-19 15:25 212次 阅读
视频编码图片格式与质量

复变函数第四版PDF电子教材

西安交大复变函数电子版
发表于 11-18 08:00 189次 阅读
复变函数第四版PDF电子教材

什么是框架?MATLAB的单元测试框架中文版资料详细概述

从逻辑上来说,框架 (Framework),是⼀个⽐⾯向对象和设计模式更加复杂的结构,但读者不⽤担⼼....
发表于 11-18 08:00 56次 阅读
什么是框架?MATLAB的单元测试框架中文版资料详细概述

复变函数第四版的习题答案复变函数习题精解精练PDF电子书

本书是配合西安交通大学高等数学教研室编写的《复变函数》(第四版)教材而编写的辅导书。本书按教材的章节....
发表于 11-18 08:00 225次 阅读
复变函数第四版的习题答案复变函数习题精解精练PDF电子书

python的内置函数详细资料概述

本文档的主要内容详细介绍的是python的内置函数详细资料概述。
发表于 11-18 08:00 75次 阅读
python的内置函数详细资料概述

ABB机器人的RAPID指令与函数和数据类型的技术参考手册免费下载

ABB机器人的RAPID指令与函数和数据类型的技术参考手册免费下载。
发表于 11-15 08:00 85次 阅读
ABB机器人的RAPID指令与函数和数据类型的技术参考手册免费下载

OpenCV的小波变换函数代码免费下载

OpenCV里面没有提供小波变换函数确实是一大遗憾,网上找点小波变换的代码吧,大多是针对BMP直接操....
发表于 11-14 15:51 74次 阅读
OpenCV的小波变换函数代码免费下载

如何才能解决图像匹配算法的光照变化敏感和匹配正确率低的问题

针对现有的基于局部特征的图像匹配算法对光照变化敏感、匹配正确率低等问题,提出一种具有光照鲁棒性的图像....
发表于 11-14 15:16 78次 阅读
如何才能解决图像匹配算法的光照变化敏感和匹配正确率低的问题

使用51单片机设计函数信号发生器的论文资料免费下载

本设计采用 C8051单片机为核心,设计制作了可以步进调节频率的多波形信号发生器。芯片MAX038产....
发表于 11-13 17:28 110次 阅读
使用51单片机设计函数信号发生器的论文资料免费下载

数字信号处理教程之Z变换的学习课件免费下载

本文档的主要内容详细介绍的是数字信号处理教程之Z变换的学习课件免费下载主要内容包括了:1 z 变换基....
发表于 11-13 14:48 77次 阅读
数字信号处理教程之Z变换的学习课件免费下载

数字信号处理教程之数字信号的详细资料说明

本文档的主要内容详细介绍的是数字信号处理教程之数字信号的详细资料说明包括了:1 数字信号的图示,2 ....
发表于 11-13 14:48 90次 阅读
数字信号处理教程之数字信号的详细资料说明

请问用户在写特征值时应该注意什么样的问题来避免丢数据呢?

Hi    TI的前辈们!     我在simpleBLECentral工程中,在用户的任务里调用函数GATT_WriteCha...
发表于 11-11 14:06 200次 阅读
请问用户在写特征值时应该注意什么样的问题来避免丢数据呢?

如何理解GATT_DiscAllPrimaryServices这些数据?

使用标题的函数后如果成功后,会发出一个消息:ATT_READ_BY_GRP_TYPE_RSP static void simpleBLEGAT...
发表于 11-11 11:22 151次 阅读
如何理解GATT_DiscAllPrimaryServices这些数据?

请问CC2541用IAR调试时函数形参和实参不一样该怎么办?

IAR 9.30.1调试CC2541的BLE工程时出现函数调用形参和实参不一致的问题。 ...
发表于 11-11 10:42 103次 阅读
请问CC2541用IAR调试时函数形参和实参不一样该怎么办?

为什么7寸电容触摸屏应用在F4探索板时触摸无效?

新买了一块原子哥的7寸电容触摸屏,我用的是原子哥的F4探索板,程序是ucGUI&Emwin+触摸屏,这个程序在老版的7寸V2电容屏上好...
发表于 11-11 04:35 61次 阅读
为什么7寸电容触摸屏应用在F4探索板时触摸无效?

为什么用内联汇编调用CPSIE退出临界态系统会被卡住?

出问题的地方和反汇编结果如图。这个是在MDK里优化等级为Level-2时编出来的,开关中是用内联汇编调用指令 #if OS_CRIT...
发表于 11-11 04:35 74次 阅读
为什么用内联汇编调用CPSIE退出临界态系统会被卡住?

如何让LCD中的进度条函数显示出来?

各位,小弟最近在做进度条,就是在12864上面做进度条显示,不会弄,可以指点一下吗? 对了,有这个程序吗?可以发上来分享下吗...
发表于 11-11 00:22 86次 阅读
如何让LCD中的进度条函数显示出来?

ECMAScript的闭包与匿名函数你分的清吗?

重拾ECMAScript基础——闭包与匿名函数
发表于 11-08 09:39 59次 阅读
ECMAScript的闭包与匿名函数你分的清吗?

USB HOST返回函数怎么调用?

                           &nb...
发表于 11-08 09:17 91次 阅读
USB HOST返回函数怎么调用?

为什么调用C的函数参数传递的往往是传值?

#include void swap(int m,int n) {      int temp;      temp = m;   &nbs...
发表于 11-08 04:35 48次 阅读
为什么调用C的函数参数传递的往往是传值?

为什么MDK5.1的代码提示功能在led.c文件里就失效了?

在main.c 文件里输入代码的时候MDK会自动提示你可选的函数列表,但我自己新建了一个比如led.c文件,在这个led.c文件里写代码,...
发表于 11-08 04:35 61次 阅读
为什么MDK5.1的代码提示功能在led.c文件里就失效了?

C和指针的PDF电子书免费下载

《C和指针》提供与C语言编程相关的全面资源和深入讨论。《C和指针》通过对指针的基础知识和高级特性的探....
发表于 11-07 17:13 77次 阅读
C和指针的PDF电子书免费下载

SQL中使用公用表表达式应用with as的方法说明

 公用表表达式 (CTE) 可以认为是在单个 SELECT、INSERT、UPDATE、DELETE....
发表于 11-07 16:52 84次 阅读
SQL中使用公用表表达式应用with as的方法说明

使用环分块实现能耗均衡分簇路由算法的资料说明

针对无线传感器网络(WSN)中节点能耗不均衡和能量效率低而影响网络生命周期的问题,提出了基于环分块的....
发表于 11-07 15:27 58次 阅读
使用环分块实现能耗均衡分簇路由算法的资料说明

开关电源环路补偿的详细资料概述

本文档的主要内容详细介绍的是开关电源环路补偿的详细资料概述
发表于 11-06 16:27 129次 阅读
开关电源环路补偿的详细资料概述

Javascript公共脚本库之弹出层的详细资料说明

在网上弹出框的脚本相当多, 而且还有各种第三方JS框架可供我们使用。但是其中有的脚本过于简单,仅仅粗....
发表于 11-06 11:54 64次 阅读
Javascript公共脚本库之弹出层的详细资料说明