想象你面对一尊还没刻完的黏土半身像:鼻子、眉眼、嘴的位置都已经成型,但它只是“像人”,不是“活人”。真正让雕像活过来的,不是大轮廓,而是刻刀最后落在眉梢时那几毫米的起伏,是嘴角一次几乎看不到的收敛。做数字人表情也是这样:先把五官摆对,只是及格;让观众读出“他好像要哭,又忍住了”,才是影视级的表演。 数字人不会真有肌肉,但我们可以模仿肌肉。这种模仿的核心,就是情感表达与面部微表情精修——让数字人用极短时间、极小幅度的面部变化,传递细腻情绪。你不需要让数字人整天咧嘴大笑,只需要在正确时刻让眉梢低一点、嘴角紧一点,观众就会觉得“她有心事”。这篇文章会带你认识六类基本情绪、面部动作编码系统 FACS、微表情的时序特征、生成模型,以及如何让表情和语音“同频共振”。

岗位关联

掌握微表情精修,AI 从业者就能让数字人从“夸张卡通”走向“可信表演”,在影视、直播、客服等场景中真正具备情绪感染力。

目录
  1. 可视化演示
  2. 情绪与微表情对照
  3. 面部动作编码FACS
  4. 微表情时序特征
  5. 微表情生成模型
  6. 语音情感协同
  7. 影视级精修流程
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

展示FACS动作单元激活表情生成、blendshape线性混合权重插值、语音情感与面部表情同步对齐三阶段探索。

本节配有交互动效(进入视口后自动加载,约 3KB)。

FACS动作单元与表情映射 AU1/AU2额肌提升表达惊讶 AU12颧大肌收缩表达快乐 多AU协同组合生成复杂情绪 expression = Σ(AU_i × intensity_i) FACS基于解剖学将表情编码为可计算单元

情绪与微表情对照

回到雕刻工作台。你心里必须先有剧本,才能决定手指的力道。悲伤并不是把嘴角狠狠往下拉,而是眉梢微微下垂、眼皮松弛、整个人像是要哭又忍住了。导演常说的“他快哭了,但没哭出来”,正是微表情。微表情的诱因通常是短暂的冲突情绪:惊讶之后立刻压抑、愤怒瞬间被理智收回。数字人如果只会播放“完整版”的大表情,就像雕塑师只会抡大锤,不会用指尖收尾。

在 AI 领域,我们把这本“心情词典”归纳成六类基本情绪:快乐、悲伤、愤怒、恐惧、惊讶、厌恶。每一类并不等于一张固定的脸,而是一组肌肉动作的协作结果。比如惊讶需要“眼皮张开 + 嘴微张”,厌恶则是“上唇抽动 + 眉间挤压”。真正可信的数字人,需要在正确时刻调用这段组合,而不是把情绪按钮从 0 直接拨到 1。

机器如何判断数字人此刻该用哪组肌肉?最朴素的做法是把情绪识别看作一个打分分类问题:对每种候选情绪,统计当前表情动作单元的组合强度,再减去时长造成的衰减。

回到雕刻台,你已经知道要表达什么,也知道该动哪里。接下来真正的手艺,是搞清每块肌肉的“坐标”。

E=arg⁡max⁡c∈C(∑u∈Acwu⋅Iu−λ⋅Δt)\displaystyle E=\arg\max_{c\in \mathcal{C}}\left(\sum_{u\in \mathcal{A}_{c}} w_{u}\cdot I_{u}-\lambda \cdot \Delta t \right)
这个公式说明:数字人会从候选情绪中,挑出“动作单元加权分数最高、但拖得越久越扣分”的那一类。
  1. 候选情绪集合$c\in \mathcal{C}$ 表示我们只考虑六类基本情绪,相当于雕刻师只从固定的“心情词典”里选词。
    C={快乐,悲伤,愤怒,恐惧,惊讶,厌恶}\mathcal{C}=\{快乐,悲伤,愤怒,恐惧,惊讶,厌恶\}
  2. 与情绪相关的动作单元集合$\mathcal{A}_{c}$ 是情绪 $c$ 对应的 AU 组合,例如悲伤对应“眉内角上抬 + 嘴角下压”。
    Ac={AU1,AU4,AU15}\mathcal{A}_{c}=\{AU_1,AU_4,AU_{15}\}
  3. 加权求和$w_u \cdot I_u$ 表示每个 AU 对情绪的贡献权重乘上当前强度,权重越大,这个动作越关键。
    ∑u∈Acwu⋅Iu\sum_{u\in \mathcal{A}_{c}} w_{u}\cdot I_{u}
  4. 时长惩罚$\lambda \cdot \Delta t$ 会对持续时间过长的假表情扣分,帮助机器区分“真实瞬间反应”和“故意摆拍”。
    E=arg⁡max⁡c(分数(c)−λ⋅Δt)E=\arg\max_{c}\left(分数(c)-\lambda \cdot \Delta t\right)

面部动作编码FACS

一位成熟的雕塑师,不会只凭感觉按黏土,他会记下每一道纹理的走向。FACS(面部动作编码系统)就是雕塑师的解剖图谱。它把整张脸拆成一个个动作单元(AU),每个 AU 对应单块或局部肌肉的可见运动。AU1 让眉内角上抬,AU4 让眉毛下压并皱眉,AU12 斜拉嘴角形成微笑,AU15 让嘴角下压形成悲伤。

这一层的价值在于“可复现”。数字人没有肌肉,但只要给每个 AU 一个强度值,三维网格就会发生对应形变。眉毛眼睑组合、口周肌群、脸颊提升,都是数字人脸上的“可调旋钮”。动画师不会再写“微微悲伤”,而是写成“AU1 强度 0.4、AU4 强度 0.6、AU15 强度 0.3”——任何人拿到这组参数,都能还原同一张脸。

用数学语言描述,一张脸的运动可以看作中性脸加上多个 AU 贡献的线性叠加。每个 AU 就像黏土上按下的一个“点位”,所有点位一起动,脸就活了。

有了坐标系,还要知道这个动作在时间上怎么走。下一节,我们看雕塑上的“情绪裂纹”如何出现、停留、消失。

S(t)=S0+∑j=1Naj(t) bj+ϵ(t)\displaystyle S(t)=\mathbf{S}_{0}+\sum_{j=1}^{N}a_{j}(t)\,\mathbf{b}_{j}+\boldsymbol{\epsilon}(t)
意思是:数字人在时刻 $t$ 的面部形状,等于初始中性脸加上每个 AU 激活强度乘上对应的形变基向量,最后再加一点噪声容差。
  1. 中性脸基底$\mathbf{S}_{0}$ 是数字人面无表情时的原始网格坐标。
    S0∈R3V\mathbf{S}_{0}\in \mathbb{R}^{3V}
  2. 激活强度$a_{j}(t)$ 是第 $j$ 个 AU 在时刻 $t$ 的强度,取值通常在 0 到 1 之间。
    aj(t)∈[0,1]a_j(t)\in [0,1]
  3. 形变基向量$\mathbf{b}_{j}$ 描述第 $j$ 个 AU 会让网格上的顶点朝哪个方向移动。
    bj∈R3V\mathbf{b}_{j}\in \mathbb{R}^{3V}
  4. 噪声容差$\boldsymbol{\epsilon}(t)$ 是建模误差或传感器噪声,提醒我们 FACS 是近似,不是绝对真理。
    S(t)≈S0+∑jaj(t)bjS(t)\approx \mathbf{S}_{0}+\sum_{j}a_j(t)\mathbf{b}_{j}

微表情时序特征

雕塑师不只看静物,更看动作。一条情绪裂纹从出现到被抹去,往往只有一瞬间。如果数字人的悲伤表情持续整整三秒,观众会立刻觉得“假”;但如果它只出现 0.2 秒,然后被主人迅速压下去,观众反而会想:“她刚才是不是难过了?”

