怎样做到在手机上及时跑3D真人数字人?MNN-TaoAvatar开源了! ...

来自版块: 资讯
176
0

TaoAvatar是由阿里巴巴淘宝Meta技能团队研发的3D真人数字人技能,这一技能能在手机或XR装备上实现3D数字人的及时渲染以及AI对话的强盛功能,为用户带来传神的假造交互体验。它是怎样实现的呢?本文将为您揭秘TaoAvat ...

TaoAvatar 是由阿里巴巴淘宝 Meta 技能团队研发的 3D 真人数字人技能,这一技能能在手机或 XR 装备上实现 3D 数字人的及时渲染以及 AI 对话的强盛功能,为用户带来传神的假造交互体验。

它是怎样实现的呢?本文将为您揭秘 TaoAvatar 背后的黑科技!同时在本日,昨们正式公布开源了 3D 真人数字人应用:MNN-TaoAvatar!现在应用源码已同步发布在 MNN 的 GitHub 堆栈,开辟者可自行下载安装和体验,接待各人和昨们一起交换讨论,共同探索 AI 数字人技能的无穷大概。

什么是 TaoAvatar?

TaoAvatar 是淘宝在数字人技能范畴取得的最新突破,更多具体的研究结果已经发表在相干论文。

论文标题:TaoAvatar: Real-Time Lifelike Full-Body Talking Avatars for Augmented Reality via 3D Gaussian Splatting

论文地点:https://arxiv.org/abs/2503.17032v1

开源地点:https://github.com/alibaba/MNN/blob/master/apps/Android/MnnTaoAvatar/README_CN.md

TaoAvatar 基于先辈的 3D 高斯泼溅技能,提供了一套满身互动式的真人数字人办理方案。它通过多视角视频的输入,可以敏捷天生具有高传神度的数字人形象,这些形象不但可以或许精准地捕获到精致的面部心情和手势动作,乃至连衣物渺小的褶皱以及头发的天然摆动都能清楚出现,带来一种天然而真实的视觉体验。

值得一提的是,TaoAvatar 还同时明显低落了数字人建模的本钱,大幅进步了建模服从,从而为数字人的规模化应用提供了底子。在中国三维视觉大会上,TaoAvatar 依附其杰出的性能和广泛的实用性,乐成入选「最佳演示 Demo 候选」,吸引了业界的广泛关注,成为数字人技能研究范畴的一个亮点。

什么是 MNN-TaoAvatar?

MNN-TaoAvatar 是昨们推出的一款开源的 3D 数字人应用,它集成了多项领先的 AI 技能,支持及时 3D 数字人语音交互,利用户可以或许在手机上实现与数字人的天然交换,仿佛真的在与一个「活生生」的人攀谈。MNN-TaoAvatar 不但可以或许在手机端流通运行,还完善兼容了 XR 装备。如下是在 Android 手机及 Apple Vision Pro 装备上的体验结果:

MNN-TaoAvatar 集成了多项关键技能,包罗精准的语音辨认本领,可以或许正确明白你的每一句话;先辈的大语言模子,可以深入明白你的意图和情绪;以及天然流通的语音合成技能,可以或许以天然流通的方式举行回应。更令人惊艳的是,它可以或许根据语音及时驱动面部心情的变革,从而带来更加生动真实的对话体验。

这统统的背后,是最新算法模子提供的强盛支持。基于端侧 AI 推理引擎 MNN,昨们研发了一系列的焦点模块,包罗运行大语言模子的 MNN-LLM、语音辨认模子的 MNN-ASR、语音合成模子的 MNN-TTS,以及数字人渲染的 MNN-NNR。

现阶段市面上的数字人方案许多,但基于 MNN 运行的 TaoAvatar 有哪些独特上风呢?

现在大多数主流的数字人方案重要基于云端 AI 算法,这些方案必要依靠强盛的服务器和高性能显卡资源,才气完成 ASR(Audio-Speech-Recognize,语音辨认)、TTS(Text-To-Speech,语音天生)以及 A2BS(Audio-To-BlendShape,音频驱动面部心情)等复杂处置惩罚使命。即便一些开源方案支持当地运行,每每也必要配备较为高端的硬件。

比方需搭载 RTX 3090 或更高规格显卡的装备,才气确保流通地实行推理和渲染使命。相比之下,MNN-TaoAvatar 则可以或许在仅一部手机上即可运行上述全部算法模子以及 3D 模子,显现出极高的服从和便捷性。

