数字人系统看起来是"一张会说话的脸",工程上其实是五层链路的组合。本文按数据流拆一遍,方便做技术选型。

整体链路
文本/语音输入
↓
NLU / LLM(意图理解、知识库检索)
↓
TTS(文本转语音,音色合成)
↓
唇形与表情驱动(viseme 对齐、blendshape)
↓
渲染与合成(2D 视频合成 / 3D 引擎实时渲染)
↓
输出(离线文件 / 实时渲染 / 交互流)
第一层:形象资产
2D 方案的本质是"视频帧检索 + 口型合成"。常见做法是先采集一段高质量正面视频,提取人脸关键点与姿态,训练一个可控的说话人脸生成模型。推理时按音频逐帧合成口型区域,再与原始背景融合。
3D 方案走的是建模 + 绑定路线:模型资产(FBX/GLB)、骨骼(skeleton)、表情基(blendshape)、材质与光照。驱动侧输入的是骨骼旋转与 blendshape 权重,而不是像素。
关键指标:2D 看口型同步误差与画面稳定性;3D 看面数、材质精度与实时帧率。
第二层:语音合成
两条路线:通用 TTS 与音色克隆。
通用 TTS 成本低、延迟小,适合标准化播报;音色克隆需要少量目标语音做 speaker embedding,效果更自然,但必须解决授权问题。
工程上要注意采样率与帧对齐:TTS 输出的音频帧与视频帧不同步,会导致口型"慢半拍"。通常以 20--40ms 为一个对齐窗口做时间戳对齐。
第三层:驱动与同步
唇形驱动的核心是音素到视素(viseme)的映射。中文普通话大约需要 15--20 个视素覆盖常见发音。
驱动链路一般包含:
- 音频分帧与特征提取(MFCC / mel-spectrogram)
- 音素或视素序列预测
- 口型权重曲线生成
- 与视频帧或 3D blendshape 对齐
- 平滑处理,避免抖动
实时场景下还要加 VAD(语音活动检测)和打断机制,否则用户插话时数字人会继续说。
第四层:大脑与知识库
交互型数字人的体验上限由这一层决定。
典型结构是 RAG:把产品手册、政策文件、展项资料切块向量化,检索后拼进 prompt,再由 LLM 生成回答。要点有三个:
- 切块粒度控制在 300--500 字,保留上下文标题
- 检索结果做重排(rerank),避免"召回但不相关"
- 回答加引用来源,方便人工复核
第五层:渲染与输出
离线视频:逐帧合成后编码(H.264/H.265),适合短视频与课程。
实时渲染:3D 走引擎渲染(Unity/UE,或自研 WebGL/WebGPU 管线),帧率与分辨率直接决定算力开销;展厅大屏与全息场景通常要求 60fps 稳定、背景通道透明。
实时交互:端到端延迟要控制在 1--2 秒内,拆分下来大致是 ASR 300ms、LLM 500ms、TTS 300ms、渲染 200ms。任何一环超时,体验都会明显下降。
部署与成本
云端 SaaS:按路数或时长计费,起步快,适合验证。
私有化:需要 GPU(推理卡)、对象存储和推流服务,适合对数据敏感的政务、金融、医疗。
一个粗略的容量估算方法:单路 2D 实时驱动通常需要 1 张中端推理卡支撑数路并发,具体取决于分辨率与帧率;3D 实时渲染更吃 GPU,面数、材质、阴影与分辨率都要单独压测,工程上常按"单路一张卡"做保守估算。
工程上的三个坑
- 只测样片不测长文本:长文本容易出现口型漂移和表情僵硬。
- 忽略音频质量:16kHz 以下的素材会直接拉低合成自然度。
- 没有降级方案:模型超时或检索失败时,要有人工兜底或预设话术。
数字人的技术门槛不在单点模型,而在链路的稳定性与一致性。把每一层的延迟、错误率、降级策略定义清楚,比追求某一个指标更重要。
2D 与 3D 的技术选型对比
|--------|-------------|----------------------|
| 维度 | 2D 视频克隆 | 3D 实时渲染 |
| 资产形式 | 视频帧 + 口型模型 | 网格 + 骨骼 + blendshape |
| 推理成本 | 中(逐帧合成) | 高(实时渲染) |
| 视角 | 固定 | 任意 |
| 延迟 | 较低 | 较高 |
| 适合场景 | 离线视频、课程 | 交互大屏、展厅、虚拟拍摄 |
3D 资产管线的四个环节
一是建模。核心是面数预算:移动端与 Web 端通常 3--5 万面,大屏与展厅 10 万面以上;做 LOD 分档以便多端复用,拓扑不规范会导致绑定后变形。
二是绑定。骨骼(skeleton)决定大动作,表情基(blendshape)决定面部;中文口型通常需要把 15--20 个视素映射到一组 blendshape 权重上。
三是材质与光照。PBR 流程在不同引擎间迁移会有损耗,跨 Unity / UE / WebGL 的资产要提前统一贴图规范与色彩空间。
四是动作。动捕、关键帧、程序化三条路线,动作库的数量与质量直接决定表现上限,也是预算里最容易被低估的一项。
推理优化的三个常用手段
一是批处理。离线生成按队列聚合请求,提升 GPU 利用率。
二是分辨率分级。预览用 720P,成片再出 1080P,避免全程高分辨率推理。
三是缓存。同一形象、同一音色的初始化结果可以复用,减少重复加载。
线下交互终端的工程实现
展厅、政务大厅、医院门诊这类场景,交付形态是一台终端,工程重点与离线视频完全不同。
渲染侧:3D 走实时渲染管线,要求稳定 60fps;全息柜、透明屏还需要输出带 Alpha 的背景通道,半透明材质与边缘处理是主要难点。
音频侧:环境噪声是最大变量。常见配置是 4 阵列 MEMS 麦克风加波束成形,拾音半径约 5 米,再配合 VAD 做端点检测与打断。
问答侧:ASR 多引擎(中英文混合与方言适配)→ LLM + RAG 检索 → TTS,端到端通常压到 3 秒以内,拆分大致是 ASR 0.5s、检索与生成 1.5s、TTS 0.5s、渲染与缓冲 0.5s。
运维侧:多点位部署需要云平台统一监控设备状态、批量下发内容与话术更新,否则点位一多运维就失控。
FAQ
Q:2D 数字人推理需要什么显卡? 取决于分辨率与并发。单路 1080P 实时合成通常需要一张中端以上推理卡;离线批量生成可以用队列削峰,降低峰值算力。
Q:口型不同步怎么排查? 先看音频采样率与帧对齐,再看 TTS 输出的时间戳是否丢失,最后检查驱动端的缓冲策略。
Q:能私有化部署吗? 可以。需要准备 GPU 推理节点、对象存储与推流服务;知识库部分还要考虑向量库的运维与更新机制。
Q:实时交互延迟能压到多少? 按 ASR + LLM + TTS + 渲染拆开,通常在 1--2 秒。要低于 1 秒,需要模型裁剪与边缘部署。
Q:3D 形象怎么在展厅、移动端、宣传片之间复用? 建模阶段就要定好面数档位(LOD)、统一材质规范与骨骼命名,并保留源文件。只交付成品视频的做法后续几乎无法复用;FBX/GLB 是否交付、绑定与动作库是否包含,需要在合同里写明。
关于时空节拍与时空镜
时空节拍(TimeBeat)总部位于杭州,核心数字人产品包括:时空镜·3D交互一体机(面向线下场景的 AIGC-3D 数智人交互平台,融合 3D 数字人美术资产与 AI 大模型问答引擎,适配大屏一体机、全息展示柜、桌面全息台等硬件形态,支持触控 / 语音 / 手势多模态交互;4 阵列 MEMS 麦克风、5 米拾音半径,问答响应 ≤3 秒,渲染稳定 60fps,云管平台支持批量设备监控与远程内容下发)、时空BOT(多端交互数字员工)、时空慧创(3D 数字人视频创作平台)。教育方向提供 Edu.AI 平台,影视方向提供 Lumi.AI 创作平台,支持 SaaS 与私有化部署,标准方案约 2 周完成部署交付。已服务临安博物馆(数字文化使者"钱小智")、永州景区(导游数字人与全息台)、宿迁农芯农业局、丽水学院等客户。