微表情的典型时长约为 1/25 秒到 0.5 秒,幅度也低,常被描述为“快速出现、快速隐藏”。真实感的关键不只是最高峰有多高,而是曲线的四个阶段:起始相位太快会像抽搐,太慢会像故意做表情;峰值保持太短会看不清,太长又失去“微”的味道;消退回落则要自然,不能突然归零。

因此,微表情强度 $a(t)$ 可以用一条不对称的快速上升、缓慢下落的曲线来近似:

曲线已经设计好,但手工调曲线太慢。于是,我们请来了“自动雕刻手”——微表情生成模型。

a(t)=A⋅(2tT)2e−2t/T,0≤t≤T\displaystyle a(t)=A\cdot\left(2\frac{t}{T}\right)^{2}e^{-2t/T},\quad 0\le t\le T
这条曲线从 0 开始快速冲高,在约四分之一处达到峰值,随后指数衰减,很像一个人“没忍住,然后立刻收住”的瞬间。
  1. 峰值幅度$A$ 控制微表情的最大强度,数字人里通常设为 0.2 到 0.6。
    A=max⁡ta(t)A=\max_{t} a(t)
  2. 上升项$\left(2t/T\right)^2$ 让曲线从 0 快速增长,模拟肌肉突然被情绪触发。
    (2t/T)2→4t2/T2\left(2t/T\right)^2 \to 4t^2/T^2
  3. 指数衰减$e^{-2t/T}$ 让曲线在峰值后自然回落,模拟理智迅速接管。
    e−2t/T,t>T/4e^{-2t/T},\quad t>T/4
  4. 总时长$T$ 限制微表情不超过 0.5 秒,超过就会变成普通表情。
    0≤t≤T0 \le t \le T

微表情生成模型

传统动画师像老派雕塑师,一帧一帧地按黏土,精准但昂贵。现代做法是训练一个“自动雕刻手”:它看过成千上万段真实表演视频,能把中性脸直接补上可信的微表情。这个自动雕刻手,本质上是生成模型。

最基础的参数驱动法就是我们前面写的 AU 曲线:给定 AU 强度,直接驱动网格。更进一步,对抗生成网络(GAN)让一个生成器负责创造表情,另一个判别器负责打假,直到生成器创造的表情连专业眼神都难辨真假。表情迁移模型则更进一步:从参考视频中提取一个人的表情,再“搬”到数字人脸上。最后还要做后处理平滑,避免帧与帧之间出现跳变。

生成模型的经典训练目标是一个“造假与打假”的博弈:

自动雕刻手再强,也不能让数字人只做哑剧。真正让观众信服的,是表情和说话声一起到达。

min⁡Gmax⁡DEx∼pdata[log⁡D(x)]+Ez∼pz[log⁡(1−D(G(z)))]\displaystyle \min_{G}\max_{D}\mathbb{E}_{x\sim p_{\text{data}}}[\log D(x)]+\mathbb{E}_{z\sim p_{z}}[\log(1-D(G(z)))]
生成器 G 想把随机噪声变成真实微表情,判别器 D 要分辨真假,两者互相促进,最终 G 能生成足以以假乱真的面部表演。
  1. 数据分布$x\sim p_{\text{data}}$ 表示从真实微表情视频中采样的图像或参数序列。
    pdata=真实演员的微表情分布p_{\text{data}}=\text{真实演员的微表情分布}
  2. 噪声分布$z\sim p_{z}$ 是生成器输入的随机向量,类似雕刻手尚未定向的黏土原料。
    pz=高斯或均匀噪声p_{z}=\text{高斯或均匀噪声}
  3. 判别器目标$\log D(x)$ 鼓励判别器对真实数据打出接近 1 的高分。
    max⁡DE[log⁡D(x)]\max_{D}\mathbb{E}[\log D(x)]
  4. 生成器目标$-\log(1-D(G(z)))$ 让生成器学会骗过判别器,使判别器对假样本也打出高分。
    min⁡GEz[log⁡(1−D(G(z)))]\min_{G}\mathbb{E}_{z}[\log(1-D(G(z)))]

语音情感协同

雕塑不会说话,但数字人会。想象电影配乐:小提琴的颤音不是机械跟拍,而是和主演的呼吸同频。语音与微表情的协同,就是让眉毛、嘴角在正确的时间点上,跟上语音里的情绪重音。

