CN110624247B - 使用机器学习模型确定与实时语音相对应的嘴部的运动 - Google Patents
使用机器学习模型确定与实时语音相对应的嘴部的运动 Download PDFInfo
- Publication number
- CN110624247B CN110624247B CN201910179536.7A CN201910179536A CN110624247B CN 110624247 B CN110624247 B CN 110624247B CN 201910179536 A CN201910179536 A CN 201910179536A CN 110624247 B CN110624247 B CN 110624247B
- Authority
- CN
- China
- Prior art keywords
- sequence
- viseme
- audio
- samples
- prediction model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000010801 machine learning Methods 0.000 title description 7
- 238000012549 training Methods 0.000 claims abstract description 106
- 238000000034 method Methods 0.000 claims abstract description 54
- 239000013598 vector Substances 0.000 claims description 75
- 238000012800 visualization Methods 0.000 claims description 21
- 238000013507 mapping Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 description 35
- 230000006870 function Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013102 re-test Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
- G10L21/10—Transforming into visible information
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/21—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being power information
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
- G10L25/57—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for processing of video signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
- G10L2015/025—Phonemes, fenemes or fenones being the recognition units
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
- G10L21/10—Transforming into visible information
- G10L2021/105—Synthesis of the lips movements from speech, e.g. for talking heads
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0316—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Acoustics & Sound (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Probability & Statistics with Applications (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Electrically Operated Instructional Devices (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
所公开的系统和方法从音频序列预测视位。视位生成应用访问第一训练数据集,该第一训练数据集包括表示由第一讲话者说出的句子的第一音频序列和视位序列。每个视位被映射到第一音频序列的相应音频样本。视位生成应用创建第二训练数据集,以调节由说出该句子的第二讲话者说出的第二音频序列,使得第二序列和第一序列具有相同的长度,并且至少一个音素出现在第一序列和第二序列中的相同时间戳处。视位生成应用将视位序列映射到第二音频序列,并且训练视位预测模型以从音频序列预测视位序列。
Description
技术领域
本公开总体上涉及动画虚拟角色。更具体地,但不作为限制,本公开涉及使用机器学习模型以基于语音样本序列来确定动画嘴部的外观。
背景技术
虚拟角色的动画是跨越很多领域的流行的叙事媒体。但是用于这样做的传统工作流程是劳动密集型的。例如,动画师通常手动绘制每一帧,或手动指定角色在说出特定单词时如何运动。动画师指定角色的唇部如何根据角色的语音运动。例如,当一个角色说出音节“a”时,角色的嘴部做出与人类的嘴部在说出该音节时所做出的相同形状。
自动动画消除了手动动画每个嘴部运动的负担。例如,在实时或表演动画中,计算系统响应于动画师的输入或语音来控制卡通人物。但是现有的解决方案或者不能实时操作,即,执行实时动画,或者不能提供真实和准确的动画。例如,现有的解决方案可能导致角色的嘴部根本不运动或相对于预期的运动而运动太多。
另外,用于实时动画的解决方案通常基于从语音来预测动画序列的预测模型。但是这样的模型需要使用训练数据,训练数据的生成是耗时的,因为音频序列被手动映射到视位(viseme)。一分钟的语音可能需要五到七个小时的工作来手动动画。
因此,需要改进的解决方案以实现实时动画并且生成用于实时动画的预测模型的训练数据。
发明内容
本文中公开了用于从音频序列预测视位的系统和方法。在一个示例中,视位生成应用访问第一训练数据集。第一训练数据集包括第一音频序列和视位序列,第一音频序列表示由第一讲话者说出的句子,具有第一长度,并且表示音素序列。每个视位被映射到第一音频序列的相应音频样本。视位生成应用通过访问表示由第二讲话者说出的句子的第二音频序列来创建第二训练数据集,该第二音频序列具有第二长度并且包括音素序列。视位生成应用调节第二音频序列,使得第二序列长度等于第一长度并且至少一个音素出现在第一序列和第二序列中的相同时间戳处。视位生成应用将视位序列映射到第二音频序列。视位生成应用训练视位预测模型以从音频序列预测视位序列。
提及这些说明性实施例不是为了限制或限定本公开,而是提供示例以帮助理解本公开。在“具体实施方式”中讨论了另外的实施例,并且在那里提供了进一步的描述。
附图说明
当参考附图阅读以下“具体实施方式”时,将能更好地理解本公开的特征、实施例和优点。
图1是描绘根据本公开的某些实施例的视位生成系统的图;
图2描绘了根据本公开的某些实施例的由视位生成系统使用的视位集的示例;
图3是描绘根据本公开的某些实施例的用于从音频序列生成视位序列的过程的示例的流程图;
图4描绘了根据本公开的某些实施例的由视位生成系统使用的特征向量的示例;
图5描绘了根据本公开的某些实施例的由视位生成应用使用的LSTM神经网络的示例;
图6是描绘根据本公开的某些实施例的用于训练视位生成系统的过程的示例的流程图;
图7是描绘根据本公开的某些实施例的用于生成训练数据的过程的示例的流程图;
图8描绘了根据本公开的某些实施例的用于生成训练数据的时间扭曲的示例;以及
图9描绘了用于实现本公开的某些实施例的计算系统的示例。
具体实施方式
本文中描述的实施例使用时间扭曲技术来自动化用于训练在实时和表演动画系统中使用的预测模型的健壮且多样化的训练数据集的生成,并且在一些情况下,应用这些模型以基于音频序列来自动化动画。如上所述,为在动画系统中使用的预测模型生成训练数据是麻烦且耗时的。
在一个示例中,视位生成应用访问第一训练数据集。第一训练数据集包括第一音频序列和可以用于将角色动画化的视位序列。第一音频序列表示来自由第一讲话者说出的句子的音素或声音序列。视位序列中的每个视位对应于第一音频序列中的相应音频样本。例如,视位具有与第一讲话者发出与视位相对应的音素的时间相对应的时间戳。
视位生成应用在第一训练数据集上使用时间扭曲技术以生成具有来自第二讲话者的音频的第二训练数据集,而不需要手动标记视位。时间扭曲调节不同个体的语音差异,诸如语调、强调或速度,使得第二序列中的发出的音素出现在与第一音频序列中的对应音素相同的时间戳处。
更具体地,视位生成应用访问第二音频序列,该第二音频序列对应于由说出与第一讲话者相同的单词的第二讲话者生成的音素序列。视位生成应用调节第二音频序列,使得第二音频序列的长度等于第一音频序列的长度,并且使得第二讲话者发出的音素在与对应音素在第一序列中出现的相同的时间戳处出现。因此,音素的定时被扭曲以适合第二音频序列。
随后,视位生成应用将视位序列与第二音频序列进行匹配。因为视位生成应用已经将第二音频序列映射到第一音频序列,所以视位序列对应于第二音频序列并且可以重复使用。因此,不需要手动动画或手动映射视位。
该过程可以针对不同的讲话者继续,并且这样的训练数据可以被提供给预测模型,从而增加模型的稳健性。然后,视位生成应用训练视位预测模型以从第一训练集和第二训练集预测视位序列。可选地,视位生成应用将音频序列表示为一个或多个特征向量,将特征向量提供给使用训练数据训练的预测模型,并且获取针对与音频序列相对应的视位的预测。视位生成应用可以实时操作,从而支持改进的实时动画系统。
图1是描绘根据本公开的某些实施例的视位生成系统的图。视位生成系统100包括视位生成应用102、音频输入设备105、模数(A/D)转换器110、训练数据130a至130n、输出视位135和输出设备150中的一个或多个。视位生成应用102包括特征向量115、视位预测模型120和视位140a至140n。
在一个示例中,视位生成应用102从音频输入设备105接收音频序列,生成特征向量115,并且使用视位预测模型120来选择输出视位135。输出视位135选自视位140a至140n,每个视位140对应于不同的嘴部形状。关于图2进一步讨论视位。特征向量115可以包括音频序列的各种表示,并且将参考图4进一步讨论。
音频输入设备105可以是麦克风或表示音频的模拟信号。A/D转换器110通过采样并且然后量化模拟信号来将模拟音频转换为数字样本。音频输入设备105从动画师接收音频并且将音频传递给A/D转换器110,A/D转换器110将音频转换为音频样本。视位生成应用102从A/D转换器110接收音频样本。在一个实施例中,从网络连接接收数字音频样本,并且将其直接传递到视位生成应用102。例如,数字音频样本可以经由语音合成应用来生成,语音合成应用基于文本或其他输入来输出表示卡通语音的样本。
在一个实施例中,视位生成应用102基于所确定的视位来将角色(例如,计算机生成的木偶)动画化,并且将动画提供给输出设备150,诸如显示器。替代地,视位生成应用102可以将视位直接提供给另一应用,诸如动画应用。
在另一示例中,视位生成应用102生成用于训练视位预测模型120的训练数据130a至130n。更具体地,视位生成应用102使用诸如时间扭曲等技术来从训练数据130a生成附加训练数据130b至130n。训练数据130a包括第一音频序列和对应的视位序列。视位生成应用102使用训练数据130a至130n训练视位预测模型120。视位预测模型120可以是视位预测模型,诸如递归神经网络或长短期记忆(LSTM)模型。
图2描绘了根据本公开的某些实施例的由视位生成系统使用的视位集的示例。图2描绘了包括视位201至212的视位集200。视位201至201中的每个对应于独特的嘴部形状。视位201至212分别表示静默、“Ah”声音的嘴部外观、“D”声音的嘴部外观、“Ee”声音的嘴部外观、“F”声音的嘴部外观、“L”声音的嘴部外观、“M”声音的嘴部外观、“Oh”的嘴部外观、“R”声音的嘴部外观、“S”声音的嘴部外观、“Uh”声音的嘴部外观、和“W-Oo”声音的嘴部外观。
在一些实施例中,独特的嘴部形状可能与人类说话时使用的嘴部形状不准确对应。例如,由于动画中采用的强调,视位可能与预期的人类嘴部形状略有不同,这可能因动画风格而变化。
图3是描绘根据本公开的某些实施例的用于从音频序列生成视位序列的过程的示例的流程图。过程300关于如图1所描绘的视位生成应用102来描述,但是可以由其他系统来实现。
在框301处,过程300涉及访问与一时间段相对应的语音样本。视位生成应用102可以经由A/D转换器110接收由音频输入设备105实时生成的音频序列。视位生成应用102按顺序或时间窗口来分析语音样本。
例如,视位生成应用102可以使用具有特定步长(例如,10毫秒)的滑动样本窗口(例如,25毫秒)。在该示例中,视位生成应用102缓冲从0到25毫秒的传入音频样本,从输入样本的缓冲来创建第一特征向量,接收更多音频样本并且从10毫秒到35毫秒的音频样本创建第二特征向量,等等。给定音频序列可以包括来自相对于输出视位的当前、过去时间段或未来时间段的音频样本。
在框302处,过程300涉及计算表示语音样本的特征向量。视位生成应用102从语音样本计算特征向量115。特征向量115以适合于视位预测模型的方式表示音频样本序列或窗口。特征向量115可以包括不同的特征,例如,音频样本本身、从音频样本得到的统计数据、梅尔频率倒谱系数(MFCC)系数、时间导数、能量计算等。视位生成应用102可以使用不同方法从音频样本得到这样的特征。
图4描绘了由视位生成应用102生成的特征向量400的示例。特征向量400包括MFCC分量402、能量分量403、MFCC导数404和能级导数405。在一个示例中,特征向量115是28维特征向量,但其他大小的维度是可能的。如图4所示,特征向量400包括长度为13的MFCC分量402、长度为1的能量分量403、长度为13的MFCC导数404、以及长度为1的能量值导数405。
MFCC是具有非线性间隔的频带的基于频率的表示,这些频带大致匹配人类听觉系统的响应。特征向量115可以包括从音频序列得到的任何数目的MFCC。
在一个实施例中,在计算MFCC之前,视位生成应用102可以过滤输入音频以增强信号质量。在一个示例中,视位生成应用102通过使用硬限幅滤波器来压缩和增强输入音频电平。硬限幅滤波器可以衰减幅度大于预定义阈值的音频。硬限幅滤波器通常与输入增强一起应用,这增加了整体音量,同时避免了失真。
特征向量115可以包括能量分量403。能量分量403表示窗口中的音频样本序列的能量,例如,使用诸如样本的对数平均能量等函数。
特征向量115可以包括MFCC导数404或能级导数405。在特征向量115中包括时间导数有益于视位预测模型120,因为导数可以使音频的变化对于预测模型更明显。例如,音频的改变可以引起MFCC的大的改变,这导致导数改变,导致视位预测模型120识别输出序列中的视位之间的即将发生的转变。
如果以与MFCC相同的频率计算,则时间导数会引起噪声。这样,视位生成应用102可以在比标准音频序列窗口更大的时间区域上对时间导数求平均,从而平滑而消除大值。
但是因为这样的时间平均,多个时间窗口上的导数可能由于缓冲而导致等待时间。在一个实施例中,视位预测模型120使用在当前MFCC窗口之前和之后的两个窗口计算的MFCC之间的平均有限差值来计算时间导数。
返回图3,在框303处,过程300涉及通过将特征向量应用于视位预测模型来确定表示当前子集的语音的预测视位序列。训练视位预测模型120以从预定视位预测视位。更具体地,视位生成应用102向视位预测模型120提供特征向量115。视位预测模型120接收预测输出视位135。
视位预测模型120可以使用不同类型的预测模型或机器学习模型来实现。作为示例,视位预测模型120可以使用长短期记忆(LSTM)模型来实现。
图5描绘了根据本公开的某些实施例的由视位生成应用使用的LSTM神经网络的示例。图5描绘了LSTM模型500,其包括延迟501、输入501a至501n、状态509a至509n和输出视位510a至510n。视位预测模型120可以使用LSTM模型500来实现。在该示例中,LSTM模型500被配置为具有被线性地映射到12个输出视位类的200维隐藏状态的单向单层LSTM。
LSTM模型500接收从流式音频序列得到的特征向量的输入序列a0,a1,a2,…an,并且输出对应的视位序列v0,v1,v2,…vn。特征向量a0,a1,a2,…an由输入501a至501n表示。视位v0,v1,v2,…vn由输出视位910a至910c表示。LSTM模型500包括由内部状态505a至505n描绘的内部状态L0,L1,L2,…Ln。内部状态505a至505n表示从输入501a至501n得到的内部值。任何数目的内部状态是可能的。
LSTM模型500基于过去、现在或未来的时间窗口的特征向量来预测视位。LSTM模型500可以通过延迟预测视位的输出直到接收和分析后续特征向量来考虑未来窗口的特征向量。由d表示的延迟501表示前瞻时间窗口的数目。对于当前音频特征向量at,LSTM模型500预测在vt-d处在过去出现d个窗口的视位。
如图所示,LSTM模型500配置有为2的延迟,因为在生成输出视位v0之前处理两个特征向量a0和a1。在接收到特征向量a0、a1和a2之后,LSTM模型500输出在时间上对应于特征向量a0的第一预测视位v0。如图所示,特征向量a0、a1和a2由LSTM模型500用来预测输出视位v0。
因此,LSTM模型500可以基于特定应用要求而配置有不同的延迟。确定延迟501涉及准确性和等待时间之间的折衷。例如,较长的延迟501向LSTM模型500提供用于预测输出视位510a的附加数据,从而提高输出视位序列的准确性。例如,当缩短未来音频信息的量时,输出视位可能会显示抖动(chatter)。抖动是由改变太快的输出视位影响的嘴部外观的过度改变。抖动可能部分是由于某些动画经常在与预测视位相对应的语音之前略微改变视位的这一事实。在一个实施例中,d=6提供足够的前瞻,但是为模型增加了附加的60毫秒的等待时间。
但是如所讨论的,为了真实,由人类讲话者或直接收听讲话者的观众观看的动画需要低于可察觉阈值的等待时间,这排除了大量的缓冲和前瞻。经由广播观看的实时动画可以具有观众不会注意到的任意延迟,只要音频和视频信号经历相同的延迟。但是太长的延迟可能会阻碍实时操作,因为对于实时系统,LSTM模型500将可察觉的延迟保持在人类可检测的阈值以下。例如,在实验结果中,视位生成应用102可以将24帧/秒的音频序列转换成等待时间小于200毫秒的视位序列。这种等待时间在实时动画的公差范围内,即,通常不会被观察动画的人类感知到。
在另一实施例中,LSTM模型500可以输出特定视位是特征向量的匹配的概率。例如,LSTM模型500可以输出视位202的概率为72%,视位204的概率为28%。在这种情况下,视位生成应用102可以选择具有最高概率的视位,例如视位202。
在另一实施例中,视位生成应用102以不同于用于动画的帧速率的帧速率来输出视位序列。例如,视位生成应用102以100帧/秒输出视位,而动画以24帧/秒生成。视位生成应用102可以使用各种技术来移除由帧速率转换(即,将视位序列从输出帧速率转换为动画帧速率)而产生的噪声或错误的视位伪像。
例如,如果视位被呈现小于阈值数目的帧,则视位生成应用102可以将该视位分类为噪声。在一个示例中,被显示一帧的视位被认为是帧速率转换噪声的结果,因为动画师通常不显示特定视位少于两帧。为了移除这种噪声,视位生成应用102将预测视位序列的输出延迟预定数目的帧。在一个示例中,根据一些动画实践,使用两帧的延迟。通过延迟,视位生成应用102提供前瞻以在输出视位存在小于阈值帧的情况下调节输出视位序列。例如,视位生成应用102确定当前帧包括特定视位,并且后续帧和先前帧(例如,被缓冲的帧)都不包括特定视位。作为响应,视位应用将先前帧的视位映射到当前帧。因此,输出视位序列没有视位转变。
在另一实施例中,视位生成应用102可以从所得到的视位序列中移除噪声。例如,视位生成应用102通过将100帧/秒视位序列二次采样为24帧/秒序列来重新映射视位。视位生成应用102可以确定视位序列中的特定视位对应于一帧视频并且从视位序列中移除特定视位,用先前或后续视位替换所移除的视位。
在又一实施例中,与由LSTM模型500实现以便分析未来特征向量的延迟相反,视位生成应用102可以创建包括多个未来窗口的MFCC信息的特征向量115。以这种方式,来自未来时间窗口的信息被构建到特定特征向量中,而不是由LSTM模型500单独考虑。
在用于表演动画或非实时使用的实施例中,LSTM模型500可以是双向LSTM。这样的配置可以在不考虑等待时间时使用。例如,在离线配置中,视位生成应用102可以接收从与整个语音相对应的音频得到的特征向量集,并且同时对整个语音进行操作。具有整个序列的特征向量,而不是一次一个特征向量,或一次一个窗口,可以增加预测视位的准确性。
返回图3,在框304处,过程300涉及通过访问可视化列表,将视位映射到列出的可视化,并且将显示设备配置为显示视位来提供与预测视位相对应的可视化。例如,视位生成应用102访问可视化列表。列表中的每个可视化对应于特定视位。例如,视位205可以以不同于例如视位206的某种方式被动画化。视位生成应用102将预测视位映射到对应的可视化,例如,通过进行表查找。然后,视位生成应用102可以将显示设备配置为显示视位。
训练视位预测模型
如所讨论的,使用训练数据130a至130n训练视位预测模型120。训练数据可以包括一组特征向量和对应的预测视位。视位生成应用102可以用于生成训练数据130a至130n。
本文中描述的实施例使用机器学习来训练视位预测模型120。如所讨论的,各种类型的机器学习模型可以实现视位预测模型120。在典型的训练过程中,视位预测模型120学习将输入序列(通常是特征向量)映射到输出序列。在示例训练过程中,视位预测模型120学习从来自不同讲话者的不同音频序列集来预测视位。作为简化示例,训练数据包括特定音频序列或特定特征向量与对应的输出或视位之间的映射,其中特征向量表示来自不同讲话者的音频样本。视位预测模型120学习哪些特征向量(以及由此哪些音频序列)对应于特定视位,并且从而学习考虑特征向量的不同参数的变化(即,来自不同讲话者的讲话特征的变化)。因此,利用包括映射到对应的视位的各种各样的音频数据的训练数据,训练后的视位预测模型120可以准确地将各种各样的讲话风格映射到特定视位可视化。
在一个示例中,训练数据130a至130n包括多个训练向量。每个训练向量包括诸如用于音频序列的特征向量等输入序列和诸如输出视位等对应的输出序列(例如,用于声音“Sh”的特征向量和用于声音“Sh”的嘴部形状的视位)。用于给定音频序列的对应输出视位可以手动生成,例如,由动画师,或通过自动化工具,诸如关于图6描述的过程600。
训练数据130a至130n可以分为训练组和测试组。数据的训练组被提供给机器学习模型。训练数据的测试组用于训练后的模型的后续测试。以这种方式,视位预测模型120不使用训练其的相同数据来进行测试。
图6是描绘根据本公开的某些实施例的用于训练视位生成系统的过程600的示例的流程图。训练可以是迭代过程。例如,在视位生成应用102已经完成框605之后,过程600可以再次继续框601,直到训练数据130a至130n已经被提供给视位预测模型120,或者视位预测模型被充分训练。
训练数据包括诸如训练向量等输入序列和诸如针对每个序列的预期视位等对应输出序列。例如,如果特定音频序列是发出“Ah”声音的讲话者,则预测视位对应于“Ah”声音,即,讲话者在发出声音时所做出的嘴部形状。
在框601处,过程600涉及确定针对每个训练数据集的相应音频序列的每个样本的特征向量。例如,训练数据130a包括音频样本。在这种情况下,对于音频样本的窗口,视位生成应用102以与关于过程300中的框302所描述的基本上类似的方式来确定特征向量115。如关于图3和4所讨论的,特征向量115可以包括MFCC分量402、能量分量403、MFCC导数404和能级导数405中的一个或多个。
在框602处,过程600涉及向视位预测模型提供特征向量。视位生成应用102向视位预测模型120提供表示对应音频序列的特征向量115。
在框603处,过程600涉及从视位预测模型接收预测视位。视位生成应用102从视位预测模型120接收预测视位。预测视位对应于特征向量115,并且对应于生成特征向量的对应的输入音频序列。
在框604处,过程600涉及通过计算预测视位与预期视位之间的差异来计算损失函数。针对特征向量的预期视位被包括在训练数据中。预期视位可以通过手动动画生成,例如,使用动画师将生成特征向量的音频映射到来自视位集的视位。损失函数由视位预测模型120用来随时间最小化误差。
在框605处,过程600涉及调节视位预测模型的内部参数或权重以最小化损失函数。随着每次迭代,视位生成应用102寻求最小化损失函数,直到视位预测模型120被充分训练。视位生成应用102可以使用反向传播训练方法来优化LSTM模型500的内部参数。反向传播更新网络的内部参数以使得预测值更接近预期输出。视位生成应用102可以使用交叉熵损失来惩罚关于预期视位序列的分类错误。地面实况视位序列可以以24帧/秒被动画化并且被上采样以匹配模型的100帧/秒频率。
视位生成应用102可以根据需要继续过程600的框601至605,直到视位预测模型120被充分训练。在已经执行适当训练的时间点处,视位生成应用102可以测试视位预测模型。对于每个测试向量,应用向视位预测模型120提供对应的特征向量。视位生成应用102从视位预测模型120接收预测视位。
可以以不同方式比较预测视位和预期视位。例如,可以使用自动化系统。替代地,训练数据生成系统可以提供向用户示出预测视位序列和预期视位序列的显示器。用户可以通过向训练数据生成系统提供反馈来指示哪些序列更加真实或准确。
如果视位生成应用102确定视位预测模型120正在预测针对阈值数目的实例的不正确视位,则视位预测模型120可以向视位预测模型120提供附加训练数据130a至130n并且因此重新测试。
如所讨论的,训练数据可以涉及使用人类动画师将音频序列映射到预测视位。这种过程虽然有用,但是在时间和成本上可能是昂贵的。因为需要阈值量的训练数据使得视位预测模型120被充分训练,所以手动生成训练数据可能使得这些模型的使用变得不切实际。
本文中描述的实施例使用诸如时间扭曲技术等自动语音对准来从第一训练数据集生成不同讲话者的附加训练数据集。更具体地,视位生成应用102可以自动地将由第一讲话者说出的第一音频序列的手动动画视位传播给由第二讲话者说出的第二音频序列。在这样做时,视位生成应用102移除了如对第一讲话者的讲话进行手动动画的那样对第二讲话者的语音进行手动动画的需要。实施例可以将可用训练数据的量增加四倍或更多,并且可以用少至十三到十九分钟的手动创作的唇部同步数据来产生可接受的结果。
图7是描绘根据本公开的某些实施例的用于生成训练数据的过程的示例的流程图。结合图8示出了图7。图8描绘了根据本公开的某些实施例的用于生成训练数据的时间扭曲的示例。图8包括训练数据800,训练数据800包括第一训练数据集801和第二训练数据集802。第一训练数据集801包括视位序列811和第一音频序列812。第二训练数据集802包括调节后的音频序列814和视位序列815。
在框701处,过程700涉及访问第一训练数据集,该第一训练数据集包括第一音频序列,该第一音频序列表示由第一讲话者说出的句子并且具有第一长度。例如,视位生成应用102访问第一训练数据集801。第一训练数据集801包括视位序列811和第一音频序列812。
第一音频序列812中的音频样本表示音素序列。视位序列811中的视位是视位序列,每个视位对应于第一音频序列812中的一个或多个音频样本。视位序列811可以是手动生成的。例如,动画师唇部同步来自特定数据集的句子。第一训练数据集可以是训练数据130a。
在框702处,过程700涉及访问第二音频序列,该第二音频序列表示由第二讲话者说出的句子并且具有第二长度。第二音频序列813包括音素序列。视位生成应用102扭曲与第一序列中说出的相同句子的第二记录以使第二讲话者的定时与第一讲话者相匹配。以这种方式,视位生成应用102可以重用具有来自多个不同讲话者的多个不同输入流的相同的视位序列811。
在框703处,过程700涉及调节第二音频序列,使得(i)第二序列长度等于第一长度,并且(ii)至少一个音素出现在第一序列和第二序列中的相同时间戳处,从而创建第二训练数据集。视位生成应用102调节第二音频序列813以匹配第一音频序列812,从而创建调节后的音频序列814。
视位生成应用102将第二序列映射到第一序列,使得音频序列内的声音或音素在每个序列中同时发生。在一个示例中,第一音频序列反映第一讲话者在特定时间戳处说出声音“Ah”。第二讲话者很可能在与第一讲话者完全相同的时间没有说出声音“Ah”。因此,视位生成应用102将第二音频序列映射到第一音频序列,使得对应的声音“Ah”出现在相同时间戳处。
由于不同讲话者强调不同的声音或音素,并且以不同的速度说话,因此第二音频序列的调节是非线性的。例如,对特定音素进行的时间调节可能与对另一音素进行的调节不同。类似地,可以在长度上压缩相对于第一音频序列的对应部分的第二音频序列的部分,而可以扩展比第一音频序列更快地说出的序列。
在框704处,过程700涉及将视位序列映射到第二音频序列。视位生成应用102调节第二音频序列,使得第二音频序列的长度等于第一音频序列的长度,并且使得第二讲话者发出的音素在与对应音素在第一序列中出现的相同的时间戳处出现。以这种方式,音素的定时因此被扭曲以适合第二音频序列。利用映射到第一音频序列的第二音频序列,与第一音频序列相对应的视位序列现在也对应于第二音频序列。通过这样做,视位生成应用102已经创建了包括调节后的音频序列814和视位序列815的第二训练数据集。
在框705处,过程700涉及训练视位预测模型以从第一训练集和第二训练集预测视位序列。训练以与过程600中描述的基本上类似的方式发生。
在一个实施例中,视位生成应用102可以将第一音频序列和对应的视位序列都扭曲成第二音频序列,而不是将缺少对应的视位集的第二音频序列扭曲成第一音频序列,如关于过程700所描述的。
例如,视位生成应用102接收包括第一音频序列和对应的视位集的第一训练数据集和包括第二音频序列的第二训练数据集。视位生成应用102调节第一音频序列,使得第一序列的长度等于第二序列的长度并且扭曲视位集以匹配第二序列,从而创建第二训练数据集。
由于第二音频序列未被修改,因此与使用扭曲的第二序列训练视位预测模型120相反,视位生成应用102保留第二音频序列的语音中的更自然的变化。视位生成应用102将第一训练数据集或第二训练数据集的未修改版本提供给视位预测模型120。
以这种方式,视位生成应用102使用两个训练数据集训练视位预测模型120,每个训练数据集包含未修改的音频。相反,过程700包括从其原始形式被修改的第二音频序列。
用于实现某些实施例的计算系统的示例
可以使用任何合适的计算系统或计算系统组来执行本文中描述的操作。例如,图9描绘了用于实现本公开的某些实施例的计算系统的示例。计算系统900的实现可以用于视位生成应用102或视位预测模型120中的一个或多个。
所描绘的计算系统900的示例包括通信地耦合到一个或多个存储器设备904的处理器902。处理器902执行存储在存储器设备904中的计算机可执行程序代码,访问存储在存储器设备904中的信息,或两者。处理器902的示例包括微处理器、专用集成电路(“ASIC”)、现场可编程门阵列(“FPGA”)或任何其他合适的处理设备。处理器902可以包括任何数目的处理设备,包括单个处理设备。
存储器设备904包括用于存储程序代码905、程序数据907或两者的任何合适的非暂态计算机可读介质。程序代码905和程序数据907可以来自视位生成应用102、视位预测模型120或本文中描述的任何其他应用或数据。计算机可读介质可以包括能够向处理器提供计算机可读指令或其他程序代码的任何电子、光学、磁性或其他存储设备。计算机可读介质的非限制性示例包括磁盘、存储器芯片、ROM、RAM、ASIC、光学存储装置、磁带或其他磁存储装置、或者处理设备可以从其读取指令的任何其他介质。指令可以包括由编译器或解释器从以任何合适的计算机编程语言(包括例如C、C++、C#、Visual Basic、Java、Python、Perl、JavaScript和ActionScript)编写的代码生成的处理器特定指令。
计算系统900还可以包括多个外部或内部设备、输入设备920、呈现设备918或其他输入或输出设备。例如,计算系统900被示出为具有一个或多个输入/输出(“I/O”)接口908。I/O接口908可以从输入设备接收输入或向输出设备提供输出。一个或多个总线906也被包括在计算系统900中。总线906通信地耦合计算系统900中的相应一个计算系统的一个或多个组件。
计算系统900执行程序代码905,程序代码905将处理器902配置为执行本文中描述的一个或多个操作。在各种实施例中,程序代码905的示例包括由视位生成应用102执行的建模算法、或执行本文中描述的一个或多个操作的其他合适的应用。程序代码可以驻留在存储器设备904或任何合适的计算机可读介质中,并且可以由处理器902或任何其他合适的处理器执行。
在一些实施例中,一个或多个存储器设备904存储程序数据907,程序数据907包括本文中描述的一个或多个数据集和模型。这些数据集的示例包括交互数据、环境度量、训练交互数据或历史交互数据、转移重要性数据等。在一些实施例中,数据集、模型和函数中的一个或多个存储在相同存储器设备(例如,存储器设备904之一)中。在附加或替代实施例中,本文中描述的程序、数据集、模型和功能中的一个或多个存储在经由数据网络可访问的不同存储器设备904中。
在一些实施例中,计算系统900还包括网络接口设备910。网络接口设备910包括适合于建立与一个或多个数据网络的有线或无线数据连接的任何设备或设备组。网络接口设备910的非限制性示例包括以太网网络适配器、调制解调器等。计算系统900能够使用网络接口设备910经由数据网络与一个或多个其他计算设备通信。
在一些实施例中,计算系统900还包括图9中描绘的输入设备920和呈现设备918。输入设备920可以包括适合于接收控制或影响处理器902的操作的视觉、听觉或其他合适输入的任何设备或设备组。输入设备920的非限制性示例包括触摸屏、鼠标、键盘、麦克风、单独的移动计算设备等。呈现设备918可以包括适合于提供视觉、听觉或其他合适的感觉输出的任何设备或设备组。呈现设备918的非限制性示例包括触摸屏、监视器、扬声器、单独的移动计算设备等。呈现设备918被配置为显示从视位的输出序列得到的动画。另外,呈现设备918可以显示允许配置组合参数140的用户界面元素,诸如滑块或控件。
尽管图9将输入设备920和呈现设备918描绘为在执行视位生成应用102的计算设备本地,其他实现是可能的。例如,在一些实施例中,输入设备920和呈现设备918中的一个或多个可以包括使用本文中描述的一个或多个数据网络经由网络接口设备910与计算系统900通信的远程客户端计算设备。
一般考虑因素
本文中阐述了很多具体细节以提供对所要求保护的主题的透彻理解。然而,本领域技术人员将理解,可以在没有这些具体细节的情况下实践所要求保护的主题。在其他情况下,没有详细描述本领域普通技术人员已知的方法、装置或系统,以免模糊所要求保护的主题。
除非另外特别说明,否则应理解,在整个说明书中,利用诸如“处理”、“计算(computing)”、“计算(calculating)”、“确定”和“标识”等术语的讨论指的是计算设备的动作或过程,诸如一个或多个计算机或类似的电子计算设备,一个或多个计算机或类似的电子计算设备操纵或转换在存储器、寄存器或其他信息存储设备、传输设备或计算平台的显示设备内表示为物理电子或磁量的数据。
本文中讨论的一个或多个系统不限于任何特定的硬件架构或配置。计算设备可以包括提供以一个或多个输入为条件的结果的任何合适的组件布置。合适的计算设备包括访问所存储的软件的多用途的基于微处理器的计算机系统,该存储的软件将计算系统从通用计算装置编程或配置为实现本主题的一个或多个实施例的专用计算设备。可以使用任何合适的编程、脚本或其他类型的语言或语言组合来在用于编程或配置计算设备的软件中实现本文中包含的教导。
可以在这样的计算设备的操作中执行本文中公开的方法的实施例。上述示例中呈现的块的顺序可以变化——例如,可以将块重新排序,组合和/或分成子块。某些块或过程可以并行执行。
本文中“被适配为”或“被配置为”的使用表示开放且包容性的语言,其不排除被适配为或被配置为执行附加任务或步骤的设备。另外,“基于”的使用表示开放且包容性的,因为“基于”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于除了所述的之外的其他的条件或值。本文中包括的标题、列表和编号仅是为了便于解释而不是限制性的。
尽管已经关于本发明的具体实施例详细描述了本主题,但是应当理解,本领域技术人员在理解前述内容之后可以容易地产生对这些实施例的改变、变化和等同物。因此,应当理解,本公开内容是出于示例而非限制的目的而呈现的,并且不排除包括对本主题的这样的修改、变化和/或添加,这对于本领域普通技术人员来说是很清楚的。
Claims (20)
1.一种从音频序列预测视位的方法,所述方法包括:
访问第一训练数据集,所述第一训练数据集包括:
(i)表示由第一讲话者说出并且具有第一长度的句子的样本的第一音频序列,其中所述音频序列表示音素序列,以及
(ii)视位序列,其中每个视位被映射到样本的所述第一音频序列的相应音频样本;
通过以下创建第二训练数据集:
访问表示由第二讲话者说出并且具有第二长度的相同句子的样本的第二音频序列,其中所述第二音频序列包括所述音素序列;
调节样本的所述第二音频序列,使得(i)第二序列长度等于所述第一长度,并且(ii)至少一个音素出现在样本的所述第一音频序列和样本的所述第二音频序列中的相同时间戳处;
将所述视位序列映射到样本的所述第二音频序列;以及
训练视位预测模型以从所述第一训练数据集和所述第二训练数据集预测视位序列。
2.根据权利要求1所述的方法,其中训练所述视位预测模型包括:
确定针对每个训练数据集的相应音频序列的每个样本的特征向量;
向所述视位预测模型提供所述特征向量;
从所述视位预测模型接收预测视位;
通过计算所述预测视位与预期视位之间的差异来计算损失函数;以及
调节所述视位预测模型的内部参数以最小化所述损失函数。
3.根据权利要求2所述的方法,其中所述特征向量包括:
针对所述样本的一组梅尔频率倒谱系数,
所述样本的平均能量的对数,以及
所述样本的第一时间导数。
4.根据权利要求1所述的方法,还包括:
访问与一时间段相对应的多个语音样本,其中所述语音样本的当前子集对应于当前时间段,并且所述语音样本的过去子集对应于过去时间段;
计算表示所述多个语音样本的特征向量;
通过将所述特征向量应用于被训练为从多个预定视位来预测视位的所述视位预测模型,来确定表示针对所述当前子集的语音的预测视位序列,其中所述预测视位序列基于所述过去子集和所述当前子集;以及
提供与所述预测视位序列相对应的可视化,其中提供所述可视化包括:
访问可视化列表,
将所述视位映射到列出的可视化,以及
将显示设备配置为显示所述列出的可视化。
5.根据权利要求4所述的方法,还包括:
将所述视位序列中的每个视位映射到帧速率;
确定所述视位序列中的特定视位与视频帧相对应;以及
从所述视位序列中移除所述特定视位。
6.根据权利要求4所述的方法,还包括:
将所述视位序列中的每个视位映射到帧速率;
将所述预测视位序列的输出延迟预定数目的帧;以及
响应于确定(i)当前帧包括特定视位并且(ii)后续帧和先前帧缺少所述特定视位,将所述先前帧的所述视位映射到所述当前帧。
7.根据权利要求4所述的方法,还包括:
将所述视位序列中的每个视位映射到帧速率;以及
根据所述帧速率在图形时间线上表示所述视位序列。
8.一种系统,包括:
非暂态计算机可读介质,存储计算机可执行程序指令;以及
处理设备,通信地耦合到所述非暂态计算机可读介质以用于执行所述计算机可执行程序指令,其中执行所述计算机可执行程序指令将所述处理设备配置为执行包括以下的操作:
访问与一时间段相对应的多个语音样本,其中所述语音样本的当前子集对应于当前时间段,并且所述语音样本的过去子集对应于过去时间段;
计算表示所述多个语音样本的特征向量;
通过将所述特征向量应用于使用第二训练数据集被训练的视位预测模型来确定表示针对所述当前子集的语音的预测视位序列,所述第二训练数据集包括由第二讲话者说出的第二音频序列和视位序列,其中所述第二训练数据集通过将所述第二音频序列映射到第一音频序列被创建;以及
提供与所述预测视位序列相对应的可视化,其中提供所述可视化包括:
访问可视化列表,
将所述预测视位序列的每个视位映射到列出的可视化,以及
将显示设备配置为显示所述列出的可视化。
9.根据权利要求8所述的系统,还包括:
增加所述多个语音样本中的每个语音样本的幅度;
从所述多个语音样本中确定具有大于阈值的幅度的语音样本;以及
减小所述语音样本的所述幅度。
10.根据权利要求8所述的系统,其中计算所述特征向量还包括:
计算针对所述多个语音样本的一组梅尔频率倒谱系数,
计算所述多个语音样本的平均能量的对数,以及
计算所述多个语音样本的第一时间导数。
11.根据权利要求8所述的系统,其中所述操作还包括:
将所述视位序列中的每个视位映射到帧速率;
将所述预测视位序列的输出延迟预定数目的帧;以及
响应于确定(i)当前帧包括特定视位并且(ii)后续帧和先前帧缺少所述特定视位,将所述先前帧的视位映射到所述当前帧。
12.根据权利要求8所述的系统,其中所述操作还包括:
将所述预测视位序列映射到帧速率;以及
根据所述帧速率在图形时间线上表示所述预测视位序列。
13.一种非暂态计算机可读存储介质,其存储计算机可执行程序指令,其中所述计算机可执行程序指令在由处理设备执行时引起所述处理设备执行包括以下的操作:
访问第一训练数据集,所述第一训练数据集包括:
(i)表示由第一讲话者说出并且具有第一长度的句子的第一音频序列,其中所述第一音频序列表示音素序列并且具有第一长度,以及
(ii)视位序列,其中每个视位被映射到所述第一音频序列的相应音频样本;
通过以下创建第二训练数据集:
访问表示由第二讲话者说出并且具有第二长度的所述句子的第二音频序列,其中所述第二音频序列包括所述音素序列;
调节所述第一音频序列,使得(i)所述第一长度等于所述第二长度,并且(ii)至少一个音素出现在所述第一音频序列和所述第二音频序列中的相同时间戳处;
将所述视位序列映射到调节后的所述第一音频序列;以及
训练视位预测模型以从所述第一训练数据集和所述第二训练数据集预测视位序列。
14.根据权利要求13所述的非暂态计算机可读存储介质,其中训练所述视位预测模型包括:
确定针对每个训练数据集的相应音频序列的每个样本的特征向量;
向所述视位预测模型提供所述特征向量;
从所述视位预测模型接收预测视位;
通过计算所述预测视位与预期视位之间的差异来计算损失函数;以及
调节所述视位预测模型的内部参数以最小化所述损失函数。
15.根据权利要求14所述的非暂态计算机可读存储介质,其中所述特征向量包括:
针对每个语音样本的一组梅尔频率倒谱系数,
每个语音样本的平均能量的对数,以及
每个语音样本的第一时间导数。
16.根据权利要求13所述的非暂态计算机可读存储介质,其中程序指令还引起所述处理设备执行包括以下的操作:
访问与一时间段相对应的多个语音样本,其中所述语音样本的当前子集对应于当前时间段,并且所述语音样本的过去子集对应于过去时间段;
计算表示所述多个语音样本的特征向量;
通过将所述特征向量应用于被训练为从多个预定视位来预测视位的所述视位预测模型,来确定表示针对所述当前子集的语音的预测视位序列,其中所述预测视位序列基于所述过去子集和所述当前子集;以及
提供与所述预测视位序列相对应的可视化,其中提供所述可视化包括:
访问可视化列表,
将所述视位映射到列出的可视化,以及
将显示设备配置为显示所述列出的可视化。
17.根据权利要求16所述的非暂态计算机可读存储介质,还包括:
将所述视位序列中的每个视位映射到帧速率;
确定所述视位序列中的特定视位与视频帧相对应;以及
从所述视位序列中移除所述特定视位。
18.根据权利要求16所述的非暂态计算机可读存储介质,其中程序指令还引起所述处理设备执行包括以下的操作:
将所述视位序列中的每个视位映射到帧速率;
将所述预测视位序列的输出延迟预定数目的帧;以及
响应于确定(i)当前帧包括特定视位并且(ii)后续帧和先前帧缺少所述特定视位,将所述先前帧的所述视位映射到所述当前帧。
19.根据权利要求16所述的非暂态计算机可读存储介质,其中程序指令还引起所述处理设备执行包括以下的操作:
将所述预测视位序列映射到帧速率;以及
根据所述帧速率在图形时间线上表示所述预测视位序列。
20.根据权利要求16所述的非暂态计算机可读存储介质,还包括:
增加所述多个语音样本中的每个语音样本的幅度;
从所述多个语音样本中确定具有大于阈值的幅度的语音样本;以及
减小所述语音样本的所述幅度。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/016,418 | 2018-06-22 | ||
US16/016,418 US10699705B2 (en) | 2018-06-22 | 2018-06-22 | Using machine-learning models to determine movements of a mouth corresponding to live speech |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110624247A CN110624247A (zh) | 2019-12-31 |
CN110624247B true CN110624247B (zh) | 2024-04-30 |
Family
ID=66381236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910179536.7A Active CN110624247B (zh) | 2018-06-22 | 2019-03-07 | 使用机器学习模型确定与实时语音相对应的嘴部的运动 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10699705B2 (zh) |
CN (1) | CN110624247B (zh) |
AU (1) | AU2019202026B2 (zh) |
DE (1) | DE102019001775B4 (zh) |
GB (1) | GB2574920B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6965846B2 (ja) * | 2018-08-17 | 2021-11-10 | 日本電信電話株式会社 | 言語モデルスコア算出装置、学習装置、言語モデルスコア算出方法、学習方法及びプログラム |
US10798230B2 (en) * | 2018-08-23 | 2020-10-06 | Morgan Stanley Services Group Inc. | Faulty distributed system component identification |
WO2020048358A1 (en) * | 2018-09-04 | 2020-03-12 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method, system, and computer-readable medium for recognizing speech using depth information |
CN113383384A (zh) * | 2019-01-25 | 2021-09-10 | 索美智能有限公司 | 语音动画的实时生成 |
EP4018383A1 (en) * | 2019-09-25 | 2022-06-29 | DeepMind Technologies Limited | High fidelity speech synthesis with adversarial networks |
CN110910479B (zh) * | 2019-11-19 | 2023-09-22 | 中国传媒大学 | 视频处理方法、装置、电子设备及可读存储介质 |
CN111354370B (zh) | 2020-02-13 | 2021-06-25 | 百度在线网络技术(北京)有限公司 | 一种唇形特征预测方法、装置和电子设备 |
CN111429885B (zh) * | 2020-03-02 | 2022-05-13 | 北京理工大学 | 一种将音频片段映射为人脸嘴型关键点的方法 |
US11244668B2 (en) * | 2020-05-29 | 2022-02-08 | TCL Research America Inc. | Device and method for generating speech animation |
US20210383197A1 (en) * | 2020-06-04 | 2021-12-09 | EMC IP Holding Company LLC | Adaptive stochastic learning state compression for federated learning in infrastructure domains |
US20210390949A1 (en) * | 2020-06-16 | 2021-12-16 | Netflix, Inc. | Systems and methods for phoneme and viseme recognition |
CN112333179B (zh) * | 2020-10-30 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 虚拟视频的直播方法、装置、设备及可读存储介质 |
CN112542159B (zh) * | 2020-12-01 | 2024-04-09 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种数据处理方法以及设备 |
CN112927712B (zh) * | 2021-01-25 | 2024-06-04 | 网易(杭州)网络有限公司 | 视频生成方法、装置和电子设备 |
CN113035198B (zh) * | 2021-02-26 | 2023-11-21 | 北京百度网讯科技有限公司 | 三维人脸的唇动控制方法、设备和介质 |
US11688106B2 (en) | 2021-03-29 | 2023-06-27 | International Business Machines Corporation | Graphical adjustment recommendations for vocalization |
US12094448B2 (en) * | 2021-10-26 | 2024-09-17 | International Business Machines Corporation | Generating audio files based on user generated scripts and voice components |
US12154204B2 (en) | 2021-10-27 | 2024-11-26 | Samsung Electronics Co., Ltd. | Light-weight machine learning models for lip sync animation on mobile devices or other devices |
US12190424B1 (en) | 2022-03-22 | 2025-01-07 | Zoom Video Communications, Inc. | Speech driven talking face |
US12169880B2 (en) | 2022-06-06 | 2024-12-17 | Samsung Electronics Co., Ltd. | Hierarchical model-based generation of images |
US12020156B2 (en) * | 2022-07-13 | 2024-06-25 | Robert Bosch Gmbh | Systems and methods for automatic alignment between audio recordings and labels extracted from a multitude of asynchronous sensors in urban settings |
US11861778B1 (en) * | 2022-07-25 | 2024-01-02 | Gravystack, Inc. | Apparatus and method for generating a virtual avatar |
CN116206621B (zh) * | 2023-05-04 | 2023-07-25 | 北京百度网讯科技有限公司 | 口型驱动模型训练方法、装置、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366885B1 (en) * | 1999-08-27 | 2002-04-02 | International Business Machines Corporation | Speech driven lip synthesis using viseme based hidden markov models |
US6539354B1 (en) * | 2000-03-24 | 2003-03-25 | Fluent Speech Technologies, Inc. | Methods and devices for producing and using synthetic visual speech based on natural coarticulation |
CN1426577A (zh) * | 2000-04-06 | 2003-06-25 | 阿纳诺瓦有限公司 | 人物动画 |
CN1494711A (zh) * | 2001-02-05 | 2004-05-05 | �Ҵ���˾ | 使用多模式输入进行多模式焦点检测,参考岐义解析和语气分类的系统和方法 |
CN1971621A (zh) * | 2006-11-10 | 2007-05-30 | 中国科学院计算技术研究所 | 语音和文本联合驱动的卡通人脸动画生成方法 |
CN101930619A (zh) * | 2010-08-25 | 2010-12-29 | 中国科学院自动化研究所 | 基于协同过滤算法的实时语音驱动人脸唇部同步动画系统 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69911964T2 (de) * | 1998-06-29 | 2004-09-09 | British Telecommunications P.L.C. | Leistungsmessung von fernmeldesystemen |
IT1314671B1 (it) * | 1998-10-07 | 2002-12-31 | Cselt Centro Studi Lab Telecom | Procedimento e apparecchiatura per l'animazione di un modellosintetizzato di volto umano pilotata da un segnale audio. |
US6813607B1 (en) * | 2000-01-31 | 2004-11-02 | International Business Machines Corporation | Translingual visual speech synthesis |
US6778252B2 (en) * | 2000-12-22 | 2004-08-17 | Film Language | Film language |
US7663628B2 (en) * | 2002-01-22 | 2010-02-16 | Gizmoz Israel 2002 Ltd. | Apparatus and method for efficient animation of believable speaking 3D characters in real time |
EP1365359A1 (en) * | 2002-05-24 | 2003-11-26 | BRITISH TELECOMMUNICATIONS public limited company | Image processing method and system |
GB2423905A (en) | 2005-03-03 | 2006-09-06 | Sean Smith | Animated messaging |
CN1991982A (zh) * | 2005-12-29 | 2007-07-04 | 摩托罗拉公司 | 一种使用语音数据激励图像的方法 |
US9613450B2 (en) * | 2011-05-03 | 2017-04-04 | Microsoft Technology Licensing, Llc | Photo-realistic synthesis of three dimensional animation with facial features synchronized with speech |
US8775167B2 (en) | 2011-09-26 | 2014-07-08 | Adobe Systems Incorporated | Noise-robust template matching |
US8655152B2 (en) * | 2012-01-31 | 2014-02-18 | Golden Monkey Entertainment | Method and system of presenting foreign films in a native language |
US20130304587A1 (en) * | 2012-05-01 | 2013-11-14 | Yosot, Inc. | System and method for interactive communications with animation, game dynamics, and integrated brand advertising |
US9355649B2 (en) | 2012-11-13 | 2016-05-31 | Adobe Systems Incorporated | Sound alignment using timing information |
US9451304B2 (en) | 2012-11-29 | 2016-09-20 | Adobe Systems Incorporated | Sound feature priority alignment |
GB201315142D0 (en) * | 2013-08-23 | 2013-10-09 | Ucl Business Plc | Audio-Visual Dialogue System and Method |
US20150279364A1 (en) * | 2014-03-29 | 2015-10-01 | Ajay Krishnan | Mouth-Phoneme Model for Computerized Lip Reading |
US20190147838A1 (en) * | 2014-08-22 | 2019-05-16 | Zya, Inc. | Systems and methods for generating animated multimedia compositions |
US9922665B2 (en) * | 2015-08-06 | 2018-03-20 | Disney Enterprises, Inc. | Generating a visually consistent alternative audio for redubbing visual speech |
US10127929B2 (en) * | 2015-08-19 | 2018-11-13 | Massachusetts Institute Of Technology | Assessing disorders through speech and a computational model |
US10672417B2 (en) * | 2015-10-29 | 2020-06-02 | True Image Interactive, Inc. | Systems and methods for machine-generated avatars |
US9911218B2 (en) * | 2015-12-01 | 2018-03-06 | Disney Enterprises, Inc. | Systems and methods for speech animation using visemes with phonetic boundary context |
US10217261B2 (en) * | 2016-02-18 | 2019-02-26 | Pinscreen, Inc. | Deep learning-based facial animation for head-mounted display |
US11069335B2 (en) * | 2016-10-04 | 2021-07-20 | Cerence Operating Company | Speech synthesis using one or more recurrent neural networks |
US10839825B2 (en) * | 2017-03-03 | 2020-11-17 | The Governing Council Of The University Of Toronto | System and method for animated lip synchronization |
US12045705B2 (en) * | 2017-10-23 | 2024-07-23 | Artificial Intelligence Foundation, Inc. | Dynamic and intuitive aggregation of a training dataset |
-
2018
- 2018-06-22 US US16/016,418 patent/US10699705B2/en active Active
-
2019
- 2019-03-07 CN CN201910179536.7A patent/CN110624247B/zh active Active
- 2019-03-13 DE DE102019001775.7A patent/DE102019001775B4/de active Active
- 2019-03-22 GB GB1903967.6A patent/GB2574920B/en active Active
- 2019-03-22 AU AU2019202026A patent/AU2019202026B2/en active Active
-
2020
- 2020-05-29 US US16/887,418 patent/US11211060B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366885B1 (en) * | 1999-08-27 | 2002-04-02 | International Business Machines Corporation | Speech driven lip synthesis using viseme based hidden markov models |
US6539354B1 (en) * | 2000-03-24 | 2003-03-25 | Fluent Speech Technologies, Inc. | Methods and devices for producing and using synthetic visual speech based on natural coarticulation |
CN1426577A (zh) * | 2000-04-06 | 2003-06-25 | 阿纳诺瓦有限公司 | 人物动画 |
CN1494711A (zh) * | 2001-02-05 | 2004-05-05 | �Ҵ���˾ | 使用多模式输入进行多模式焦点检测,参考岐义解析和语气分类的系统和方法 |
CN1971621A (zh) * | 2006-11-10 | 2007-05-30 | 中国科学院计算技术研究所 | 语音和文本联合驱动的卡通人脸动画生成方法 |
CN101930619A (zh) * | 2010-08-25 | 2010-12-29 | 中国科学院自动化研究所 | 基于协同过滤算法的实时语音驱动人脸唇部同步动画系统 |
Non-Patent Citations (1)
Title |
---|
一种语音和文本联合驱动的卡通人脸动画方法;涂欢;周经野;刘军发;崔国勤;谢晨;;小型微型计算机系统(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
GB201903967D0 (en) | 2019-05-08 |
DE102019001775A1 (de) | 2019-12-24 |
AU2019202026B2 (en) | 2021-07-15 |
GB2574920A (en) | 2019-12-25 |
US20190392823A1 (en) | 2019-12-26 |
DE102019001775B4 (de) | 2024-07-18 |
US11211060B2 (en) | 2021-12-28 |
CN110624247A (zh) | 2019-12-31 |
US10699705B2 (en) | 2020-06-30 |
US20200294495A1 (en) | 2020-09-17 |
GB2574920B (en) | 2020-10-14 |
AU2019202026A1 (en) | 2020-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110624247B (zh) | 使用机器学习模型确定与实时语音相对应的嘴部的运动 | |
CN110709924B (zh) | 视听语音分离 | |
US10839825B2 (en) | System and method for animated lip synchronization | |
Xie et al. | A coupled HMM approach to video-realistic speech animation | |
CN111508508A (zh) | 一种超分辨率音频生成方法及设备 | |
JPH10312467A (ja) | 像合成のための自動スピーチ整列方法 | |
GB2516965A (en) | Synthetic audiovisual storyteller | |
CN113744755A (zh) | 一种从音频信号生成语音动画的装置及方法 | |
Llorach et al. | Web-based live speech-driven lip-sync | |
CN113571047A (zh) | 一种音频数据的处理方法、装置及设备 | |
CN116386590B (zh) | 一种多模态的表现性语音合成方法及装置 | |
JP2015038725A (ja) | 発話アニメーション生成装置、方法、及びプログラム | |
JP7421869B2 (ja) | 情報処理プログラム、情報処理装置、情報処理方法及び学習済モデル生成方法 | |
JP4617500B2 (ja) | リップシンクアニメーション作成装置、コンピュータプログラム及び顔モデル生成装置 | |
JP5109038B2 (ja) | リップシンクアニメーション作成装置及びコンピュータプログラム | |
JP4631077B2 (ja) | アニメーション作成装置 | |
Serra et al. | A proposal for a visual speech animation system for European Portuguese | |
JP6959901B2 (ja) | 時系列データ生成装置、方法及びプログラム | |
US20230169961A1 (en) | Context-aware prosody correction of edited speech | |
CN113096636B (zh) | 语音合成装置、方法、电子设备和存储介质 | |
CN113362432B (zh) | 一种面部动画生成方法及装置 | |
JP4177751B2 (ja) | 声質モデル生成方法、声質変換方法、並びにそれらのためのコンピュータプログラム、当該プログラムを記録した記録媒体、及び当該プログラムによりプログラムされたコンピュータ | |
Barve et al. | Synchronized Speech and Video Synthesis | |
d’Alessandro et al. | Reactive statistical mapping: Towards the sketching of performative control with data | |
WO2021244468A1 (zh) | 视频处理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |