二次元的正确打开方式

2021年2月22日08:53:10 5 892 °C
摘要

只需要一张 PNG 二次元角色图片,就可以生成虚拟偶像,生成带面部表情捕捉的 Vtuber 角色。

二次元的正确打开方式

本文 GitHub https://github.com/Jack-Cherish/PythonPark 已收录,有技术干货文章,整理的学习资料,一线大厂面试经验分享等,欢迎 Star 和 完善。

一、前言

大家好,我是 Jack 。

去年发表的「Talking Head Anime」大家都看过了吧?

最近,这位谷歌工程师对算法进行了升级,「Talking Head Anime 2」效果更好

只需要一张 PNG 二次元角色图片,就可以生成虚拟偶像,生成带面部表情捕捉的 Vtuber 角色。

作者亲自上场,动漫头像根据作者的口型和头部动作实时「演唱」,作者的完整视频

老规矩,今天就教大家怎么玩!

二、算法原理

算法的核心思想是:给定某个动漫人物的一张人脸图像和六轴的姿态信息(Pose),生成同一人物的另一张人脸图像。

通过实时控制六轴的姿态信息(Pose),来达到实时控制动漫人物的效果。

二次元的正确打开方式

整个过程分类两个步骤:

  • 第一步:改变面部表情,即控制眼睛和嘴的开闭程度。
  • 第二步:人脸旋转。

每一步都使用单独的一个网络,并将第一个网络的输出作为第二个网络的输入。

第一个网络为人脸变形器,第二个网络为人脸旋转器。

二次元的正确打开方式

为了获得更好的面部动作,作者本次升级将姿态维度增加到了 42 维

同时在人脸变形器中增加了眉毛、眼睛、嘴巴形变器。

二次元的正确打开方式

眉毛变形器:可以分割出眉毛,并控制眉毛扭曲的形状。

二次元的正确打开方式

眼睛和嘴巴变形器的网络也是类似操作。

二次元的正确打开方式

更具体的原理,详见作者的论文:

https://pkhungurn.github.io/talking-head-anime-2/

三、算法测试

「Talking Head Anime 2」还没有开源,不过应该马上就有了。

着急,可以先玩一玩「Talking Head Anime」,效果也很不错,同时也算为第二代做环境的准备了。

项目地址:

https://github.com/pkhungurn/talking-head-anime-demo

第一步:配置开发环境。

依赖不多,使用 Anaconda 配置安装下即可。

二次元的正确打开方式

这里有详细的环境配置教程:《一劳永逸的 Python 开发环境搭建

第二步:下载代码和权重文件。

一共四个权重文件,下载好并它们放在工程目录的 data 目录下。

二次元的正确打开方式

我将代码和权重文件,进行了打包,可以直接下载使用(提取码:jack):

https://pan.baidu.com/s/1MlBYx2EhyZgRoD7nXWayBA

第三步:运行程序。

超级简单,运行效果:

二次元的正确打开方式

四、总结

很期待第二个优化版本,效果绝对更好!

真实人脸也是可以这样控制的,只是需要的维度更多,数据更多。

现在各种虚拟主播已经登场了,在直播领域上线了不少相关产品,后续这类技术会做的越来越好。

三次元的人脸模型驱动也将不在话下。

我是 Jack,我们下期见。

文章持续更新,可以微信公众号搜索【JackCui-AI】第一时间阅读,本文 GitHub https://github.com/Jack-Cherish/PythonPark 已经收录,有大厂面试完整考点,欢迎 Star。

weinxin
微信公众号
分享技术,乐享生活:微信公众号搜索「JackCui-AI」关注一个在互联网摸爬滚打的潜行者。
Jack Cui

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:5   其中:访客  3   博主  2

    • avatar 小菜P 来自天朝的朋友 谷歌浏览器 Windows 10 北京市 联通 1

      import torch
      ModuleNotFoundError: No module named ‘torch’
      老师我遇到问题了 下载完GIThub 按照教程搭建好环境 做到第三步的时候提示我这个, 它的意思是没有模型名字叫“torch”的文件 请问我想的对吗 怎么解决

        • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Mac OS X 10_14_4 北京市 联通

          @小菜P 先配置开发环境。

            • avatar 小菜P 来自天朝的朋友 谷歌浏览器 Windows 10 北京市 联通 1

              @Jack Cui 老师 我在搭建环境的时候遇到下面的报错情况是什么意思 希望老师抽空解答一下

                • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Mac OS X 10_14_4 北京市 联通

                  @小菜P 别贴那么长的代码,你就是环境没有配置,没有python基础嘛?
                  https://cuijiahua.com/blog/2020/10/dl-basics-1.html
                  把第三方库安装好!

            • avatar pythonfei 来自天朝的朋友 火狐浏览器 Windows 10 重庆市 移动 0

              嘴巴动不了哎,老师这个是本来就动不了还是,还是说我调试的哪里不对啊。