在线使用 Meta AI 将儿童绘画作品处理成动画片段

Meta 在近日宣布首创并发布了一种 AI 系统,无需任何人工介入,该系统可以高成功率的自动将儿童手绘人物和类人角色(即有两条胳膊、两条腿、一个头等的角色)制作成动画片段,只需几分钟就可以实现从一张儿童绘画作品静态图到动画片段的转变

作为人类,父母和老师可以很容易地理解孩子绘画想要表达什么,但 AI 很难完成这项任务,因为儿童绘画通常以抽象、奇特的方式构建,就以儿童绘画中的“人”来说,绘画中的“人”有许多不同的形式、颜色、大小和比例,在身体对称性、形态和视角方面几乎没有相似之处。对 AI 来说,识别儿童绘画还存在一定的困难。

虽然当下已经出现了许多 AI 工具和技术来处理逼真的绘图,但儿童绘画的多样性和不规则性增加了一定程度的不可预测性,这使得识别儿童所描绘的内容变得更加复杂。

许多 AI 研究人员正在试图克服这一挑战,以便 AI 系统能够更好地识别儿童创作的各种人物绘画。Meta AI就是其中一个重要成果。

您可以在Meta AI在线处理系统中将儿童绘制的小猫咪和小蜜蜂上传上去,接下来就会看到绘画变成会跳舞的角色,动作逼真、有趣。

处理后的动画片段

通过将绘画上传到 Meta 原型系统,用户就可以体验绘画变成会跳跃的角色。此外,用户还可以下载动画与朋友家人分享。如果用户愿意,他们也可以提交这些绘画以帮助改进 AI 模型。

Meta 通过四个步骤来完成从绘画到动画的转变:目标检测识别人形;使用角色 mask 从场景中提升人形;通过“rigging”为动画做准备;使用 3D 动作捕捉制作 3D 人形动画。

人形图目标检测

第一步是将绘画中的人物与背景以及绘画中的其他类型的角色区分开来。使用现有的目标检测方法在儿童绘画上识别效果较好,但分割掩码不够准确,无法用于动画。为了解决这个问题,Meta 改为使用从目标检测器获得的边界框(bounding boxes),并应用一系列形态学操作和图像处理步骤来获得掩码。

将绘画中的人物与背景以及绘画中的其他类型的角色区分开

Meta AI 采用基于卷积神经网络的目标检测模型 Mask R-CNN 来提取儿童绘画中的人物。虽然 Mask R-CNN 是在最大的分割数据集上进行了预训练,但该数据集是由真实世界物体照片组成,而不是绘画。为了让模型能够处理绘图,需要对模型进行微调,Meta AI 使用 ResNet-50+FPN 进行了微调,以预测单个类别“人形图”。 Meta AI 在大约 1,000 幅绘画上微调了模型。

微调后,模型很好地检测到了测试数据集中的人形图。但是也有失败的案例,如下图可分为四类:检测到的人形图没有包含整个图像(例如图中尾巴没有包含);没有把人形图和背景分开;没有把几个凑在一起的人形图分开;错误地识别非人类人物(例如树)。

使用 mask 从场景中提取人形

从画作中识别和提取人物后,生成动画的下一步是将其与场景的其他部分和背景分离,该过程被称为 masking。mask 必须准确映射人物的轮廓,因为它将被用于创建网格,然后变形以生成动画。一切妥当后,mask 将包含角色的所有组件,而消除任何背景内容。

使用 mask 从场景中提取人形

尽管 Mask R-CNN 可以输出 mask,但 Meta AI 发现它们并不适合动画。当身体部位的外观变化很大时,预测的 mask 通常无法捕捉到整个人物。如下图下行图例所示,一个大的黄色三角形代表身体,一个铅笔笔画代表手臂,使用 Mask R-CNN 预测 mask 时,通常会漏掉连接双手的铅笔笔画部分。

基于此方法,Meta AI 开发了一种基于经典图像的在线处理系统,该方法对人物变化具有更强的稳健性。基于这种方法,Meta AI 使用预测到的人形边界框来裁剪图像。然后,使用自适应阈值和形态学 closing/dialating 操作,从边界框边缘填充,并假设 mask 是未被填充的最大多边形。

然而,这种方法虽然对于提取适合动画的准确 mask 来说简单有效,但当背景杂乱、人物靠得太近或者纸张页面上有褶皱撕裂或阴影时,也有可能会失败。

通过“rigging”方法做准备

孩子们通常会画出奇怪的身体形状,远远超出传统的具有完整头、臂、腿和躯干的人形概念。有些孩子画人体没有躯干,只有胳膊和腿直接与头部相连,另外一些孩子可能画出更奇怪的人形,腿从头部伸出,手臂从大腿眼睛伸出。

因此,Meta AI 需要找到一种可以改变其体型的被称之为“rigging”的方法。

他们选择使用了人体姿态检测模型 AlphaPose,用来识别人画中作为臀部、肩膀、肘部、膝盖、手腕和脚踝的关键点。该模型是在真人图像上训练的,因此在将它调整以检测儿童画作中人形姿势之前,Meta AI 必须重新训练以处理儿童画作中存在的变化(variation)类型。

具体地,Meta AI 通过内部收集和注释儿童人形画面的小数据集实现了上述目标。然后,使用这些初始数据集上训练的姿态检测器创建了一个内部工具,使得父母可以上传并对他们孩子的画作进行动画处理。随着更多数据的加入,Meta AI 迭代地对模型进行再训练,直到达到较高的准确度。

通过 3D 动作捕捉制作 3D 人形动画

有了蒙版和联合预测,就有了制作动画所需要的一切。Meta AI 首先使用提取的蒙版生成网格,并使用原始画作进行纹理化处理。利用预测到的关节位置,他们为角色创建骨骼。之后,通过旋转骨骼并使用新的关节位置使网格变形,将角色移植到各种姿态中。通过将角色移植到一系列连续的姿态中,然后就可以创建动画了。

儿童作画时很常见的一种情况是从他们最容易辨认的角度来画身体部位,比如倾向于从侧面画腿和脚,从正面画头部和躯干。Meta AI 在动作重定位步骤中利用到了这一现象。对于下半身和生半身,他们会自动确定是从正面还是侧面来对动作进行识别。

具体地,他们将动作映射到单个 2D 平面并使用它来驱动角色,并使用 Mechanical Turk 运行的感知用户研究来对这种动作重定位的结果进行验证。

分段检测流程如下图所示:

Meta AI 表示,将扭曲的视角考虑在内是有帮助的,因为很多动作都不能在单个投影平面上完成。例如,跳绳时,手臂和手腕主要在前额平面运动,而弯曲的腿则倾向于在矢状面运动。因此,Meta AI 的动作捕捉姿势并没有确定单一的动作平台,而是分别确定了上半身和下半身的投影平面。

通过AR眼睛的协助,儿童绘画中的故事可以在现实世界中栩栩如生,于是,画中的人物便可以与孩子们通过交谈或者跳舞等动作互动。

现在就来上传您孩子的绘画作品到 Meta AI 试试吧:Meta AI Animated Drawings