分享

“每天一篇,爱上Python”AI虚拟主播,这个项目一年都玩不够

 文明世界拼图 2021-12-08

来源:Jack Cui

今天分享一个算法 KalidoKit,我们看下效果:

文章图片1

根据真实的人物肢体、面部、手的动作,来驱动虚拟形象。

KalidoKit 是整合了多种算法实现的,Facemesh、Blazepose、Handpose、Holistic。

这个技术的主流应用方向就是虚拟主播。

可以驱动虚拟人物跳舞:

文章图片2

也可以像开头的动图那样,捕捉全身的动作,面部表情、手势等。

除了这种驱动虚拟形象类型的,还可以发挥自己的想象力,做一些有趣的小应用。

文章图片3

KalidoKit

该项目是基于 Tensorflow.js 实现的。

项目地址:

https://github.com/yeemachine/kalidokit

捕捉的关键点信息,可以用来驱动 2D 和 3D 的虚拟形象,结合一些虚拟形象的驱动引擎,即可实现文章开头所展示的效果。

既可以驱动 Live2D 形象,又可以驱动 3D VRM 形象。

这里涉及的技术点一篇文章讲不完,今天主要讲述基础的关键点检测技术:人脸关键点检测、人体姿态估计、手势姿态估计。

人脸关键点检测

人脸关键点检测,有稀疏的,有稠密的。

像基础一点的,68 个关键点检测。

文章图片4

一般来说,一些闭眼、头部姿态、张闭嘴的检测,用这种简单的 68 个关键点就够了。

当然,也有更加稠密的关键点检测。

文章图片5

对于一些皮肤美容类的应用场景,就需要稠密的关键点检测算法了,成千上万的那种。

不过算法的思想都是一样的,回归出这些关键点的位置坐标,通常搭配人脸检测算法使用。

想要学习人脸关键点检测算法的,推荐两个入门项目:

https://github.com/1adrianb/face-alignment

https://github.com/ChanChiChoi/awesome-Face_Recognition

一个是基础的入门项目,一个整合了人脸关键点的主流算法。

人体姿态估计

人体姿态估计也是计算机视觉中一个很基础的问题。

从名字的角度来看,可以理解为对“人体”的姿态(关键点,比如头,左手,右脚等)的位置估计。

一般可以分为 4 种任务:

  • 单人姿态估计 (Single-Person Skeleton Estimation)

  • 多人姿态估计 (Multi-person Pose Estimation)

  • 人体姿态跟踪 (Video Pose Tracking)

  • 3D人体姿态估计 (3D Skeleton Estimation)

简单来说,就是对于人体骨骼关节点进行检测,定位人体的姿态。

文章图片6

人体姿态估计,应用范围宽广,比如在自动驾驶行业进行街景中行人的姿态检测、动作预测;在安防领域的行人再识别问题,特殊场景的特定动作监控;影视产业的电影特效等。

想要学习的小伙伴,可以看这整理的论文:

https://github.com/cbsudux/awesome-human-pose-estimation

手势姿态估计

手关节更加灵活,动作敏捷和存在自我遮挡,因此略复杂一些。

文章图片7

不过原理和人体姿态估计类似。

文章图片8

除了这种常规的手势识别,也可以用来做一些特效。

文章图片9

其实,很多这种人体特效,位置的定位,都是借助这些关键点实现的。

总结

本文介绍了一些基础的算法,并推荐了一些学习资料,比较基础。

想要学习的,完整代码已经整理好,记得关注、私信“1212”就能领取了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多