第一步是韵律特征提取。从音频中取出音高、能量、语速、停顿等特征——它们共同诉说着“这句话是开心、愤怒还是试探”。第二步是情感标签对齐,把语音分成小段,标出每一段对应的情绪和强度。第三步才是唇形口型同步,让口型单元和语音音素对齐。最后还要表情延迟控制:真正自然的表演中,微表情可能比语音早几十毫秒出现,也可能故意晚半拍,全看角色是否在压抑情绪。

在工程上,我们常需要为表情曲线寻找一个最优延迟 $\tau$,让预测的微表情 $\hat{a}(t)$ 与语音情感曲线 $a(t)$ 最吻合:

语音和微表情都对上了,最后一步,是像导演验收演员一样,做影视级精修。

τ^=arg⁡min⁡τ∑t(a^(t)−a(t−τ))2\displaystyle \hat{\tau}=\arg\min_{\tau}\sum_{t}\left(\hat{a}(t)-a(t-\tau)\right)^{2}
这个公式是在问:把表情曲线整体平移多少毫秒,才能让表情和语音的情绪重音“对上牙”。
  1. 预测表情强度$\hat{a}(t)$ 是模型根据语音估算出的数字人表情强度。
    a^(t)=语音韵律特征映射出的AU曲线\hat{a}(t)=\text{语音韵律特征映射出的AU曲线}
  2. 参考表情曲线$a(t-\tau)$ 是把参考表演曲线平移 $\tau$ 后的结果。
    a(t−τ),τ∈[−0.2,0.2] 秒a(t-\tau),\quad \tau\in[-0.2,0.2]\text{ 秒}
  3. 误差平方$(\hat{a}(t)-a(t-\tau))^2$ 衡量两条曲线在每个时刻的差距,差距越小越同步。
    ∑t(a^(t)−a(t−τ))2\sum_{t}\left(\hat{a}(t)-a(t-\tau)\right)^{2}
  4. 搜索最优延迟$\arg\min_{\tau}$ 就是在所有可能延迟中,找让误差最小的那个 $\tau$。
    τ^=arg⁡min⁡τLoss(τ)\hat{\tau}=\arg\min_{\tau}Loss(\tau)

影视级精修流程

到了这一阶段,雕塑大师会把半身像放上展台,打开不同方向的灯光,从远到近反复检查。数字人的微表情精修也一样,不是在单个 AU 上拼命加码,而是一条完整流水线。

首先,参考视频拆解:找到一段高水准演员表演,逐帧标出面部关键点。然后,关键帧标记:只挑出情绪转折瞬间,去掉冗余动作。接下来,分层驱动曲线:把眉毛、眼睑、口周、头部姿态分开控制,每一层都有自己的曲线,互不污染。最后是渲染质检:在目标分辨率下检查是否出现抖动、形变撕裂或“恐怖谷”效应。

精修的本质是一个多目标优化。我们不只要让关键点位置准确,还要保持人物身份稳定、动作平滑、口型与语音同步:

至此,从情绪词典到 FACS,从时序曲线到生成模型,从语音协同到精修流程,你已经握住了雕刻师的完整工具箱。