MNN-TaoAvatar 具有两个焦点上风:端侧及时对话和端侧及时渲染。

端侧及时对话

起首,为了实现端侧的及时对话,必要将 ASR(主动语音辨认)、TTS(文本转换语音)和 A2BS(口型驱动)的综合 RTF(Real Time Factor,及时因素)控制在 1 以内,即能在 1 秒内天生 1 秒长度的语音,RTF 值越小天生速率越快。通过连续优化,昨们取得了以下突破:

将 281 MB 的端侧 ASR 模子的 RTF 优化到了 0.18,实现了用户语音在端侧的及时转文本;

端侧大语言模子预添补速率最快可达 165 token/s,解码速率可达 41 token/s,确保了流通的文本内容天生;

将 1.34 GB 的端侧 TTS 模子 RTF 优化至 0.58,实现了文本到语音的及时合成与播放。

端侧及时渲染

为了让数字人的面部动作更为天然,渲染过程重要分为两个关键步调:起首,根据语音输入,通过算法模子精准提取面部心情动作的系数,然后将心情系数和数字人 3D 模子的预录数据举行融合,终极借助 NNR 渲染器完成高质量渲染。这两部门昨们做到的性能如下:

乐成将 368 MB 的端侧 A2BS 模子的 RTF 优化至 0.34,实现了及时语音到面部心情系数的转换。

通过自主研发的高性能 NNR 渲染器,到达了对 25 万点云模子以每秒 60 帧(FPS)的流通渲染速率,确保了动画的顺滑天然。

上文提及的详细端侧模子的功能及昨们做到的技能指标如下(基于搭载高通骁龙 Snapdragon 8 Elite芯片的智能手机测试效果):

MNN-TaoAvatar 团体流程

在用户尚未输入语音的环境下,MNN-TaoAvatar 会使用 MNN-NNR 来渲染默认的数字人模子姿态,天生闭唇、静态心情大概预设动作的画面。一旦用户开始语音输入,体系将按以下游程运行:

MNN-TaoAvatar 运行关键流程

基于这一流程,用户便可以或许与一个天然流通、心情生动的数字人举行及时对话了。在该流程的背后,MNN 框架在技能实现和性能优化上做出了大量的积极。接下来,昨们将深入探究 MNN-TaoAvatar 的技能架构及其关键优化点。

MNN-TaoAvatar 关键技能

MNN-TaoAvatar 是基于 MNN 引擎构建而成的,它集成了 MNN-LLM、MNN-NNR 以及 Sherpa-MNN(包罗 MNN-ASR 和 MNN-TTS)等多种算法模块。下图展示了这些模块在应用中的架构表示:

MNN-TaoAvatar 架构表示图

MNN:轻量级 AI 推理引擎

MNN(Mobile Neural Network)是一款功能强盛的开源、跨平台 AI 模子推理引擎。

MNN 架构表示图

它的焦点上风如下:

高性能推理:支持 CPU/GPU/NPU 等多种异构盘算方式,可以或许轻松满意加强实际/假造实际(AR/VR)、语音辨认以及大型语言模子(LLM)等必要快速相应的及时应用;

跨平台兼容:支持 C++、Python、Java 和 JavaScript 等多种语言接口,并与主流体系平台无缝集成;

模子轻量化:内置了量化与剪枝工具,有用压缩了模子巨细,大幅节流内存空间并收缩加载时间。

MNN-LLM:移动端摆设大模子

MNN-LLM 是基于 MNN 之上开辟的 MNN-Transformer 模块的一个子功能模块,用于支持大语言模子与文生图等 AIGC 使命。它包罗以下关键技能:

模子导出工具:能一键将主流 LLM/Diffusion 模子转换为 MNN 格式,大大简化了模子的摆设和利用过程;

模子量化机制:将大型模子如 Qwen2.5-1.5B 从原来的 5.58 GB 压缩至 1.2 GB,同时保持较快的解码速率,到达每秒 45 个 token;

KV 缓存/LoRA 支持:使用 KV 缓存技能,MNN-LLM 明显提拔了对话相应的速率;LoRA 技能的应用也使得模子可以或许机动适配差别的使命场景,而无需重新练习整个模子,从而低落了盘算资源的斲丧。

MNN-Transformer 架构表示图

