本发明涉及语音数据技术领域,尤其是一种将语音转换成唇形的方法、系统、装置和存储介质。
背景技术:
在虚拟主播等领域,广泛地存在将语音转换成唇形的需求。结合文字转换成语音的技术,然后将语音转换成唇形,再将唇形显示在计算机生成的人物头像上,可以使得枯燥无味的新闻稿转换成为逼真的嘴唇动作,提供良好的视觉体验。但是,现有技术普遍存在着计算量庞大、消耗时间多等缺点,在将语音转换成唇形这一过程本身就存在很大的延迟,如果现有技术所要处理的语音是来自文本转换得到的,所输出的唇形还需要应用到后续的变形或贴图等步骤,那么语音转换成唇形这一过程的延迟将会与其他过程的延迟叠加,造成容易察觉且不可忍受的时延,严重影响视觉体验。
技术实现要素:
针对上述至少一个技术问题,本发明的目的在于提供一种将语音转换成唇形的方法、系统、装置和存储介质。
一方面,本发明实施例包括一种将语音转换成唇形的方法,包括:
使用长短期记忆网络接收语音并进行处理;
获取所述长短期记忆网络输出的唇形关键点;
所述长短期记忆网络接受过的训练过程,包括:
构建训练集;所述训练集由语音样本和唇形关键点样本组成;
通过各所述唇形关键点样本的p-范数,分别对各所述唇形关键点样本进行标准化;
通过主成分分析,对各所述唇形关键点样本进行降维;
使用线性插值,对各所述唇形关键点样本进行上采样;
对各所述唇形关键点样本进行归一化。
进一步地,所述将语音转换成唇形的方法还包括以下至少一个步骤:
通过使用与所述训练过程中相同的p-范数,对所述唇形关键点进行反标准化;
通过与所述训练过程中相同的主成分分析,对所述唇形关键点进行升维;
通过与所述训练过程中相同的线性插值,对所述唇形关键点进行下采样;
通过使用与所述训练过程中相同的归一化参数,对各所述唇形关键点进行反归一化。
进一步地,所述将语音转换成唇形的方法还包括对所述唇形关键点进行可视化的步骤。
进一步地,所述对所述唇形关键点进行可视化的步骤,包括:
使用生成对抗网络接收所述唇形关键点;
获取所述生成对抗网络输出的唇形图像。
进一步地,所述构建训练集这一步骤,包括:
拍摄讲话人进行讲话的视频;
从所述视频中获取截图和音频;
对所述截图进行唇形识别,从而获得所述唇形关键点样本;
从所述音频提取mfcc特征,从而获得所述语音样本。
进一步地,所述从所述音频提取mfcc特征这一步骤,包括:
对所述音频进行分帧处理;
在分帧所得的各帧之间进行加窗处理;
使用梅尔滤波器组对每一帧对应的功率谱进行滤波;
对所述梅尔滤波器组中各所述梅尔滤波器的滤波结果进行dct变换,从而获得所述mfcc特征。
进一步地,所述讲话人进行讲话的视频中,说话人进行说话的时长与不说话的时长相同。
另一方面,本发明实施例还包括一种将语音转换成唇形的系统,包括测试模块和训练模块;
所述测试模块用于:
使用长短期记忆网络接收语音并进行处理;
获取所述长短期记忆网络输出的唇形关键点;
所述训练模块用于通过以下过程对所述长短期记忆网络进行训练:
构建训练集;所述训练集由语音样本和唇形关键点样本组成;
通过各所述唇形关键点样本的p-范数,分别对各所述唇形关键点样本进行标准化;
通过主成分分析,对各所述唇形关键点样本进行降维;
使用线性插值,对各所述唇形关键点样本进行上采样;
对各所述唇形关键点样本进行归一化。
另一方面,本发明实施例还包括一种将语音转换成唇形的装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行所述的将语音转换成唇形的方法。
另一方面,本发明实施例还包括一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行实施例所述的将语音转换成唇形的方法。
本发明的有益效果是:通过使用长短期记忆网络对语音进行处理,能够达到较快的处理速度,以较少的耗时完成输出唇形关键点的过程,整个过程所造成的延迟较小;进一步地,对长短期记忆网络的训练过程,能够使长短期记忆网络以人类的语言规律去对接收到的语音解析分析,更加准确地输出合适的唇形图像;进一步地,设置对长短期记忆网络输出的唇形关键点所进行的反向处理过程,通过按照对训练集进行预处理过程的相反逻辑来对唇形关键点进行处理,可以消除预处理过程对长短期记忆网络形成的影响,使最终获得的唇形关键点具有合适的分布,便于后续应用生成对抗网络等进行视觉化处理;配合生成对抗网络使用,将唇形关键点转换成唇形图像,当持续输入变化的语音时,最终能够输出动态的唇形图像,能够提供流畅的视觉效果。
附图说明
图1为实施例中对长短期记忆网络训练过程的流程示意图。
具体实施方式
本实施例中,主要使用经过训练的长短期记忆网络(longshort-termmemory,lstm)来执行将语音转换成唇形的过程。
用于对长短期记忆网络的训练过程,参照图1,包括以下步骤:
p1.构建训练集;本步骤由以下步骤p101-p104组成;通过执行步骤p101-p104,可以获取到语音样本和唇形关键点样本,从而组成训练集。
p101.拍摄讲话人进行讲话的视频;本步骤主要是使用带录音功能的摄像机等设备进行拍摄来执行的;本实施例中,通过对讲话人讲话内容的控制、对讲话人讲话节奏的指示,以及对拍摄所得视频的后期剪辑,来控制最终所获得的视频中,说话人进行说话的时长与不说话的时长之间的比例,本实施例中,尽量使得这两个时长相等,这样,后续所获得的唇形关键点样本和语音样本中,正样本和负样本的数量就大致相同,能够取得更好的训练效果。
p102.从所述视频中获取截图和音频;使用视频处理软件,可以将拍摄所得的视频分解成为多个截图以及一段或多段音频;
p103.对所述截图进行唇形识别,对每一截图定位出嘴唇所在的区域,然后识别出嘴唇的唇线,再确定唇线上的关键点,组成这一嘴唇对应的唇形关键点样本;
p104.从所述音频提取mfcc特征,提取出的mfcc特征组成了所需获得的语音样本。所述mfcc特征就是梅尔频率倒谱系数,其提取过程为:先对所述音频进行分帧处理,也就是将音频分解成为多个长20ms-40ms的帧,由于每个帧的时长较短,因此每个帧本身相当于一个稳定信号;帧与帧之间使用汉明窗来进行加窗处理,以使得帧与帧之间更平滑;使用梅尔(mel)滤波器组对每一帧对应的功率谱进行滤波,滤波结果反映出每个频率所对应的能量;对滤波结果进行取对数处理,使得滤波结果在数值上更能符合人的听觉规律;对所述梅尔滤波器组中各所述梅尔滤波器的滤波结果进行dct变换,从而消除各滤波结果中所包含的相关性因素;保留dct变换结果的第1-20个系数,从而获得所述mfcc特征。
通过步骤p101-p104获得的训练集,能够贴合人的听觉规律,通过该训练集所训练的长短期记忆网络,能够更准确地识别语音中的听觉规律,从而转换成相应的唇形。
p2.通过各所述唇形关键点样本的p-范数,分别对各所述唇形关键点样本进行标准化。本实施例中,优选地使用各所述唇形关键点样本的二范数来进行标准化。对于一个唇形关键点样本,其二范数为
p3.通过主成分分析(principalcomponentanalysis,pca),对各所述唇形关键点样本进行降维。本实施例中,通过对pca的参数进行设置,将40维的各所述唇形关键点样本将至5维。通过pca处理,可以降低所要处理的数据量,减少对计算机资源和计算时间的耗用。
p4.使用线性插值,对各所述唇形关键点样本进行上采样。本实施例中,上采样率为4,也就是对于两个唇形关键点样本,通过线性插值的方式在它们之间增加4个唇形关键点样本。通过上采样,可以扩大训练集的数据量,增强训练效果。
p5.对各所述唇形关键点样本进行归一化,从而将各所述唇形关键点样本的数值范围映射到0和1之间,在后续处理步骤中能够取得更佳的训练效果。
在执行步骤p1-p5获得训练集之后,可以执行步骤s1-s2,来完成将语音转换成唇形的过程:
s1.使用长短期记忆网络接收语音并进行处理;本实施例中,所述语音可以通过使用麦克风现场采集或者播放音频文件的方式获得所述语音;
s2.获取所述长短期记忆网络输出的唇形关键点。
本实施例中,还对通过步骤s2获得的唇形关键点执行以下至少一项处理:
s3a.通过使用与所述训练过程中相同的p-范数,对所述唇形关键点进行反标准化;
s3b.通过与所述训练过程中相同的主成分分析,对所述唇形关键点进行升维;
s3c.通过与所述训练过程中相同的线性插值,对所述唇形关键点进行下采样;
s3d.通过使用与所述训练过程中相同的归一化参数,对各所述唇形关键点进行反归一化。
所述步骤s3a是与步骤p2对应的反向处理过程,在本实施例中,其具体为,将各所述唇形关键点中的元素分别乘以步骤p2计算所得的二范数
所述步骤s3b是与步骤p3对应的反向处理过程,在本实施例中,其具体为,对5维的所述唇形关键点进行反pca,获得40维的唇形关键点,从而完成所述升维。
所述步骤s3c是与步骤p4对应的反向处理过程,在本实施例中,所使用的下采样率为4,也就是每4个唇形关键点中保留1个唇形关键点,从而完成所述下采样。
所述步骤s3d是与步骤p5对应的反向处理过程,在本实施例中,其具体为,使用步骤p5中所使用的归一化参数,乘以各所述唇形关键点中各元素,从而完成所述反归一化。
通过执行步骤s3a-s3d中的至少一个步骤,可以对经过标准化、降维、上采样和归一化等预处理的训练集在训练过程中对长短期记忆网络产生的影响进行消除,使得最终获得的唇形关键点的分布,与唇形关键点样本采集过程中的原始分布相同。
本实施例中,步骤s2所输出的结果是与语音对应的唇形关键点。在连续接收到语音时,长短期记忆网络连续输出变化的唇形关键点,如果对这些唇形关键点执行可视化的步骤,则可以显示出与语音相应的动态唇形图像。
本实施例中,使用生成对抗网络(generativeadversarialnetworks,gan)来对所述唇形关键点进行可视化,具体包括以下步骤:
s4.使用生成对抗网络接收所述唇形关键点;
s5.获取所述生成对抗网络输出的唇形图像。
采样生成对抗网络进行可视化,具有响应速度快、实时性强的优势,能够使得最终显示出的唇形图像与步骤s1中所接收的语音同步,提高语音转换唇形过程的视觉体验。
综上,本实施例中所执行的将语音转换成唇形的方法,由于使用了长短期记忆网络对语音进行处理,能够达到较快的处理速度,以较少的耗时完成输出唇形关键点的过程,整个过程所造成的延迟较小;进一步地,对长短期记忆网络的训练过程,能够使长短期记忆网络以人类的语言规律去对接收到的语音解析分析,更加准确地输出合适的唇形图像;进一步地,设置对长短期记忆网络输出的唇形关键点所进行的反向处理过程,通过按照对训练集进行预处理过程的相反逻辑来对唇形关键点进行处理,可以消除预处理过程对长短期记忆网络形成的影响,使最终获得的唇形关键点具有合适的分布,便于后续应用生成对抗网络等进行视觉化处理;配合生成对抗网络使用,将唇形关键点转换成唇形图像,当持续输入变化的语音时,最终能够输出动态的唇形图像,能够提供流畅的视觉效果。
本实施例中,一种将语音转换成唇形的系统,包括测试模块和训练模块;
所述测试模块用于:
使用长短期记忆网络接收语音并进行处理;
获取所述长短期记忆网络输出的唇形关键点;
所述训练模块用于通过以下过程对所述长短期记忆网络进行训练:
构建训练集;所述训练集由语音样本和唇形关键点样本组成;
通过各所述唇形关键点样本的p-范数,分别对各所述唇形关键点样本进行标准化;
通过主成分分析,对各所述唇形关键点样本进行降维;
使用线性插值,对各所述唇形关键点样本进行上采样;
对各所述唇形关键点样本进行归一化。
其中测试模块和训练模块分别是指具有相同功能的硬件模块、软件模块或者硬件模块与软件模块的组合。不同的模块之间可能共用相同的硬件或软件单元。
所述一种将语音转换成唇形的系统可以是服务器或者个人计算机等设备,通过将所述一种将语音转换成唇形的方法编写成计算机程序并写入服务器或者个人计算机中,可以得到所述一种将语音转换成唇形的系统,通过运行该系统,可以实现与所述一种将语音转换成唇形的方法相同的技术效果。
本实施例中,所述一种将语音转换成唇形的装置包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行所述一种将语音转换成唇形的方法。
所述存储器还可以单独生产出来,并用于存储与所述一种将语音转换成唇形的方法相应的计算机程序。当这个存储器与处理器连接时,其存储的计算机程序将被处理器读取出来并执行,从而实施所述一种将语音转换成唇形的方法,达到实施例中所述的技术效果。
需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本实施例所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本实施例说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本实施例所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本实施例所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本实施例描述的过程的操作,除非本实施例另外指示或以其他方式明显地与上下文矛盾。本实施例描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本实施例所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本实施例所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
1.一种将语音转换成唇形的方法,其特征在于,包括以下步骤:
使用长短期记忆网络接收语音并进行处理;
获取所述长短期记忆网络输出的唇形关键点;
所述长短期记忆网络接受过的训练过程,包括:
构建训练集;所述训练集由语音样本和唇形关键点样本组成;
通过各所述唇形关键点样本的p-范数,分别对各所述唇形关键点样本进行标准化;
通过主成分分析,对各所述唇形关键点样本进行降维;
使用线性插值,对各所述唇形关键点样本进行上采样;
对各所述唇形关键点样本进行归一化。
2.根据权利要求1所述的方法,其特征在于,还包括以下至少一个步骤:
通过使用与所述训练过程中相同的p-范数,对所述唇形关键点进行反标准化;
通过与所述训练过程中相同的主成分分析,对所述唇形关键点进行升维;
通过与所述训练过程中相同的线性插值,对所述唇形关键点进行下采样;
通过使用与所述训练过程中相同的归一化参数,对各所述唇形关键点进行反归一化。
3.根据权利要求1或2所述的方法,其特征在于,还包括对所述唇形关键点进行可视化的步骤。
4.根据权利要求3所述的方法,其特征在于,所述对所述唇形关键点进行可视化的步骤,包括:
使用生成对抗网络接收所述唇形关键点;
获取所述生成对抗网络输出的唇形图像。
5.根据权利要求1所述的方法,其特征在于,所述构建训练集这一步骤,包括:
拍摄讲话人进行讲话的视频;
从所述视频中获取截图和音频;
对所述截图进行唇形识别,从而获得所述唇形关键点样本;
从所述音频提取mfcc特征,从而获得所述语音样本。
6.根据权利要求5所述的方法,其特征在于,所述从所述音频提取mfcc特征这一步骤,包括:
对所述音频进行分帧处理;
在分帧所得的各帧之间进行加窗处理;
使用梅尔滤波器组对每一帧对应的功率谱进行滤波;
对所述梅尔滤波器组中各所述梅尔滤波器的滤波结果进行dct变换,从而获得所述mfcc特征。
7.根据权利要求1所述的方法,其特征在于,所述讲话人进行讲话的视频中,说话人进行说话的时长与不说话的时长相同。
8.一种将语音转换成唇形的系统,其特征在于,包括测试模块和训练模块;
所述测试模块用于:
使用长短期记忆网络接收语音并进行处理;
获取所述长短期记忆网络输出的唇形关键点;
所述训练模块用于通过以下过程对所述长短期记忆网络进行训练:
构建训练集;所述训练集由语音样本和唇形关键点样本组成;
通过各所述唇形关键点样本的p-范数,分别对各所述唇形关键点样本进行标准化;
通过主成分分析,对各所述唇形关键点样本进行降维;
使用线性插值,对各所述唇形关键点样本进行上采样;
对各所述唇形关键点样本进行归一化。
9.一种将语音转换成唇形的装置,其特征在于,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行权利要求1-7任一项所述方法。
10.一种存储介质,其中存储有处理器可执行的指令,其特征在于,所述处理器可执行的指令在由处理器执行时用于执行如权利要求1-7任一项所述的方法。
技术总结