L=Llandmark+αLidentity+βLmotion+γLlip\displaystyle \mathcal{L}=\mathcal{L}_{\text{landmark}}+\alpha\mathcal{L}_{\text{identity}}+\beta\mathcal{L}_{\text{motion}}+\gamma\mathcal{L}_{\text{lip}}
影视级标准不是“某个指标最高”,而是关键点、身份、动作流畅度、口型同步四项同时达标。
  1. 关键点损失$\mathcal{L}_{\text{landmark}}$ 衡量生成表情与目标微表情在眼部、眉部、嘴角等关键点上的位置偏差。
    Llandmark=∥Pgen−Pref∥2\mathcal{L}_{landmark}=\|P_{gen}-P_{ref}\|^2
  2. 身份一致性损失$\mathcal{L}_{\text{identity}}$ 确保微表情不会改变数字人原本的长相,就像雕塑不会被改成人脸之外的东西。
    Lidentity=∥Fgen−Fneutral∥2\mathcal{L}_{identity}=\|F_{gen}-F_{neutral}\|^2
  3. 动作平滑损失$\mathcal{L}_{\text{motion}}$ 惩罚帧与帧之间过大的突跳,保证曲线连续。
    Lmotion=∑t∥at+1−at∥2\mathcal{L}_{motion}=\sum_{t}\|a_{t+1}-a_t\|^2
  4. 口型同步损失$\mathcal{L}_{\text{lip}}$ 让口型和语音音素对齐,这是数字人“像在说话”的基础。
    Llip=∥Lgen−Laudio∥2\mathcal{L}_{lip}=\|L_{gen}-L_{audio}\|^2

AI 应用场景

影视级数字人演员

阶段:面部表情生成与精修

解决的问题:传统 CG 动画靠手 K 关键帧,表情僵硬且制作周期长;AI 用 FACS + 生成模型把剧本情绪快速转成可微调的表情曲线。

具体案例:某数字人演员在科幻短片中出演“得知亲人离世但强忍情绪”的角色。微表情组用 0.4 秒的 AU15 嘴角下垂 + AU1 眉内角上抬,幅度压到 0.4,让观众读出隐忍,而不是夸张大哭。

虚拟主播语音表情同步

阶段:语音情感分析与表情驱动

解决的问题:只对声纹和口型已经不够,虚拟主播必须配合语音重音做出眉毛、脸颊的微反应,否则会出现“皮笑肉不笑”。

具体案例:在直播中识别到主播突然提高音调、语速加快后,系统在 0.2 秒内增强 AU12(笑容)和 AU5(眼睑收紧),让虚拟主播看起来真的“聊嗨了”。

高保真数字客服

阶段:语义/情感协同微表情

解决的问题:客服答复如果全程面无表情,用户会觉得冷漠;如果不停大表情,又显得戏太多。微表情能表达专注、理解与抱歉。

具体案例:用户投诉时,数字客服在“对不起”三个字前后叠加 AU15 和 AU1+AU4,幅度设为 0.3,并在道歉话音落下后 0.15 秒缓慢放松,避免虚假感。

Python 演示

python63 行
# -*- coding: utf-8 -*-import math AU_RANGES = {    "AU1": 0.0,    "AU4": 0.0,    "AU6": 0.0,    "AU12": 0.0,    "AU15": 0.0,    "AU25": 0.0,} EMOTION_AU = {    "joy": ["AU6", "AU12"],    "anger": ["AU4", "AU5"],    "sadness": ["AU1", "AU4", "AU15"],    "fear": ["AU1", "AU2", "AU4", "AU20"],    "surprise": ["AU1", "AU2", "AU5", "AU26"],    "disgust": ["AU9", "AU15"],} class DigitalActor:    def __init__(self, expression_map=None):        self.au_map = dict(AU_RANGES)        self.expression_map = expression_map if expression_map else EMOTION_AU        self._count = 0     def apply_emotion(self, emotion, intensity=0.5):        if emotion not in self.expression_map:            raise ValueError("unknown emotion")        for name in self.au_map:            self.au_map[name] = 0.0        for name in self.expression_map[emotion]:            if name in self.au_map:                self.au_map[name] = min(1.0, intensity)        self._count += 1        return self.au_map.copy()     def smooth_wave(self, t, T=0.3):        if t < 0 or t > T:            return 0.0        x = 2.0 * t / T        return max(0.0, min(1.0, x * x * math.exp(-2.0 * t / T) * 4.0))     def render_keyframe(self, emotion, t, T, intensity=0.5):        base = self.apply_emotion(emotion, intensity)        weight = self.smooth_wave(t, T)        frame = {name: val * weight for name, val in base.items()}        return frame def main():    actor = DigitalActor()    simulation_steps = 12    duration = 0.3    for i in range(simulation_steps):        t = i * duration / (simulation_steps - 1)        frame = actor.render_keyframe("sadness", t, duration, 0.7)        peak = max(frame.values())        print("frame", i, "peak AU", round(peak, 3))    print("total updates", actor._count) if __name__ == "__main__":    main()
目的:用一个极简的“数字人演员”类,演示 FACS 情绪映射、微表情时序曲线和逐帧 AU 强度生成。
  1. class DigitalActor:把数字人看作黏土半身像,所有 AU 强度都存在 self.au_map 里。
  2. EMOTION_AU = {...}定义情绪到 AU 组合的映射表,对应正文里的“心情词典”。
  3. def apply_emotion(...):把某个情绪写到所有 AU 强度上,相当于雕刻师先选定要按哪些点位。
  4. self.au_map[name] = min(1.0, intensity)把强度限制在 1.0 以内,防止表情过度夸张。
  5. def smooth_wave(...):用指数衰减曲线模拟微表情“快速出现、缓慢消失”的时序特征。
  6. def render_keyframe(...):把 AU 强度和时序权重相乘,生成一个带微表情的关键帧。
  7. actor.render_keyframe("sadness", t, duration, 0.7)演示在一条 0.3 秒的悲伤微表情曲线上按时取帧。

