近期,新加坡国立大学Human Language Technology (HLT) 实验室提出神经网络自动配音模型VisualTTS: TTS with Accurate Lip-Speech Synchronization for Automatic Voice Over (Authors: Junchen Lu, Berrak Sisman, Rui Liu, Mingyang Zhang, Haizhou Li)。

该VisualTTS模型可以根据文字抄本和其对应的无声视频生成与演员口型画面同步的高质量语音。


论文地址:https://arxiv.org/abs/2110.03342

项目主页:https://ranacm.github.io/VisualTTS-Samples/


任务描述

本文定义了全新的多模态语音合成任务:Automatic Voice Over(AVO)。传统的语音合成模型只是为给定文本生成与真人发音相媲美的语音,而AVO任务以给定的无声视频和其对应的文字抄本为输入,不仅可以生成高质量的合成语音,而且要求合成语音与视频中的演员口型变化保持同步。图1展示了AVO任务的工作流程。


图1: Automatic Voice Over(AVO)任务工作流程示意图。模型以给定的无声视频和对应的文字抄本作为输入,输出与演员口型变化保持同步的高质量语音。


还有一些其他多模态任务与AVO任务非常相似,比如:image-to-speech, video-to-speech 和 automatic dubbing等。image-to-speech任务通常是为一副图像生成一段描述性的语音;video-to-speech任务通常以给定视频为输入,生成其对应的语音;automatic dubbing任务通常是指使用另一种语言来为给定视频进行配音。可以看到本文的AVO任务与以上任务存在明显不同。


模型介绍

整体结构

本文提出VisualTTS模型来对AVO任务进行建模。VisualTTS模型的整体结构如图2所示,包括视觉编码器 (Visual Encoder)、文本编码器 (Textual Encoder)、说话人编码器(Speaker Encoder)、视觉指导的对齐模块 (Visual-guided Aligner)和声学解码器 (Acoustic Decoder)。


首先,从视频画面中将连续的唇动图像提取出来构成唇动图像序列。之后,VisualTTS中的视觉编码器对唇动图像序列进行处理得到视觉向量 (visual embedding) 。文本编码器将输入文本编码为文本向量(textual embedding)。为了支持多说话人的语音生成,添加了说话人编码器将说话人ID编码为说话人向量。视觉指导的对齐模块用来学习文本向量和视觉向量的对齐关系。声学解码器对mel-spectrogram声学参数进行预测。最后,使用预训练的WaveNet声码器输出语音波形。


图2: VisualTTS模型的整体结构示意图。其中包括视觉编码器 (Visual Encoder)、文本编码器 (Textual Encoder)、说话人编码器(Speaker Encoder)、视觉指导的对齐模块 (Visual-guided Aligner)和声学解码器 (Acoustic Decoder)。图中加锁的模块表示预训练模块。


视觉指导的对齐模块

视觉指导的对齐模块中提出了一种文本-视觉注意力机制(textual-visual attention,TVA)来学习文本向量序列和视觉向量序列之间的跨模态对齐关系。


其中,视觉向量被看作TVA中的key向量和 value向量,文本向量作为TVA中的Query向量。本文采用多头注意力机制实现TVA。文本-视觉的注意力上下文向量计算过程为:


由于语音的内容完全由其对应的文字抄本决定,所以只要语音的内容与唇动信息相匹配,就可以准确地与口型变化相同步。通过这种方式,TVA捕捉了文本-视觉信息的依赖信息,学习了文本向量和视觉向量之间的对齐关系,从而保证生成语音与口型变化保持同步。


声学解码器

声学解码器包含视觉融合层(visual fusion layer)、基于RNN的解码层和最后的线性层(Linear layer)。


实际上,由于语音音频和视频有天然的时序对齐关系,mel-spectrogram声学参数的长度与视觉向量的长度有一定的比例。mel-spectrogram的每一帧都可以根据这个比例被索引到其对应的视觉向量。为了充分利用视觉向量和mel-spectrogram之间的时序相关性,声学解码器在每个时间步解码时,视觉融合层将每帧mel-spectrogram与它相应的视觉向量进行拼接。拼接后的联合向量与说话人向量一起形成一个多模态的向量表示,之后投射为一个隐层序列作为视觉融合层的输出。与此同时,TVA输出的注意力向量同样与说话人向量相连接,并与视觉融合输出一起传递给解码层和线性层对mel-spectrogram参数进行预测。


需要注意的是,因为视觉向量的长度可以提供精确的待生成语音的时长,声学解码器可以在合成语音达到视频的结束时刻时准确的停止声学参数的解码过程,从而避免了自回归语音合成中的无限解码问题。


实验分析

论文在GRID数据集上进行了一系列的主观和客观实验对VisualTTS的有效性进行验证。由于对于AVO任务,目前并没有合适的模型作为baseline。本文构建了两个TTS模型作为比较。第一个是传统Tacotron模型,第二个是添加了visual encoder和TVA模块的改进版Tacotron。所有模型都添加了speaker encoder从而支持多说话人语音生成。


客观实验

采用两个指标评价生成语音与视频口型变化是否保持同步:Lip Sync Error - Confidence (LSE-C) 和Lip Sync Error - Distance (LSE-D)。


采用frame disturbance (FD)指标来评价合成语音和目标语音的时长扰动,该指标也能侧面反映出合成语音的口型变化同步性。


实验结果如表1所示。从结果可以看出,本文提出的VisualTTS模型生成的语音,在口型变化同步性方面,显著优于baseline系统。另外, Tacotron with TVA基线优于Tacotron基线、VisualTTS优于Tacotron with TVA基线,也能够验证本文提出的TVA模块和Visual fusion layer的有效性。


表1:关于LSE-C、LSE-D和FD三个指标的客观实验结果


主观实验

另外,论文也对合成语音的同步表现进行了主观实验评价。包括MOS实验和AB Preference 测试。


表2和图3的实验结果也表明,VisualTTS系统合成的语音具有更好的整体自然度,与视频画面更加同步的语音可以为测听者带来更好的视听体验。


表2: MOS主观实验结果关于LSE-C、LSE-D和FD三个指标的客观实验结果


图3: AB测试主观实验结果


论文总结

在本文中,作者提出了一种新的AVO解决方案,将视觉信息引入到TTS中以实现准确的口型同步。实验结果也表明提出的VisualTTS模型在口型变化同步方面比基线系统有明显的优势。在未来工作中,将考虑将视觉信息与非自回归TTS相结合以实现更精确的口型变化同步,以及利用视觉信息来实现更细粒度的时长控制。