MNN-Transformer 由三个焦点部门构成:导出工具、量化工具以及插件与引擎。

导出工具负责将各类大型模子转化为 MNN 格式,并创建须要的资源包;

量化工具能有用淘汰 MNN 模子的体积,从而低落运行时的内存,加速实行速率;

插件与引擎模块则提供了 LLM/Diffusion 运行时所需的关键功能,如分词、KV 缓存管理以及 LoRA 等。

在小米 14 手机(搭载高通骁龙 8 Gen 3 芯片)上举行的测试中,MNN-LLM 显现了杰出的 CPU 性能。其预添补速率相较于 llama.cpp 进步了 8.6 倍,较 fastllm 更是提拔了 20.5 倍。在解码速率方面,MNN-LLM 同样体现优秀,分别到达了 llama.cpp 的 2.3 倍和 fastllm 的 8.9 倍。

MNN-LLM Benchmark

Sherpa-MNN:离线语音智能新方案

为提拔语音辨认在端侧上的体现,MNN 团队对原始 sherpa-onnx 框架举行了深度优化,推出 Sherpa-MNN,它支持 ASR(主动语音辨认)和 TTS(文本转语音)算法,并具备如下上风:

性能翻倍:在 MacBook Pro M1 上(基于 arm64 架构),单线程运行颠末量化处置惩罚的流式 ASR 模子(详细模子为 sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20)。在这一测试中,onnxruntime 的 RTF(及时因子)为 0.078,而 MNN 的 RTF 仅为 0.035,相比于 onnxruntime 快出一倍。

包体积更小:在功能雷同、性能更优的环境下,MNN 的体积仅为 onnxruntime 的五分之一(对于 Android arm64 架构,MNN 的体积为 3.3 MB,而 onnxruntime 则需 15 MB)。

MNN-NNR:高效神经网络渲染引擎

MNN-NNR 是 TaoAvatar 的焦点 3D 渲染引擎,专为在移动装备上及时渲染高质量数字人模子而计划。其焦点的技能上风如下:

开辟轻便:通过将算法与渲染过程解耦,开辟者可以更专注于算法的创新与优化。利用 PyTorch 练习的模子可以轻松导出为 NNR 模子并摆设,无需深厚的图形编程履历。

极致轻量:通过将盘算逻辑离线「编译」为深度学习模子和渲染图,运行时只必要实行深度学习模子和渲染图,因此整个包体巨细极小(以 Android 为例,仅需 200k)。而且初次集成后,险些无需变动。业务功能的扩展由离线编译器处置惩罚,算法的迭代只需更新 NNR 文件即可,实现了算法迭代与引擎集成的解耦。

高性能:联合 MNN 的高效实行本领,MNN-NNR 通过引入「Dirty 机制」和免拷贝技能,确保了渲染过程的高效实行,从而实现流通的渲染结果。

MNN-NNR 架构表示图

为了让数字人模子可以或许实现高效的渲染,昨们举行了以下几项深度优化:

数据同步优化

为了消除数据同步所需的时间,昨们让全部模子都在 MNN GPU 后端上运行,并在 NNR Runtime 中设置 MNN 所利用的 GPU 后端与渲染共享同一个上下文。如许,MNN Tensor 的数据就直接存储在 GPU 内存中。NNR Runtime 实现了直接读取 MNN Tensor GPU 内存的方案,无需举行数据拷贝即可直接用于渲染,从而免去了数据同步的时间。

调理优化

在 NNR Runtime 中,昨们实现了「Dirty 机制」,每一帧只运行输入数据发生变革的 MNN 模子。在 TaoAvatar 场景中,深度模子包罗 Base Deformer、Aligner、Deformer、Color Compute 和 Sort 等。由于动态高斯数字人重修所需的图像是以 20 帧/秒的速率收罗的,为了保持高斯数字人动作的平滑性和同等性,驱动高斯数字人动作的参数只需以 20 fps 的频率设置即可。

因此,Base Deformer、Aligner 和 Deformer 只需以 20 fps 的频率运行。在视角变革不大的环境下,也不必要每帧都对高斯点举行排序,以是 Sort 模子通过另一个开关来控制运行。如许,每帧现实运行的模子就只剩下 Color Compute,从而大幅低落了团体的运行时间。

模子运行时间优化

对于利用 MNN 编译器的模子,将输入数据举行 fp16 压缩,可以提拔 50% 的性能。

