丰色 发自 凹非寺
画画新手们,如何才能画出一副像样的手绘肖像?
除了假以时日的练习,或许也可以借助下面这款工具!
首先,你只需画出人脸轮廓图,例如下面这样:
然后,计算机就能向你提示肖像整体结构的线条,供你参考:
接着,再给出人脸细节的提示线条:
最终,你就能画出这样一幅作品了:
是不是比新手徒手一张白纸要强很多?
两步引导教你画肖像
这款工具叫做dualFace。
它之所以能辅助绘画新手和普通用户画出像样的肖像画,是因为可以根据你的初始线条给出人像全局框架和局部细节的素描线条。
你只需照着它来,没有经过绘画培训的“手残党”也可以完成!
在全局引导阶段,dualFace根据你绘制的大概轮廓,就能从内部数据库中搜索出若干相关人像,并在画布背景上显示建议的人脸轮廓线。
在局部引导阶段,dualFace利用全局指导绘制的轮廓线,用深度生成模型合成人脸图像,然后将合成结果的细节(眼睛、鼻子、嘴等)作为辅助线条给出来。
请注意,在全局阶段,人像是数据库中真实的人像。而局部阶段,是合成的虚拟人像。
为什么两阶段不用同一种人像呢?
这样做是为了让计算机给出的指导更具多样性!毕竟数据库里的人都是有限的,使用生成模型可以在细节区分出更多的肖像。
另外dualFace具有切换功能,用户可以选择最合理的局部指导;
如果用户认为局部指导不符合他们的想象,也可以通过点击按钮来使绘制过程返回到全局阶段。
下面就来说说这两个阶段具体如何操作的:
全局引导
全局引导阶段分为三步:数据生成,轮廓匹配和交互式指导。
数据生成就是把数据库中的人脸图像转换成人脸轮廓。
他们使用双向分割网络(BiSeNet)来生成人脸原图的语义标签蒙层(mask)。再从这个语义标签蒙层中提取人脸轮廓。蒙层中的每个像素(eg. 眼睛、鼻子和嘴巴)都有来自原图的面部标签ID(为了方便后面的搜索)。
另外,轮廓图像与相应的原始人脸图像一起存储。
轮廓匹配步骤,通过计算用户画的轮廓与数据库中存储的轮廓图像的相似度,得到最接近的轮廓图像。使用了GALIF(Gabor Local Line-based Feature, 基于局部线条的Gabor特征描述符)进行草图检索和局部形状匹配。
交互式指导步骤根据用户不断更新的笔划实时检索出最相似的“候选对象”,并将其转换成阴影图。
局部引导
提供了整体结构图后,系统就开始提供细节线条了。
局部引导阶段包括两个步骤:蒙层(mask)生成和肖像草图生成。
蒙层生成步骤,利用全局阶段中的用户所绘,和在全局阶段-数据生成部分生成的数据库人脸蒙层,系统可以生成最终蒙层,如下图。
肖像草图生成步骤,采用MaskGAN生成与上一阶段匹配的“真人”肖像,并采用APdrawingGAN将肖像图转为素描图。
其中,由于这两个生成模型是独立训练的,为了连接它俩,该步骤还使用梯度提升决策树(GBDT)来计算人脸标志点,并将合并后的蒙层转换成二进制背景轮廓。
此阶段可以生成多幅详细的人像素描,用户可以选择最需要的一个作为后续绘制的参考。且用户一开始画的轮廓图不全也没关系,缺少的部分可以通过“笔划—蒙层映射优化”自动完成。
以上就是两个阶段引导的具体实现过程。
接下来,他们进行了用户研究,以定性的方式验证该工具的效果。
无法正确识别抽象的输入
dualFace是在windows10平台上用Python编写的一个实时绘图程序。
全局指导阶段,每次释放鼠标后平均需要0.36 s来检索图像,而在局部指导中每生成一幅肖像图像需要2.78 s。
下面是试验者从全局和局部以及整体使用感受上的问卷调查结果,满分5分,平均分都在3.9以上。
从整体用户体验来看,所有参与者都认为该工具可以帮助他们更好地绘制肖像。
而和其他绘图工具相比,dualFace在空间关系和面部细节的绘图评价上取得了较高的成绩,平均分分别为4.5分和4.32分。
因此,dualFace可以引导用户通过正确的面部空间关系和详细的面部特征来获得更好的肖像画,而其他绘图程序可能无法提供这些信息。
此外,下图最右显示,使用dualFace画画最短花费4分15秒,最长17分15秒,平均花费在10分钟左右。虽然用户的绘画技巧可能不同,但是花费更多时间必然会导致更好的绘图结果。
下面是试验者的画画成果:
可以看出,系统给出的指导图的水平都差不多,但最终结果还是有点受限于用户的实际画画水平的
。
不过正如前面所说的,最后一组只画了眉毛和眼睛,系统也不会受到限制,也可以给出完整的指导图。
当然,他们这个方法也有局限性:抽象的草图可能无法转换为合理的人脸mask。
例如,下图中用户画的轮廓中的嘴被错误地视为了鼻子的一部分,这就导致后面一系列图的鼻子都不对劲。
这是因为人脸数据库中都是真实的照片,dualFace只能支持绘制具有真实风格的人像。所以,表情、夸张卡通造型等高层次的语义素描用它都很难实现。
作者介绍
此项目研究人员来自日本北陆先端科学技术大学院大学和东京大学。
前者是于1990年设立的研究院性质的日本国立大学,拥有多个日本重点扶持学科,科研水平比肩东大、京大,在信息科学领域的研究极其顶尖。