今天分享一个算法 KalidoKit,我们看下效果: 根据真实的人物肢体、面部、手的动作,来驱动虚拟形象。 KalidoKit 是整合了多种算法实现的,Facemesh、Blazepose、Handpose、Holistic。 这个技术的主流应用方向就是虚拟主播。 可以驱动虚拟人物跳舞: 也可以像开头的动图那样,捕捉全身的动作,面部表情、手势等。 除了这种驱动虚拟形象类型的,还可以发挥自己的想象力,做一些有趣的小应用。 KalidoKit该项目是基于 Tensorflow.js 实现的。
捕捉的关键点信息,可以用来驱动 2D 和 3D 的虚拟形象,结合一些虚拟形象的驱动引擎,即可实现文章开头所展示的效果。 既可以驱动 Live2D 形象,又可以驱动 3D VRM 形象。 这里涉及的技术点一篇文章讲不完,今天主要讲述基础的关键点检测技术:人脸关键点检测、人体姿态估计、手势姿态估计。 人脸关键点检测人脸关键点检测,有稀疏的,有稠密的。 像基础一点的,68 个关键点检测。 一般来说,一些闭眼、头部姿态、张闭嘴的检测,用这种简单的 68 个关键点就够了。 当然,也有更加稠密的关键点检测。 对于一些皮肤美容类的应用场景,就需要稠密的关键点检测算法了,成千上万的那种。 不过算法的思想都是一样的,回归出这些关键点的位置坐标,通常搭配人脸检测算法使用。 想要学习人脸关键点检测算法的,推荐两个入门项目:
一个是基础的入门项目,一个整合了人脸关键点的主流算法。 人体姿态估计人体姿态估计也是计算机视觉中一个很基础的问题。 从名字的角度来看,可以理解为对“人体”的姿态(关键点,比如头,左手,右脚等)的位置估计。 一般可以分为 4 种任务:
简单来说,就是对于人体骨骼关节点进行检测,定位人体的姿态。 人体姿态估计,应用范围宽广,比如在自动驾驶行业进行街景中行人的姿态检测、动作预测;在安防领域的行人再识别问题,特殊场景的特定动作监控;影视产业的电影特效等。 想要学习的小伙伴,可以看这整理的论文:
手势姿态估计手关节更加灵活,动作敏捷和存在自我遮挡,因此略复杂一些。 不过原理和人体姿态估计类似。 除了这种常规的手势识别,也可以用来做一些特效。 其实,很多这种人体特效,位置的定位,都是借助这些关键点实现的。 总结本文介绍了一些基础的算法,并推荐了一些学习资料,比较基础。 想要学习的,完整代码已经整理好,记得关注、私信“1212”就能领取了。 |
|