LazyBrush论文简介:基于Graph Cut的动漫线稿上色算法

(更新时间:2020-03-11)

本文属于:动漫线稿自动上色-系列论文解读

目录

1. 基本信息

2. 论文整体思路概述

3. 上色效果


1. 基本信息

论文标题:LazyBrush: Flexible Painting Tool for Hand-drawn Cartoons

                  LazyBrush:一种灵活的上色工具,用于手绘卡通画上色(兼容:漫画、线稿、素描、动画)

 

论文链接:(1) CVUT   (2) Wiley Online Library

研究领域:计算机图形学,基于颜色提示的线稿上色,交互式图像分割(Interactive Image Segmentation),图论(Graph Theory)中的“图割问题”(Graph Cut)

 

作者:Daniel Sýkora, John Dingliana, Steven Collins - Trinity College Dublin

发表会议:Eurographics 2009 (CCF B类会议)

被引次数:81次(截止2020.03)

代码与模型:

(1)官方代码:仅有商业闭源实现,见项目主页

(2)非官方复现:

a. kosua20/LazyBrush-implementation,Matlab实现,高质量教学演示项目,含法语说明文档

b. furaga/LazyBrushSharp,C#实现

c. Evarin/LazyBrush

 

研究意义:

1. 算法已集成到商业绘画软件TVPaint,以及开源软件Krita中。

2. 基于传统分割方法,由此带来诸多优势:

(1)算法鲁棒性(泛化能力)、上色成功率远高于深度学习方法

(2)计算量小,上色速度快于深度神经网络;

(3)硬件要求低:适合在单机CPU上运行,无需拥有大显存的服务器级GPU加速;

(4)使用基于图论的Segmentation方法,无需训练数据集,也无需训练过程。

3. 算法的泛化能力很强(Flexible),同时兼容多种类型的手绘卡通作品上色,包括:漫画、铅笔线稿、钢笔线稿、素描,以及连续动画帧的快速上色。

2. 论文整体思路概述

论文整体分为两个部分:第一部分是算法需求描述,提出了理想中的完美上色算法应满足的特性。第二部分是问题建模与算法设计。

本文把上色问题建模为一个“最优化问题”,通过定义一个“能量函数”(Energy function,类似于损失函数)来形式化地定义“线稿上色问题”。当能量函数的值达到最小时,就实现了最优的上色效果。

为了求解这一最优化问题,需要将“能量函数”转化为一个等价的“multiway cut problem”(属于“图论”中“Graph Cut问题”的一种)。然后提出一种基于“最大流/最小费用”(max-flow/min-cut)的算法进行求解。

与“能量函数”等价的“multiway cut problem”

本文对线稿上色问题的求解思路,主要借鉴了“交互式图像分割问题”(Interactive Image Segmentation,俗称“抠图”)中,基于Graph Cut的分割方法,且对其进行了修改以适合于手绘动漫上色。要了解基于Graph Cut方法的交互式图像分割,可参阅zouxy09的这篇博文

“交互式图像分割”(抠图)示例。
只需手工标记前景和背景,算法就能自动完成图像分割

3. 上色效果

发布了4 篇原创文章 · 获赞 2 · 访问量 1500

猜你喜欢

转载自blog.csdn.net/cs_soft_dev/article/details/104806472