ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)

版权声明:禁止转载。(更新时间:2021-02-06) |  个人笔记,仅供参考。


目录

1. 基本信息

2. 问题概述

3. 方法简介

4. 生成阴影效果示例

5. 应用:结合阴影和底色图层


1. 基本信息

论文标题:Learning to Shadow Hand-drawn Sketches

                  基于深度学习方法,为手绘线稿添加“平涂式阴影”(一种简易的光照效果,即:赛璐璐风格2D动画的阴影效果)

发表时间:2020年2月

研究领域:计算机图形学,非真实感渲染(Non-Photorealistic Rendering,NPR),图像翻译(Image-to-Image Translation),深度学习,生成式对抗网络(GAN)

2. 问题概述

 “厚涂式光照效果”包含大量颜色渐变、镜面反射和阴影效果,非常类似于3D模型的渲染结果。而“平涂式阴影”是其简化版本,仅在底色层的基础上叠加一层单色阴影。“平涂式阴影”常见于“赛璐璐风格的2D动画”(Cel Animation)中。这是因为流畅的动画一般需要达到每秒约24帧,其中每一帧的绘制工作都需要耗费大量时间。使用“平涂式阴影”代替“厚涂式光照效果”,能在保留光照效果的同时,节省大量人力成本。

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第1张图片 动画电影《龙猫》中的“平涂式阴影”

问题“平涂式阴影”需要根据物体的3D模型进行生成和绘制 [ref-1]。(当然,对于胸有成竹的专业画家而言,不需要3D模型。)那么,在没有对应3D模型的情况下,算法如何为平面线稿自动添加“平涂式阴影”?

3. 方法简介

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第2张图片 GAN网络结构

 

4. 生成阴影效果示例

(1)光照方向编号说明:光照方向编号方法如下图立方体所示,靠右边的编号1~3表示3个平面,靠左边的编号1~8表示每个平面上具体的8个位置。光照方向的编码格式为“xy0”,其中x取1~8,y取1~3,0用于占位无意义。另外有两个特殊方向,“001”代表正前方,“002”代表正后方。

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第3张图片 光照方向-立方体示意图

 (2)静态阴影效果:

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第4张图片 本文方法为线稿添加的阴影效果

(3)光源移动效果:

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第5张图片 【GIF】光源移动效果(光源在210-230方向之间移动)

(4)为连续动画帧添加阴影效果:

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第6张图片 【GIF】为连续动画帧添加阴影效果

5. 应用:结合阴影和底色图层

问题:如何为自动上色结果(由Style2Paints/PaintsChainer等软件生成)添加“平涂式阴影效果”

操作步骤如下:

(1)使用ShadeSketch为线稿添加阴影。

(2)使用PhotoShop / Paint.Net(免费)/GIMP(免费)等图像编辑软件打开Style2Paints生成的上色结果,其所在图层记为“上色图层”。

(3)在上色图层之上,新建一个图层(阴影图层),在该图层中导入添加ShadeSketch生成的阴影结果。

(4)将阴影图层的“图层混合”属性设为“正片叠底”(Multiply,也译为“相乘”)。

“正片叠底”的计算公式为,对于R、G、B每个颜色通道:

其中:RGB颜色值∈[0,255]∈[0,1]

(5)(可选)选中阴影图层,PS菜单-图像-调整-亮度/对比度,调节阴影图层的“亮度”,以调整阴影的强度。

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第7张图片 图层混合:为自动上色结果添加“平涂式阴影”
(光照方向为810)

基于数学算法的论文:

(1)会议版本:

论文标题:2D Shading for Cel Animation

                  用于赛璐璐动画的2D阴影半自动生成算法基于数学算法

发表会议:Proceedings of the Joint Symposium on Computational Aesthetics and Sketch-Based Interfaces and Modeling and Non-Photorealistic Animation and Rendering. 2018

研究领域:计算机图形学,赛璐璐风格动画(Cel Animation),基于图像的渲染(Image-based rendering)

论文链接:(1)ResearchGate(2)ACM    |   项目主页:链接   |   代码:暂未公布

 

(2)期刊改进版本:

论文标题:2DToonShade: A stroke based toon shading system

发表期刊:Computers & Graphics: X (2019)   (已更名为:Graphics and Visual Computing

论文链接:(1)ResearchGate(2)Elsevier

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第8张图片 算法为连续动画帧添加2D阴影效果,后3帧的阴影为全自动添加
(Original drawing by Matis Hudon, used under CC BY.)

 

概述:论文提出了一个半自动的2D阴影(平涂式阴影)生成算法。用户设置好光源的位置和方向之后,再逐个选出待添加阴影的封闭区域。(只需选出大致区域,如脸部,不需要指出阴影的精确位置。)然后算法根据与光源的距离和夹角,自动在这些区域的适当位置添加适当大小的阴影。(与上文深度学习方法的区别在于,该算法无法自动确定需添加阴影的区域。)当更改光源位置时,所有阴影的位置和大小会随之改变。另外,对于连续的动画帧,当完成第一帧的阴影添加之后,算法能自动为后续的帧添加阴影。

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第9张图片

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第10张图片 阴影生成算法示意图(最终生成了月芽形的阴影)

相关论文:

论文标题:Blur Algorithms for Cartoon Animation

                  用于卡通动画的模糊算法(能够为“平涂式阴影”添加模糊效果,使过渡更加自然)(基于数学算法)

发表会议:SIGGRAPH Asia 2018 Posters

作者:(来自著名动画公司OLM Digital, Inc.

论文链接:ACM

软件:作者已将算法制作为一个免费工具OLM Blur(After Effects插件),详见OLM Digital R&D\Technology\Tools。

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第11张图片 对比:为平涂式阴影添加“模糊效果”(脸部和头发上的阴影)

 

ShadeSketch论文简介:为线稿添加“平涂式阴影”(简易光照效果)_第12张图片 效果对比。(a)原图,(b)高斯模糊(红色与蓝色交界处出现穿越线条的颜色泄漏),(c)OLM Blur(没有颜色泄漏)

 


参考资料:

[ref-1] 绘画教程-手把手教你画阴影-知乎专栏

ACM论文PDF版权:Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the owner/author(s).

你可能感兴趣的:(线稿自动上色,图形学)