常见误区

误区我以为微表情就是把一个大表情的强度调低,比如把大笑改成微笑,数字人就有微表情了。

正解微表情的关键不是“力度小”,而是“时间短、被压抑”。一个人可能根本没来得及露出完整笑容,只在嘴角出现 0.2 秒的抽动就被压抑住了。这就像雕塑师只在黏土上留下一道极短的手指印,而不是把整个五官都改小。

为何常见:因为“微”字让人误以为是“微弱”,忽略了它的核心是短暂性和无意识流露。

误区我以为只要把 AU1、AU4、AU15 都设成正确的数值,数字人的悲伤就能以假乱真。

正解FACS 只是静态解剖坐标,真实感还要靠时序、幅度、身份约束和不同 AU 之间的生理联动。你可以在参数上完全正确,但曲线太平滑,数字人就像戴着面具。

为何常见:FACS 表格看起来精确,容易让人误以为“参数对了就行”,忽略了表演是动态过程。

误区我以为有了生成模型,AI 就能一键生成完美微表情,动画师可以全部下班。

正解生成模型擅长“像样”,但不擅长“符合当下这场戏”。它可能生成一个合理的悲伤,但情感强度、语音同步、角色身份还需要人工精修。自动雕刻手也需要导演最后把关。

为何常见:看到 GAN 生成的高质量人脸样本,很容易高估其端到端能力,忽略工程化落地的调参成本。

误区我以为“悲伤”一定等于固定的几个 AU,只要查表就能得到所有答案。

正解同一情绪在不同文化、不同语境、不同人物身上表现不同:有人悲伤时嘴角下压,有人只是眉梢微动。情绪到表情更像是概率分布,而不是死记硬背的字典。

为何常见:教材常把六类情绪画成标准人脸,读者容易记住样本,忽略真实世界的多样性。

误区我以为只要把口型和音频对齐,观众就会觉得数字人在真实说话。

正解真正的语音情感协同还要让眉毛、脸颊、头部姿态跟随音高和语速变化。只对齐口型,看起来像配音木偶,不像正在思考的人。

为何常见:唇形同步最容易量化,大家自然先做最明显的部分,从而忽略更高层的情绪韵律。

面试题

Q1. 微表情最核心的特征是什么?

单选题 · easy

  • A.持续数秒的高强度肌肉收缩
  • B.短暂且低幅度的面部动作← 正确答案
  • C.仅出现在大笑表情中
  • D.与语音完全无关的行为

答案:B。微表情的“微”主要体现在时间短、幅度低,而不是“轻微地做一个完整表情”。它通常在 1/25 秒到 0.5 秒内发生,并且幅度远低于普通表情,因此答案选 B。

Q2. FACS 中的动作单元 AU 表示什么?

单选题 · easy

  • A.情绪颜色的分类编码
  • B.单块或相关肌肉的可见运动← 正确答案
  • C.语音旋律的五线谱记号
  • D.三维网格的面数单位