对于高斯排序,MNN 实现了基于 GPU 的基数排序算法,而且使用 autotuning 技能,确保在各类 GPU 上都能到达最佳性能。

在这些优化的加持下,MNN-NNR 乐成实现了在动画模子仅以较低频率(如 20 fps)更新的环境下,画面依然可以或许以 60 fps 的流通度举行输出。

3D 高斯数字人:小模子也能高质量

传统高斯点云重修本钱高、存储体积大,而 TaoAvatar 接纳了全新的多重优化方案:

StyleUnet+MLP 混淆建模:通过一个功能强盛的 StyleUnet 西席网络,学习复杂的姿势变革,并将这些信息高效地「烘焙」到轻量级的 MLP 门生网络中,极大低落了盘算本钱。

动态高斯点云技能:将单帧重修的静态高斯点云,升级成为可复用多帧数据的动态高斯点云技能。这不但明显提拔了渲染结果的稳固性与清楚度,还明显淘汰了渲染过程中的闪耀征象。

高压缩率资产压缩算法:在 25 万点云的量级下,模子文件巨细仅约 160 MB,非常得当在端侧装备上摆设。

通过雷同素材重修得到的数字人模子,在差别高斯点云数目下,会出现出差别的清楚度、模子体积和渲染性能。为了找到最佳的均衡点,昨们举行了多种差别点云数目模子的测试:

颠末综合对比,25 万高斯点云的数字人是终端侧摆设的最佳设置方案,它不但确保了渲染时的高清楚度,还将单个 ID 的存储空间精妙地控制在 100 到 200 MB 之间。

利用阐明

硬件要求

固然昨们已经举行了大量的优化工作,但由于必要将多个模子集成得手机中,以是对手机性能照旧有肯定要求的。以下是 MNN-TaoAvatar 的保举设置:

必要高通骁龙 8 Gen 3 或划一性能 CPU。

必要至少 8 GB 内存用于模子运行。

必要至少 5 GB 空间用于存放模子文件。

⚠️ 性能不敷的装备大概会碰到卡顿、声音断续或功能受限哦。

快速体验

想要亲身体验一下吗?只需按照以下简朴的步调操纵即可。

起首克隆项目代码:

git clone https://github.com/alibaba/MNN.gitcd apps/Android/Mnn3dAvatar

然后构建并摆设:

毗连你的安卓手机,打开 Android Studio 点击「Run」,或实行:

/gradlew installDebug

通过这两个步调,你就可以在本身的手机上体验 MNN-TaoAvatar 数字人应用了!赶快来试一试吧。

相干资源以及参考链接:

TaoAvatar Github 下载:https://github.com/alibaba/MNN/blob/master/apps/Android/MnnTaoAvatar/README_CN.md

TaoAvatar 论文:https://arxiv.org/html/2503.17032v1

MNN LLM论文:https://arxiv.org/abs/2506.10443

TaoAvatar模子合集:https://modelscope.cn/collections/TaoAvatar-68d8a46f2e554a

LLM模子:Qwen2.5-1.5B MNN:https://github.com/alibaba/MNN/tree/master/3rd_party/NNR

TTS模子:bert-vits2-MNN:https://modelscope.cn/models/MNN/bert-vits2-MNN

底子TTS模子:Bert-VITS2:https://github.com/fishaudio/Bert-VITS2

声音动作模子:UniTalker-MNN:https://modelscope.cn/models/MNN/UniTalker-MNN

底子声音动作模子:UniTalker:https://github.com/X-niper/UniTalker

神经渲染模子:TaoAvatar-NNR-MNN:https://modelscope.cn/models/MNN/TaoAvatar-NNR-MNN

ASR模子:Sherpa 双语流式辨认模子:https://modelscope.cn/models/MNN/sherpa-mnn-streaming-zipformer-bilingual-zh-en-2023-02-20

china3dv live demo滑动可以看到 TaoAvatar:http://china3dv.csig.org.cn/LiveDemo.html

© THE END

转载请接洽本公众号得到授权

原标题:《怎样做到在手机上及时跑3D真人数字人?MNN-TaoAvatar开源了!》

阅读原文


路过

雷人

握手

鲜花

鸡蛋
看帖是喜欢,评论才是真爱:

全部回复(0)

2025-8-11 10:38

热文

  • 3 天
  • 7天
返回顶部