答案:B。FACS 把面部肌肉运动拆成动作单元,每个 AU 对应局部肌肉的可见形变。AU 是几何坐标,不是情绪代码,也不是声音或模型面数,因此只能选 B。

Q3. 以下哪组 AU 组合最常被用来描述“悲伤下垂”?

单选题 · mid

  • A.AU1 + AU4 + AU15← 正确答案
  • B.AU6 + AU12
  • C.AU5 + AU26
  • D.AU9 + AU15

答案:A。AU1 让眉内角上抬,AU4 皱眉,AU15 让嘴角下压,三者组合通常被用于表达悲伤。AU6+AU12 是微笑,AU5+AU26 更像惊讶,AU9+AU15 偏厌恶,所以选 A。

Q4. 微表情的典型持续时间范围是多少?

单选题 · mid

  • A.0.05 秒到 0.5 秒← 正确答案
  • B.1 秒到 3 秒
  • C.5 秒到 10 秒
  • D.持续整段对话

答案:A。微表情的一个关键约束是极短,通常不超过 0.5 秒。持续太久就会变成普通表情,失去“被压抑的瞬间”这一核心特征,因此选 A。

Q5. 语音情感协同中,表情曲线最常参考什么信号?

单选题 · mid

  • A.音量包络和音高轮廓← 正确答案
  • B.画面分辨率和比特率
  • C.头发的物理模拟参数
  • D.背景音乐的拍号数量

答案:A。音高和音量会随情绪起伏,是驱动眉毛、脸颊等 AU 的重要参考信号。分辨率、头发、拍号和情感表达没有直接关系,所以选 A。

Q6. 在表情对抗生成网络中,判别器 D 的作用是什么?

单选题 · hard

  • A.把动作单元映射为语义标签
  • B.判断生成表情是否像真实表情← 正确答案
  • C.生成所有面部网格顶点
  • D.直接降低渲染分辨率

答案:B。判别器负责给真实样本和生成样本打分,让生成器不断优化。它不直接生成网格或映射标签,也不管渲染分辨率,因此选 B。

Q7. 影视级微表情精修时,最稳妥的起点是什么?

单选题 · hard

  • A.直接放大基础情绪强度
  • B.用参考视频做关键帧拆解← 正确答案
  • C.随机扰动全部 AU 参数
  • D.关闭所有后处理流程

答案:B。精修应建立在可信的参考表演上,通过关键帧拆解找到情绪转折点,再分层调整。直接放大强度、随机扰动或关闭后处理都不符合稳定生产的逻辑,所以选 B。

Q8. 哪些是影响微表情真实感的动态维度?

多选题 · mid

  • A.起始速度和峰值相位← 正确答案
  • B.回落快慢← 正确答案
  • C.指甲渲染参数
  • D.峰值幅度与 AU 协同← 正确答案

答案:ABD。微表情的曲线由起始、峰值、回退组成,时序和 AU 协同都影响真实感。指甲渲染与表情无关,因此正确组合是 A、B、D。

Q9. 使用 FACS 驱动数字人时,下列做法正确的是?

多选题 · hard

  • A.只用 AU 强度,忽略时序
  • B.叠加多个 AU 时注意生理约束← 正确答案
  • C.所有 AU 强度始终取默认值 0.5
  • D.结合语音音高微调眉部 AU← 正确答案

答案:BD。FACS 的 AU 之间存在联动关系,不能随便叠加;同时,语音音高可以作为眉部动作的调制信号。只盯强度、固定 0.5 都会让表情僵硬,所以选 B、D。

Q10. 语音与微表情协同的精修手段包括哪些?

多选题 · hard

  • A.用韵律特征调制表情曲线← 正确答案
  • B.固定口型且不让表情联动
  • C.对齐情感标签后再插值← 正确答案
  • D.手工补偿唇形延迟← 正确答案

答案:ACD。韵律特征、情感标签对齐和延迟补偿都是让表情跟上语音的常用手段。固定口型不让表情联动会失去情绪,所以正确答案是 A、C、D。