CN110709924B - 视听语音分离 - Google Patents

视听语音分离 Download PDF

Info

Publication number
CN110709924B
CN110709924B CN201880034995.XA CN201880034995A CN110709924B CN 110709924 B CN110709924 B CN 110709924B CN 201880034995 A CN201880034995 A CN 201880034995A CN 110709924 B CN110709924 B CN 110709924B
Authority
CN
China
Prior art keywords
video
audio
neural network
speaker
speakers
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
Application number
CN201880034995.XA
Other languages
English (en)
Other versions
CN110709924A (zh
Inventor
因巴尔·莫塞里
迈克尔·鲁宾施泰因
阿瑞尔·埃弗拉特
威廉·弗里曼
奥兰·朗
凯文·威廉·威尔逊
塔利·德克尔
阿维纳坦·哈西迪姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN110709924A publication Critical patent/CN110709924A/zh
Application granted granted Critical
Publication of CN110709924B publication Critical patent/CN110709924B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech 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/57Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • G10L17/18Artificial neural networks; Connectionist approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/24Speech recognition using non-acoustical features
    • G10L15/25Speech recognition using non-acoustical features using position of the lips, movement of the lips or face analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/06Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
    • G10L21/10Transforming into visible information
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/06Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
    • G10L21/18Details of the transformation process

Abstract

用于视听语音分离的方法、系统和装置,包括在计算机存储介质上编码的计算机程序。方法包括:对于来自已经检测到一个或多个说话者的面部的视频中的帧流中的每个帧,获得每个说话者的面部的相应的每帧面部嵌入;对于每个说话者,处理说话者的面部的每帧面部嵌入以生成说话者的面部的视觉特征;获得视频的音频声道的频谱图;处理频谱图以生成音频声道的音频嵌入;将一个或多个说话者的视觉特征与音频声道的音频嵌入相结合,以生成视频的视听嵌入;为一个或多个说话者中的每一个确定相应的频谱图掩模;确定每个说话者的相应的隔离语音频谱图。

Description

视听语音分离
相关申请的交叉引用
本申请要求于2017年11月22日提交的临时申请No.62/590,190的优先权,其全部内容通过引用合并于此。
背景技术
本说明书涉及用于训练和使用神经网络来执行自动语音分离的系统和方法。
神经网络是机器学习模型,它使用一个或多个层非线性单元来预测接收到的输入的输出。一些神经网络除输出层外还包括一个或多个隐藏层。每个隐藏层的输出都用作网络中下一层(即,下一个隐藏层或输出层)的输入。网络的每一层根据相应组参数的当前值从接收的输入生成输出。
一些神经网络是递归神经网络。递归神经网络是一种神经网络,它接收输入序列并从输入序列生成输出序列。特别地,递归神经网络可以在计算当前时间步长的输出时使用来自先前时间步长的网络的部分或全部内部状态。递归神经网络的一个示例是长短期记忆(LSTM)神经网络,其中包括一个或多个LSTM存储块。每个LSTM存储块可以包括一个或多个单元,每个单元包括输入门、遗忘门和输出门,允许该单元存储该单元的先前状态(例如,用于生成电流激活或要提供到LSTM神经网络的其他组件)。双向LSTM神经网络是一种LSTM神经网络,其中每个LSTM存储块都包含一个或多个单元,可以存储该单元的将来状态以及以前的状态。也就是说,当处理来自输入序列的给定输入时,双向LSTM神经网络使用输入序列中给定输入之前和给定输入之后的两个输入的上下文。
一些神经网络是包括一个或多个卷积层的卷积神经网络。卷积层通常是稀疏连接的神经网络层。也就是说,卷积层中的每个节点都从前一神经网络层中一部分节点(即少于所有节点)接收输入,或者,如果卷积层是序列中的最低层,则卷积层中的每个节点接收神经网络的一部分输入,并根据输入生成激活。通常,卷积层具有通过根据每个节点的一组权重对接收到的输入进行卷积来生成激活的节点,称为过滤器。在某些情况下,卷积层中的节点可以被配置为共享过滤器。即,该层中的全部或一部分节点可以被约束为总是具有与该层中的其他节点相同的权重值。
扩张卷积神经网络是一种卷积神经网络,它根据扩张因子通过修改节点的卷积算子以将过滤器应用于不同范围的输入,从而一次对接收到的输入的较大部分进行卷积。例如,与同一图像的典型卷积相比,由像素表示的输入图像的扩张卷积将像素卷积得彼此距离更远。与卷积神经网络中的节点相比,具有给定大小的过滤器的扩张卷积神经网络中的节点比标准卷积层中具有相同大小的过滤器的节点一次卷积输入的更大部分。
发明内容
本说明书描述了一种实现为在一个或多个位置的一个或多个计算机上的计算机程序的系统,该系统接收一个或多个说话者的输入视频并对于每个说话者生成隔离的语音信号,其中只有相应说话者的语音可以被听到。
根据一个方面,提供了一种方法,该方法包括:对于来自已经检测到一个或多个说话者的面部的视频的帧流中的每个帧,获得每个说话者的面部的相应的每帧面部嵌入;对于每个说话者使用视频卷积神经网络处理说话者面部的每帧面部嵌入,以生成说话者面部的视觉特征;获得所述视频的音频声道的频谱图;使用音频卷积神经网络处理所述频谱图,以生成所述音频声道的音频嵌入;将一个或多个说话者的视觉特征与所述音频声道的音频嵌入相结合,以生成所述视频的视听嵌入;从所述视频的视听嵌入中,对于所述一个或多个说话者中的每一个确定各自的频谱图掩模;以及从相应的频谱图掩模和相应的音频声道中,确定隔离所述视频中说话者的语音的每个说话者的相应的隔离语音频谱图。
该方法可以进一步包括以下特征。
该方法可以进一步包括从所述一个或多个说话者中的特定一个说话者的相应隔离语音频谱图中生成所述特定说话者的隔离语音信号。
获得各自的每帧面部嵌入可以包括:获得包括帧流的视频;在帧流的每个帧中,检测一个或多个说话者中的每一个的相应的面部;以及对于每个帧,为每个检测到的面部生成各自的每帧面部嵌入。
将所述一个或多个说话者的视觉特征与所述音频声道的音频嵌入相结合以生成所述视频的视听嵌入可以包括:将所述一个或多个说话者的视觉特征与所述音频声道的音频嵌入进行级联,以生成所述视频的视听嵌入。
从所述视频的视听嵌入确定所述一个或多个说话者中的每一个的各自的掩模可以包括:使用掩蔽神经网络处理所述视频的视听嵌入,其中所述掩蔽神经网络被配置为:处理所述视频的视听嵌入,以对于所述一个或多个说话者中的每一个生成各自的频谱图掩模。
可选地,所述掩蔽神经网络包括一个或多个长短期记忆(LSTM)层,其后是一个或多个其他神经网络层。
可选地,所述一个或多个其他神经网络层包括一个或多个完全连接的层。
可选地,所述一个或多个LSTM层是双向LSTM层。
该方法可以进一步包括对于所述一个或多个说话者中的每一个,使用自动语音识别(ASR)模型处理所述说话者的隔离语音频谱图或从所述说话者的隔离语音频谱图得出的数据,以生成视频中所述说话者的语音的转录。
根据一个方面,提供了一种训练视频卷积神经网络、音频卷积神经网络和掩蔽神经网络的方法,所述方法包括:获得包括多个训练示例的训练数据,每个训练示例包括(i)相应的训练视频和(ii)所述相应的训练视频中的一个或多个说话者中的每一个的语音的真值隔离语音频谱图;以及在所述训练数据上训练所述视频卷积神经网络、音频卷积神经网络和掩蔽神经网络。
该方法可以进一步包括以下可选特征。
对于所述训练示例中的每一个,获得所述训练数据可以包括:对于所述一个或多个说话者中的每一个,从清晰视频中获得所述说话者讲话的清晰视频和所述说话者语音的相应清晰音频声道;至少从所述一个或多个说话者的清晰视频和相应清晰音频声道中生成混合视频和混合音频声道;以及对于所述一个或多个说话者中的每一个,通过将所述混合视频与对应于所述说话者的语音的相应清晰音频声道的频谱图相关联,生成所述训练示例。
可选地,每个训练示例包括:(i)单个说话者的相应训练视频;以及(ii)相应训练视频中的单个说话者的语音的真值隔离语音频谱图,并且,生成所述混合视频和所述混合音频声道包括用噪声增强所述单个说话者的语音的清晰音频声道。
可选地,每个训练示例包括:(i)多个说话者的各自的训练视频;以及(ii)相应训练视频中的所述多个说话者中的每个的语音的相应真值隔离语音频谱图;并且,生成具有所述混合音频声道的混合视频的步骤包括:混合所述多个说话者的训练视频,以及混合所述多个说话者的各个清晰的音频声道。
生成所述混合视频和所述混合音频声道可以包括用噪声来增强所述多个说话者的语音的混合音频声道。
可选地,视频卷积神经网络包括一组权重,并且对于每个说话者,使用所述视频卷积神经网络来处理所述说话者的面部的每帧面部嵌入以生成所述说话者的面部的视觉特征包括:对于每个说话者,使用所述视频卷积神经网络处理所述说话者的面部的每帧面部嵌入,以使用所述一组权重生成所述说话者的面部的视觉特征。
可选地,视频的音频声道还包括背景噪声,并且该方法还可以包括:从所述视频的视听嵌入确定所述背景噪声的背景噪声频谱图掩模。
从所述相应的掩模和对应的音频声道确定用于隔离所述视频中的说话者的语音的每个说话者的相应隔离语音信号可以包括:使用所述背景噪声的频谱图掩模掩蔽所述对应的音频声道的背景噪声。
可选地,所述一个或多个说话者中的每一个的相应的频谱图掩模是复数理想比率掩模,所述复数理想比率掩模具有分别估计的实分量和虚分量。
可选地,所述音频卷积神经网络是音频扩张卷积神经网络。
可选地,所述视频卷积神经网络是视频扩张卷积神经网络。
将会意识到,上述方法可以由一种系统来实现,该系统包括一个或多个计算机和一个或多个存储设备,该存储设备存储指令,当指令由一个或多个计算机执行时,使一个或多个计算机执行先前的方法的各个操作。
本说明书中描述的主题可以以特定实施方式实现,以实现以下优点中的一个或多个。通过结合说话者的音频特征和视觉特征,与仅音频的语音分离模型(即仅接收音频作为输入的模型)相比,系统的音频分离质量得到了提高。另外,所公开的系统能够比纯音频模型更有效地标记来自公共源的不同说话者的语音(即,当为说话者生成各自的隔离语音信号时,该系统自动向相应说话者的面部指配隔离的语音信号)。
该系统与说话者无关,这意味着该系统可以用一组说话者的训练示例进行训练,然后,在推断时,接收完全不同的说话者的输入视频,以为每个说话者生成隔离的语音信号。
该系统可以应用于各种视频,这些视频需要特定说话者的清晰音频,但无需假设每个说话者面部的可见性。例如,系统可以接收说话者的视频,该说话者用另一个在屏幕外的说话者(通过该说话者讲话)的伴随“配音”讲话。该系统可以生成视频中说话者的隔离语音信号,以及生成屏外说话者的隔离语音信号。该系统还可以鲁棒地隔离同一性别的多个说话者和具有相似发声的说话者的语音。
该系统还可以处理用于自动语音识别和视频转录的视频(即,在识别各个说话者的视频中创建用于语音的转录本)。该系统生成视频转录,该视频转录比传统方法更易于阅读,并且包含的错误更少。另外,如本说明书中所述,该系统可以通过首先隔离期望说话者的语音来改进ASR系统。
此外,系统在推断时会接收任意长度和任意数量的说话者的输入视频(带有或不带有附加背景噪声),以为说话者生成各个隔离语音信号。系统可以处理未考虑语音分离而录制的输入视频(例如,没有为每个说话者使用单独的麦克风而录制的视频,或者在事先不知道该视频将被处理用于自动语音分离的情况下而录制的视频)。该系统还可以对不完整的视频输入有效地执行(即,具有丢失的帧的视频或具有没有有价值的信息的帧的视频,例如,由于说话者的面部被头部运动遮挡或模糊)。结果,该系统由于适用于实际示例而更加鲁棒。
另外,可以通过改变所公开的主题的一种或多种实现方式生成训练示例的方式来训练该系统以处理表示各种不同语音任务的视频。例如,可以对系统进行训练,以从一个或多个说话者的视频训练示例中生成带有或不带有背景噪声的各个隔离的语音信号。
另外,可以训练该系统以识别输入视频中特定说话者的语音,并且比训练用于一般语音分离的模型更有效和更准确地生成隔离的语音信号。
本说明书的主题的一种或多种实施方式的细节在附图和以下描述中阐述。根据说明书、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1是视听语音分离系统的图。
图2是视听语音分离神经网络系统和用于训练视听语音分离神经网络系统的训练系统的图。
图3是用于从一个或多个说话者的输入视频确定每个说话者的隔离语音信号的示例过程的流程图。
图4是生成用于训练视听语音分离神经网络系统的训练示例的示例过程的流程图。
具体实施方式
自动语音分离是将一个或多个说话者的语音音频声道分离为每个相应说话者的隔离语音信号,以增强特定说话者的语音或掩蔽其他说话者的语音,从而仅使特定说话者被听到的问题。音频声道可以伴随有一个或多个各自说话者的相应视频。
音频声道可以是一个说话者的声音(称为“清晰”音频声道),也可以是一个或多个说话者的声音(称为“嘈杂”音频声道)。嘈杂的声道还可能包含其他背景噪声。背景噪声是指不是来自一个或多个说话者的语音的任何声音(例如,听众的掌声、音乐或周围环境的声音)。本说明书中的形容词“清晰”和“嘈杂”也用于描述频谱图(例如,清晰频谱图是清晰音频声道的频谱图,而嘈杂频谱图是嘈杂音频声道的频谱图)和视频(例如,清晰的视频是具有清晰声道的视频,而嘈杂的视频是具有嘈杂的音频声道的视频)。
该说明书通常描述了一种系统,该系统可以将一个或多个说话者的语音信号从音频声道和相应的视频数据中隔离或增强(即,该系统执行音频语音分离任务)。如何训练系统以及系统如何处理输入视频和音频声道以执行任务取决于如何定义音频语音分离任务。根据正在讲话的说话者数量以及输入音频声道中是否存在背景噪声(例如,1个说话者+噪声,2个清晰的说话者,或2个说话者+噪声)定义任务。
图1是视听语音分离系统100的图。系统100是被实现为在一个或多个位置处的一个或多个计算机上的计算机程序的系统的示例,在该系统中,可以实施以下描述的系统、组件和技术。
通常,系统100处理一个或多个说话者的输入视频,以根据每个说话者的联合视听特征为每个说话者生成隔离的语音信号。系统100在通过掩蔽神经网络处理联合视听特征之前,根据各个单独处理的视频和音频特征为每个说话者生成联合视听特征。
掩蔽神经网络为每个说话者生成频谱图掩模,系统100将其应用于音频声道的频谱图,从而为每个说话者生成相应的分离频谱图。系统100从分离的频谱图输出隔离的语音信号。
取决于系统100的音频语音分离任务是什么,训练系统通过“混合”清晰视频以获得反映音频语音分离任务的混合视频从而从清晰视频的数据集中生成视频和伴随声道的训练示例,并且使用训练示例来训练系统100。以下是关于系统100如何处理输入视频以及训练系统如何生成适合任务的训练示例的讨论。
系统100接收一个或多个说话者的视频105。通常,视频具有(i)包含一个或多个说话者的面部的帧流,以及(ii)视频中说话者讲话的伴随音频声道以及可能的背景噪声。在图1的示例中,视频105具有包含说话者A110A和说话者B110B的各自面部的帧流107,以及说话者110A-B的语音的音频声道115。
系统100使用音频流和视觉流来处理视频105。在视觉流中,系统100从视频105中各个说话者110A-B的帧流107中提取视觉特征120。视觉特征是说话者讲话时面部的特征。例如,视觉特征可以是说话者的嘴、眼和面颊的形状。
系统100将视频105重新采样到预定的每秒帧数(FPS)(例如25FPS)。系统100根据视频105是上采样还是下采样来去除或复制面部嵌入。在一些实施方式中,系统100执行额外的操作以对准和评估每帧面部嵌入的质量,如下所述。
在音频流中,系统100从视频105中的各个说话者110A-B的音频声道115中提取音频特征125。音频特征125是说话者的语音特征。系统100通过计算音频声道115的固定长度(例如3秒)段的短时傅立叶变换(STFT)来提取音频特征125,以生成音频声道115的频谱图。特别地,系统100计算音频声道的多个时频仓,每个时频仓表示音频声道的固定长度段之一的音频特征(例如,音频声道的频率)。时频仓由实数分量和复数分量表示。
频谱图是音频声道的频率的表示。具体地,频谱图在给定的时间表示音频声道的相应频率,其由当系统100计算音频声道的固定长度段的STFT时所获得的时频仓的分量来表示。
系统100处理音频声道115的频谱图,以生成音频声道115的音频嵌入。嵌入是数值的有序集合(例如,浮点矢量或量化的浮点值)。音频嵌入表示音频声道的音频特征,例如,音频嵌入存储从音频声道115提取的音频特征125。
系统100组合视频105的视觉特征120和音频特征125以获得视频105的联合视听嵌入130。联合视听嵌入既表示声道的音频特征又表示面部的视觉特征。在一些实施方式中,系统100通过将音频特征125与相应视频105的视觉特征120级联来生成视频105的联合视听嵌入130。系统100从处理后的视频105的视听嵌入130生成说话者A110A的隔离语音信号140A和说话者B110B的隔离语音信号140B。
图2是视听语音分离神经网络系统200和用于训练视听语音分离神经网络系统200的训练系统201的图。系统200是用于处理N个可见说话者215A-N的视频的系统100的示例性实施方式,其中N是固定整数。神经网络系统(例如,神经网络系统200)被配置为处理具有或不具有背景噪声的预定数目的说话者的视频。例如,神经网络系统200被配置为在没有背景噪声的情况下处理N个可见说话者的视频。可替代地,神经网络系统200可以被配置为处理具有背景噪声的N个可见说话者的视频。作为另一种选择,神经网络系统200可以被配置为处理M(M≠N)个可见说话者的视频。
训练系统201在训练示例上训练神经网络系统200。具体地,训练系统201通过在训练示例上训练神经网络系统200来配置神经网络系统200,该训练示例是具有或不具有背景噪声的预定数量的说话者的视频。训练示例中的说话者根据示例可能因人而异,也可能因语言而异。
在本说明书中的训练是指训练系统201响应于比较以下内容而修改神经网络系统200的权重:(i)通过将由系统200生成的相应预测的频谱图掩模应用于训练示例的音频声道的频谱图而获得的每个说话者的分离频谱图,以及(ii)训练示例中说话者各自的真值频谱图。
训练系统201根据神经网络系统200的期望配置,通过混合来自清晰视频数据集的清晰视频来生成神经网络系统200的训练示例。下面参考图4给出训练系统201如何生成训练示例并训练神经网络系统200的详细描述。
系统200接收视频205,视频205具有N个可视说话者215A-N讲话的相应输入音频声道210。对于输入视频205中的每个说话者215A-N,系统200为视频的每个帧生成相应的每帧面部嵌入220A-N。当去除每帧之间变化的不相关的特征(例如,说话者面部的照度)时,面部嵌入表示面部的视觉特征。可替代地,说话者的视觉特征可以由包含相应说话者的帧的原始像素来表示。
在一些实施方式中,系统200首先通过使用经训练的面部识别模型(例如,GoogleCloud Vision API)提取视觉特征,以对于视频205中的每个检测到的面部每帧提取一个面部嵌入。
系统200通过各自的视频卷积神经网络225A-N为每个说话者处理每帧面部嵌入220A-N(例如,系统200通过视频卷积神经网络A225A处理说话者A 215A的每帧面部嵌入220A)以生成说话者的视觉特征。
在一些实施方式中,视频卷积神经网络225A-N是相同的神经网络(即,视频卷积神经网络225A-N共享一组共享权重230)。在一些实施方式中,视频卷积神经网络225A-N是扩张视频卷积神经网络。
下表1中描述了一种示例性的扩张视频卷积神经网络架构:
表1
表1示出了层数(示出为“conv1”–“conv6”)以及每层过滤器的数量、每层过滤器的大小、过滤器的扩张因子以及每层的上下文向量的大小。应当理解,表1中描述的架构是示例性的,并且视频卷积神经网络225A-N可以被设计为具有任意数量的层,其中每个层具有:任意数量的过滤器、任何大小的过滤器、任何膨胀因子以及任何大小的上下文向量(包括没有上下文向量)。
系统200计算输入音频声道210上的STFT 240以生成频谱图245。系统200通过音频卷积神经网络250处理频谱图245以获得输入音频声道210的音频嵌入。在一些实施方式中,音频卷积神经网络250是扩张的音频卷积神经网络。
在下面的表2中描述了示例性的扩展音频卷积神经网络架构:
表2
如同上面表1中所述的示例性扩张视频卷积神经网络架构一样,可以理解的是,扩张音频卷积神经网络可以采用多种配置选项进行设计。
系统200将来自视频卷积神经网络225A-N的输出视觉特征与来自音频卷积神经网络250的输出音频嵌入进行组合(例如,级联)以生成联合视听嵌入255。在一些实施方式中,系统200通过上采样视觉流的输出以匹配频谱图采样率来补偿音频流和视觉流之间的采样率差异(例如,系统200在时间维度上针对每个视觉特征使用最近邻插值)。在一些实施方式中,联合视听嵌入255被表示为联合视听嵌入。
在一些实施方式中,系统200在通过各自的视觉和音频卷积神经网络进行任何处理之前,将每帧面部嵌入220A-N与频谱图245结合。在那些实施方式中,系统200使用一个或多个完全连接的层来处理每帧面部嵌入220A-N,以减小每个每帧面部嵌入的维数以在每个时间步上匹配频谱图维度。然后,系统200将所得的每帧面部嵌入作为第三频谱图流进行堆叠,并联合处理面部嵌入220A-N。
在一些实施方式中,在音频卷积神经网络和视频卷积神经网络中的每个卷积神经网络层之后,神经网络系统200执行批量归一化。
系统200包括掩蔽神经网络251。在一些实施方式中,掩蔽神经网络251包括长短期记忆(LSTM)神经网络260和一个或多个附加神经网络层265。在一些实施方式中,LSTM神经网络260是双向LSTM神经网络。在一些实施方式中,一个或多个附加的神经网络层265是完全连接的层。
激活函数(例如ReLU或S形函数(sigmoid))遵循神经网络系统200中的部分或全部神经网络层。在一些实施方式中,所述掩蔽神经网络251中的最后一层(即,输出频谱图掩模的层,如下所述)的激活函数是S形函数。
系统200通过掩蔽神经网络251处理联合视听嵌入255,以获得每个说话者215A-N的各自的频谱图掩模270A-N。在一些实施方式中,如果音频声道210包含背景噪声,则系统200另外生成背景噪声频谱图掩模。
频谱图掩模描述了说话者的清晰语音与音频声道的频谱图中的背景干扰(即噪声和其他说话者的语音)之间的时频关系。具体来说,说话者的频谱图掩模是一组值(用实数和(可选)复数分量表示),可以在每个时频仓将其应用于(例如,通过乘法)频谱图,以在该时频仓修改频谱图以仅表示说话者的语音频率(例如,通过掩蔽掉与其他说话者或背景噪声关联的时频仓的部分频率)。背景噪声掩膜是一组可以类似地应用于频谱图的值,但目的是掩蔽掉与背景噪声相关联的每个时频仓的部分频率(即,在将频谱图转换回音频信号后,应用于频谱图的背景噪声掩膜可消除频谱图中的背景噪声)。
例如,系统200将频谱图掩模270A应用于频谱图245(例如,通过乘法)以生成分离的频谱图A 280A(在图2中示为运算符275A)。分离的频谱图A 280A是仅听到说话者A 215A的音频声道的频谱图(即,用于说话者的分离的频谱图是隔离视频中说话者的语音的隔离的语音频谱图)。
在一些实施方式中,频谱图掩模270A-N是理想比率掩模。理想比率掩模定义了分离的频谱图的幅度和频谱图245的幅度之间的比率。在一些实施方式中,频谱图掩模270A-N是复数理想比率掩模。复数理想比率掩模是具有实部分量和虚部分量的理想比率掩模,它们在实数域中分别估算。在频谱图掩模270A-N是复数理想比率掩模的一些实施方式中,系统200将S形(sigmoidal)压缩应用于边界掩模值(bound mask value)。
系统200将分离的频谱图280A-N转换成各自隔离的输出波形290A-N。如果分离的频谱图掩模270A-N是理想比率掩模,则系统200通过在各自分离的频谱图和与频谱图245的原始相位掩模组合的频谱图245的点乘(point-wise multiplication)上计算逆短期傅里叶变换285A-N(ISTFT),来转换分离的频谱图280A-N。如果分离的频谱图掩模270A-N是复数理想比率掩模,则系统200通过在各自频谱图模板和频谱图245的复合乘法上计算ISTFT285A-N来转换分离的频谱图280A-N。
隔离的输出波形290A-N表示每个相应说话者的隔离的声音信号。
一旦生成,系统200可以使用隔离的输出波形290A-N来向用户回放输入视频205中的至少一个说话者的语音。作为另一示例,系统200可以使用隔离的输出波形290A-N以回放输入视频205而没有背景噪声。可以将隔离的输出波形290A-N标记和处理为音频转录系统中的输入(即,将音频声道210和隔离的输出波形290A-N输入到音频转录系统,以及音频转录系统生成音频声道210的转录作为输出)。音频转录可以另外用于为每个说话者生成用于输入视频205的字幕。
作为另一示例,系统200可以使用隔离的输出波形290A-N来去除在输入视频205中的对可见说话者配音的语音(例如,通过仅回放可见说话者的隔离的输出波形)。类似地,系统200可以使用隔离的输出波形290A-N以仅向用户回放不可见说话者的配音(例如,通过不回放可见说话者的语音的隔离的输出波形,而是播放其他隔离的输出波形)。
作为另一示例,系统200可以使用隔离的输出波形290A-N来增强输入视频205中的一个或多个说话者215A-N的语音(例如,通过增加超过其他说话者的一个或多个说话者215A-N的音量)。
图3是用于从一个或多个说话者的输入视频确定每个说话者的隔离语音信号的示例过程300的流程图。为了方便起见,将过程300描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的视听源语音分离神经网络系统(例如,图2的视听源语音分离神经网络系统200)可以执行过程300。在以上图2的描述中可以找到实现执行过程300的系统的另外细节。
系统从视频获得帧流中每个帧的每个说话者的面部的相应的每帧面部嵌入(步骤302)。如以上参考图2所描述的,系统可以接收带有伴随音频声道的视频,并为视频中的每个说话者生成每帧面部嵌入。
该系统对于每个说话者处理说话者面部的每帧面部嵌入以生成说话者面部的视觉特征(步骤304)。如以上参考图2所描述的,系统可以通过视频卷积神经网络来处理每帧面部嵌入,其中视频卷积神经网络为每个说话者生成各自的视觉特征。
系统获得视频的音频声道的频谱图(步骤306)。如以上参考图2所描述的,系统可以计算音频声道的STFT,以从计算出的时频仓生成音频声道的频谱图。
系统处理频谱图以生成用于音频声道的音频嵌入(步骤308)。如以上参考图2所描述的,系统可以通过音频卷积神经网络来处理音频声道的频谱图,其中音频卷积神经网络生成音频声道的音频嵌入。
该系统将一个或多个说话者的视觉特征与音频声道的音频嵌入相结合,以生成视频的视听嵌入(步骤310)。如以上参考图2所描述的,系统可以将由音频卷积神经网络生成的音频嵌入与由视频卷积神经网络生成的每个说话者的视觉特征相结合,以生成视频的视听嵌入。
系统从视频的视听嵌入中确定一个或多个说话者的各自的频谱图掩模(步骤312)。如以上参考图2所描述的,系统可以通过掩蔽神经网络处理视频的视听嵌入,其中掩蔽神经网络为一个或多个说话者生成各自的频谱图掩膜。
该系统从各个频谱图掩模和相应的音频声道确定每个说话者的相应的隔离语音信号(步骤314)。如以上参考图2所描述的,系统可以将每个说话者的相应的频谱图掩模应用于音频声道的频谱图。然后,系统可以将ISTFT应用于各个分离的频谱图,以为每个说话者生成隔离的输出波形。
如上所述,系统被配置为接收用于固定数量的说话者的数据并生成固定数量的频谱图掩模。在某些情况下,频谱图掩模包括每个说话者的相应掩模,而在其他情况下,频谱图掩模还包括用于背景噪声的背景噪声掩模。
根据本说明书适当地配置的训练系统(例如,图2的训练系统201),生成训练示例,并且在训练示例上训练神经网络系统以处理用于固定数量的说话者的数据。
训练示例是具有相应混合音频声道的混合视频,这些音频声道是从单个可见说话者讲话的清晰视频数据集中“混合”的。下面详细讨论训练系统如何生成用于训练神经网络系统的训练示例。
每个训练示例还与在生成混合视频时使用的每个清晰视频的一组相应的清晰频谱图相关联。例如,如果训练示例包含从两个清晰视频混合的混合视频,则该训练示例还与两个清晰频谱图相关联,其中一个频谱图来自每个清晰视频的音频声道。清晰的频谱图构成与使用系统为每个说话者生成的预测频谱图掩模生成的预测分离频谱图进行比较(即,真值)的基础。
该系统将清晰的频谱图与预测的分离频谱图进行比较,以计算神经网络系统的损失函数。系统使用损失函数来更新系统的权重(例如,通过反向传播,如下所述)。
训练示例通常几秒钟(例如,在3到10秒之间)长。训练示例反映了训练系统正在训练神经网络系统执行的任务。例如,如果训练神经网络系统来处理两个无背景噪声的说话者讲话的视频,则训练示例是两个无背景噪声的说话者讲话的视频。
神经网络系统分批接收训练示例(例如,每批大小为6个训练示例)。系统将训练示例重新采样为固定帧速率(例如25FPS)。系统将所有训练示例的音频重新采样到设定的频率(例如16KHz)。图4是生成用于训练视听语音分离神经网络系统的训练示例的示例过程400的流程图。为了方便起见,将过程400描述为由位于一个或多个位置的一个或多个计算机的训练系统执行。例如,根据本说明书适当地编程的训练系统(例如,图2的训练系统201)可以执行过程400。
对于一个或多个说话者中的每一个,训练系统获得说话者讲话的清晰视频和相应的语音的清晰音频声道(步骤402)。例如,训练系统从视频数据集中获得清晰的视频,其中每个视频都是单个可见的说话者讲话。另外,在一些实施方式中,视频数据集包括每视频帧的面部边界框,以帮助提取说话者的视觉特征。
在一些实施方式中,数据集中的视频是考虑到生成训练示例的目的而预先记录的(例如,没有背景噪音而记录的视频,说话者清晰可见,并且只有说话者在讲话)。
在一些实施方式中,从说话者讲话的原始视频的集合中生成用于数据集的清晰的视频,这些原始视频不是考虑到生成训练示例而记录的。原始视频的集合可以是免费提供的视频(例如,上传到互联网的视频)并且可以是任意长度。在一些实施方式中,原始视频的集合包括通常是单个说话者讲话的视频(例如,演讲视频或“操作说明(how-to)”教程视频)。用于生成用于训练示例的清晰视频的原始视频可能会因原始视频中记录的人物、语言和面部姿势而变化。
在一些实施方式中,训练系统自动从原始视频中获得清晰的视频,从而得到更大的训练集,其与具有用于生成训练示例的先验知识所记录的视频数据集相比,获得该训练集的成本更低。
在训练系统从原始视频集中获得各个说话者讲话的清晰视频的实施方式中,训练系统必须对原始视频执行预处理。对于每个原始视频,训练系统将原始视频分割为不重叠的视频段(例如,3秒段),并使用说话者跟踪方法(例如,Hoover等人的方法)来检测在视频片段中说话者主动讲话时可见他或她的面部。
对于视频段中的每个帧,训练系统都会分析并丢弃不适合训练的帧(例如,训练系统会丢弃说话者的面部模糊、照明不足或面部表情极端的帧)。如果训练系统丢弃视频段中超过一定百分比阈值(例如,15%)的帧,则训练系统丢弃整个视频段。
训练系统还丢弃具有干扰声音的视频段(即,训练系统丢弃视频片段,因此仅保留清晰的视频段)。训练系统通过估计每个视频段的信噪比(SNR),确定哪些视频段是清晰的视频段。当应用于视频段时,SNR是视频段中的语音与视频段中的其余音频(例如背景噪声或其他说话者)的对数比。
在一些实施方式中,训练系统使用SNR估计器估计每个视频段的SNR,并丢弃SNR低于设定阈值的视频段。SNR估计器使用预训练的纯音频语音去噪神经网络来接收具有音频声道的视频段作为输入,并生成视频段的估计SNR作为输出。
语音去噪神经网络是在说话者的清晰视频上训练的,这些视频在不同的SNR级别上增加了噪声。具体地,通过将给定的增强视频的语音去噪神经网络生成的预测SNR与增强视频的真值SNR进行比较,来训练语音去噪神经网络。
训练语音去噪神经网络还有助于确定SNR阈值(即,基于语音去噪网络估计不同SNR级别的输入视频的SNR的准确性来设置SNR阈值)。
训练系统将其余的清晰视频段存储为清晰视频。
训练系统生成混合视频和混合音频声道(步骤404)。关于生成具有混合音频声道的一个混合视频讨论了步骤404,但是可以理解的是,训练系统可以重复步骤404来生成训练所需的多个训练示例(例如,训练系统从清晰的视频数据集重复采样以获得一个或多个清晰的视频,用于生成混合视频和混合音频声道)。
通常,训练系统通过将多个清晰的视频组合(“混合”)在一起来生成混合视频。训练系统通过从每个清晰视频中提取在该清晰视频中的相应说话者的每帧面部嵌入,将多个清晰视频混合在一起。如上所述,神经网络系统以类似于神经网络系统如何处理具有多个可见说话者的输入视频的方式来处理混合视频。
具体地,在训练期间,神经网络系统通过经由相应的视觉流处理多个清晰的视频中的每个说话者的相应的每帧面部嵌入(例如,单独的视频卷积神经网络),来处理混合视频。可替代地,如下所述,神经网络系统通过经由单个视觉流处理多个清晰的视频中的每个说话者的相应的每帧面部嵌入来处理混合视频。混合的清晰视频的数量取决于语音分离任务,下面是示例。
类似地,训练系统通过组合(“混合”)多个清晰视频的音频声道来生成混合音频声道。取决于语音分离任务,神经网络系统被训练以执行,另外以噪声增强多个清晰声道中的混合音频声道。在一些实施方式中,通过从非语音背景噪声的数据集获得的噪声来增强清晰视频的声道(例如,来自Gemmeke等人的AudioSet,2017)。下面讨论训练系统如何混合音频的示例。
在一些实施方式中,训练系统混合视频和用于各个视频的音频声道,其中语音分离任务是一个说话者+噪声。训练系统获得说话者的清晰视频。说话者的清晰视频被视为混合视频,因为只有一个说话者。训练系统通过音频声道和乘以固定因子的附加噪声的线性组合,将清晰视频的音频声道混合在一起。在数学上,这表示为:Mix←CA+k*Noise,其中Mix是通过将音频声道CA与乘以系数k(例如,因子0.3)的某些噪声Noise相加而获得的混合声道。
在一些实施方式中,训练系统混合视频和各个视频的音频声道,其中语音分离任务是两个清晰的说话者。训练系统获得说话者说话的第一清晰视频和说话者说话的第二清晰视频,并混合第一和第二视频以生成两个说话者的混合视频。
训练系统通过添加第二个说话者的清晰视频的音频声道,来混合第一个说话者的清晰视频的音频声道,以生成混合的音频声道。在数学上,这表示为:对于混合音频声道Mix和清晰音频声道CA1和CA2,Mix←CA1+CA2
在语音分离任务是两个以上清晰的说话者(例如,n个清晰的说话者,n>2)的一些实施方式中,训练系统可以通过训练系统如何混合两个说话者的视频和音频声道的一般变体来混合视频和音频声道,如上所述。具体地,训练系统获得n个清晰的视频。训练系统通过组合n个清晰视频中的视频来生成混合视频。训练系统通过将N个清晰视频的音频声道加在一起来生成混合音频声道。在数学上,这表示为:对于混合声道Mix和说话者k的音频声道CAk,k≤n,Mix←CA1+CA2+…+CAn-1+CAn
在一些实施方式中,训练系统混合视频和各个视频的音频声道,其中语音分离任务为两个说话者+噪声。训练系统如2个清晰的说话者的任务所述一样生成混合视频。训练系统通过将两个清晰视频之一的音频声道与另一个清晰视频的音频声道相加,然后加上乘以固定因子的噪声来生成混合音频声道。从数学上,这表示为:对于混合音频声道Mix,清晰的音频声道C A1和C A2,添加的噪声Noise和因子k,Mix←CA1+CA2+k*Noise。
在一些实施方式中,语音分离任务是多于两个说话者+噪声,如上所述,训练系统可以通过将训练系统针对N个说话者混合视频和音频声道的方式一般化来混合视频和音频声道。训练系统向混合音频声道添加附加噪声(例如,如上所述,训练系统如示例所描述的那样添加噪声)。在数学上,这表示为:对于混合声道Mix,说话者m的音频声道CAm,1≤m≤n,添加的噪声Noise和因子k,Mix←CA1+CA2+…+CAm-1+CAn+k*Noise。
对于一个或多个说话者中的每一个,训练系统通过将混合视频与对应于说话者的语音的相应清晰音频声道的频谱图相关联来生成训练示例(步骤406)。例如,训练系统计算清晰视频的清晰音频声道的STFT,以获得每个相应音频声道的频谱图。
训练系统在训练示例上训练神经网络系统(步骤408)。具体地,训练系统根据神经网络系统预测隔离输出波形的性能,更新音频卷积神经网络、视频卷积神经网络和掩蔽神经网络的权重。
在训练示例中,神经网络系统在前向传递(forward pass)中为每个说话者生成相应的预测频谱图掩模。对于经训练以处理多个说话者的视频的神经网络系统,在一些实施方式中,该系统在单个视觉流中对每个说话者执行一个前向传递以生成相应的预测频谱图掩模。在一些实施方式中,如果训练示例的音频声道包含背景噪声,则神经网络系统还生成用于掩蔽音频声道中的背景噪声的预测的背景噪声频谱图掩模。
训练系统使用损失函数(例如,与训练示例关联的幂律压缩清晰频谱图和在训练示例中对于每个说话者从预测的频谱图掩模前向传递生成的相应的分离频谱图之间的平方误差)训练神经网络系统(即,通过反向传播更新神经网络系统的权重)。
在训练神经网络系统以处理多个说话者的视频的其他实施方式中,神经网络系统具有每个说话者的单独的视觉流,并在每个说话者的视觉流中执行一个前向传递以生成各自的预测频谱图掩模。
在训练期间,训练系统在一定数量的步骤后将学习率降低一个数量级(例如,每180万步降低学习率)。
本说明书在系统和计算机程序组件中使用术语“已配置”。对于一个或多个要配置为执行特定操作或动作的计算机的系统,意味着该系统已在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在操作中使系统执行这些操作或动作。对于将被配置为执行特定操作或动作的一个或多个计算机程序,意味着该一个或多个程序包括指令,该指令在由数据处理装置执行时使该装置执行该操作或动作。
本说明书中描述的主题和功能操作的实现可以在数字电子电路中、在有形体现的计算机软件或固件中、在计算机硬件中实施,包括本说明书中所公开的结构及其等同结构,或它们中的一个或多个的组合。本说明书中描述的主题的实现可以实现为一个或多个计算机程序,即,编码在有形的非暂时性存储介质上的计算机程序指令的一个或多个模块,由数据处理装置执行或控制数据处理装置的操作。该计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行访问存储设备或它们中的一个或多个的组合。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光或电磁信号,其被生成以对信息进行编码以将其传输到合适的接收器装置以通过数据处理装置来执行。
术语“数据处理装置”是指数据处理硬件,并且包括用于处理数据的所有类型的装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。该设备还可以是或进一步包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除硬件之外,该装置可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
可以以任何形式的编程语言(包括编译或解释语言或声明性或过程语言)编写计算机程序,也可以将其称为或描述为程序、软件、软件应用、应用、模块、软件模块、脚本或代码;它可以以任何形式进行部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境的其他单元进行部署。程序可以但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如存储在标记语言文档中的一个或多个脚本,专用于所讨论程序的单个文件中或多个协调文件中,例如,存储一个或多个模块,子程序或部分代码的文件。可以将计算机程序部署为在一台计算机上执行或可以将计算机程序部署为在位于一个站点上或分布在多个站点上并通过数据通信网络互连的多台计算机上执行。
在本说明书中,术语“数据库”被广泛地用来指代任何数据集合:数据不需要以任何特定方式进行结构化或根本不需要结构化,并且可以将数据存储在一个或多个位置的存储设备中。因此,例如,索引数据库可以包括多个数据集合,每个数据集合可以被不同地组织和访问。
类似地,在本说明书中,术语“引擎”广泛地用于指代被编程以执行一个或多个特定功能的基于软件的系统、子系统或过程。通常,引擎将被实现为安装在一个或多个位置的一台或多台计算机上的一个或多个软件模块或组件。在某些情况下,一台或多台计算机将专用于特定引擎。在其他情况下,可以在同一台计算机上安装并运行多个引擎。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能的一个或多个可编程计算机来执行。所述过程和逻辑流程还可通过专用逻辑电路(例如,FPGA或ASIC)或通过专用逻辑电路与一个或多个编程计算机的组合来执行。
适用于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或者基于任何其他类型的中央处理器。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储设备。中央处理单元和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁、磁光盘或光盘,或可操作地耦合以从上述大容量存储设备中接收数据或将数据传输到上述大容量存储设备,或两者都有。但是,计算机不必具有此类设备。此外,计算机可以被嵌入到另一个设备中,例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GPS)接收器或便携式存储设备,例如,通用串行总线(USB)闪存驱动器等。
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括例如半导体存储设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM光盘。
为了提供与用户的交互,可以在具有显示设备(例如CRT(阴极射线管)或LCD(液晶显示器)监视器)以及键盘和指示设备的计算机上实现本说明书中描述的主题的实现,该显示设备用于向用户以及显示信息,用户可以通过该指示设备(例如,鼠标或轨迹球)向计算机提供输入。其他种类的设备也可以用于提供与用户的交互。例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档以及从用户使用的设备接收文档来与用户进行交互。例如,通过响应从网络浏览器收到的请求,将网页发送到用户设备上的网络浏览器。而且,计算机可以通过将文本消息或其他形式的消息发送到个人设备(例如,运行消息收发应用程序的智能手机)并反过来从用户接收响应消息来与用户交互。
用于实现机器学习模型的数据处理装置还可以包括例如专用硬件加速器单元,用于处理机器学习训练或产出(即推理、工作负载)的公共部分和计算密集型部分。
可以使用机器学习框架(例如TensorFlow框架、Microsoft Cognitive Toolkit框架、Apache Singa框架或Apache MXNet框架)来实现和部署机器学习模型。
可以在包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器)或包括前端组件(例如,具有图形用户界面、网络浏览器或用户可通过其与本说明书中描述的主题的实现进行交互的应用的客户端计算机)或者一种或多种此类后端、中间件或前端组件的任何组合的计算系统中实现本说明书中描述的主题的实现。系统的组件可以通过数字数据通信的任何形式或介质(例如,通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如,因特网。
该计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器之间的关系是通过在各自计算机上运行并彼此具有客户端-服务器关系的计算机程序生成的。在一些实施方式中,服务器向用户设备发送数据,例如HTML页面,例如,以用于向与充当客户端的设备交互的用户显示数据并从该用户接收用户输入。可以在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。
尽管本说明书包含许多具体的实施细节,但是这些不应被解释为对任何发明的范围或可要求保护的范围的限制,而应被解释为对可能专用于特定发明的特定实现的特征的描述。在本说明书中在单独的实施方式的上下文中描述的某些特征也可以在单个实施方式中组合实施。相反,在单个实施方式的上下文中描述的各种特征也可以分别在多个实施方式中实施或以任何合适的子组合来实施。而且,尽管以上可能将特征描述为以某些组合形式起作用,甚至最初是这样要求保护的,但是在某些情况下,可以从组合中删除所要求保护的组合中的一个或多个特征,并且所要求保护的组合可以涉及子组合或子组合的变体。
类似地,尽管以特定顺序在附图中描绘了操作并在权利要求中对其进行了叙述,但这不应理解为要求以所示的特定顺序或以顺序次序执行这些操作,或者执行所有图示的操作,以取得期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,在上述实现中的各种系统模块和组件的分离不应被理解为在所有实现中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以集成在单个软件产品中或封装成多个软件产品。
已经描述了本主题的特定实施方式。其他实施方式处于所附权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或顺序次序来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。

Claims (23)

1.一种用于视听语音分离的方法,包括:
对于来自已经检测到一个或多个说话者的面部的视频的帧流中的每个帧,获得每个说话者的面部的相应的每帧面部嵌入;
对于每个说话者,使用视频卷积神经网络处理所述说话者的面部的每帧面部嵌入,以生成所述说话者的面部的视觉特征;
获得所述视频的音频声道的频谱图;
使用音频卷积神经网络处理所述频谱图,以生成所述音频声道的音频嵌入;
将所述一个或多个说话者的视觉特征与所述音频声道的音频嵌入相结合,以生成所述视频的视听嵌入,其中,所述视听嵌入表示所述音频声道的音频特征和所述一个或多个说话者的相应面部的视觉特征两者;
使用掩蔽神经网络处理所述视频的表示所述音频声道的音频特征和所述一个或多个说话者的相应面部的视觉特征两者的所述视听嵌入,以生成所述一个或多个说话者中的每一个的相应的频谱图掩模,其中,每个频谱图掩模描述相应的说话者的清晰语音与所述音频声道的频谱图中的背景干扰之间的时频关系;以及
从相应的频谱图掩模和对应的音频声道确定隔离所述视频中说话者的语音的每个说话者的相应的隔离语音频谱图,
其中,所述视频卷积神经网络、所述音频卷积神经网络和所述掩蔽神经网络被端对端地训练,使得所述视频卷积神经网络、所述音频卷积神经网络和所述掩蔽神经网络的网络参数在相同组的训练样本上被联合更新。
2.根据权利要求1所述的方法,进一步包括:
从所述一个或多个说话者中的特定一个说话者的相应的隔离语音频谱图生成所述特定说话者的隔离语音信号。
3.根据权利要求1所述的方法,其中,获得相应的每帧面部嵌入包括:
获得包括所述帧流的视频;
在所述帧流的每个帧中检测一个或多个说话者中的每一个的相应的面部;以及
对于每个帧,为每个检测到的面部生成相应的每帧面部嵌入。
4.根据权利要求1所述的方法,其中,将所述一个或多个说话者的视觉特征与所述音频声道的音频嵌入相结合以生成所述视频的视听嵌入包括:
将所述一个或多个说话者的视觉特征与所述音频声道的音频嵌入进行级联,以生成所述视频的视听嵌入。
5.根据权利要求1所述的方法,其中,所述掩蔽神经网络包括一个或多个长短期记忆LSTM层,其后是一个或多个其他神经网络层。
6.根据权利要求5所述的方法,其中,所述一个或多个其他神经网络层包括一个或多个完全连接的层。
7.根据权利要求5所述的方法,其中,所述一个或多个LSTM层是双向LSTM层。
8.根据权利要求1所述的方法,进一步包括:
对于所述一个或多个说话者中的每一个,使用自动语音识别(ASR)模型处理所述说话者的隔离语音频谱图或从所述说话者的隔离语音频谱图得出的数据,以生成所述视频中的说话者的语音的转录。
9.根据权利要求1所述的方法,其中,所述视频卷积神经网络包括一组权重,并且其中,对于每个说话者,使用所述视频卷积神经网络来处理所述说话者的面部的每帧面部嵌入以生成所述说话者的面部的视觉特征包括:
对于每个说话者,使用所述视频卷积神经网络处理所述说话者的面部的每帧面部嵌入,以使用所述一组权重生成所述说话者的面部的视觉特征。
10.根据权利要求1所述的方法,其中,所述视频的音频声道还包括背景噪声,所述方法进一步包括:
从所述视频的视听嵌入确定所述背景噪声的背景噪声频谱图掩模。
11.根据权利要求10所述的方法,其中,从相应的掩模和对应的音频声道确定用于隔离所述视频中的说话者的语音的每个说话者的相应的隔离语音频谱图包括:
利用所述背景噪声的频谱图掩模掩蔽所述对应的音频声道的背景噪声。
12.根据权利要求1所述的方法,其中,所述一个或多个说话者中的每一个的相应的频谱图掩模是复数理想比率掩模,所述复数理想比率掩模具有分别估计的实分量和虚分量。
13.根据权利要求1至12中的任一项所述的方法,其中,所述音频卷积神经网络是音频扩张卷积神经网络。
14.根据权利要求1至12中的任一项所述的方法,其中,所述视频卷积神经网络是视频扩张卷积神经网络。
15.一种训练视频卷积神经网络、音频卷积神经网络和掩蔽神经网络的方法,所述方法包括:
获得包括多个训练示例的训练数据,每个训练示例包括(i)相应的训练视频和(ii)所述相应的训练视频中的一个或多个说话者中的每一个的语音的真值隔离语音频谱图;以及
在所述训练数据上训练所述视频卷积神经网络、所述音频卷积神经网络和所述掩蔽神经网络,
其中,所述训练被端对端地进行,使得所述视频卷积神经网络、所述音频卷积神经网络和所述掩蔽神经网络的网络参数在相同组的训练样本上被联合更新,所述训练包括对于所述多个训练示例中的每个训练示例:
使用所述视频卷积神经网络生成相应的训练视频中的所述一个或多个说话者的相应面部的视觉特征;
使用所述音频卷积神经网络生成所述相应的训练视频的音频声道的音频嵌入;
将所述一个或多个说话者的视觉特征与所述音频声道的音频嵌入相结合,以生成相应的训练视频的视听嵌入,其中,所述视听嵌入表示所述音频声道的音频特征和所述一个或多个说话者的相应面部的视觉特征两者;
其中,所述掩蔽神经网络被配置为生成与所述训练示例的相应的训练视频相关联的音频声道中的每个说话者的相应的频谱图掩模,所述生成包括:
使用所述掩蔽神经网络处理所述相应的训练视频的表示所述音频声道的音频特征和所述一个或多个说话者的相应面部的视觉特征两者的所述视听嵌入,以生成所述音频声道中的所述一个或多个说话者中的每一个的相应的频谱图掩模,以及
其中,每个频谱图掩模描述相应的说话者的清晰语音与所述音频声道的频谱图中的背景干扰之间的时频关系。
16.根据权利要求15所述的方法,其中,获得所述训练数据包括对于所述训练示例中的每一个:
对于所述一个或多个说话者中的每一个,从清晰视频中获得所述说话者讲话的清晰视频和所述说话者的语音的相应清晰音频声道;
至少从所述一个或多个说话者的清晰视频和相应清晰音频声道中生成混合视频和混合音频声道;以及
通过对于所述一个或多个说话者中的每一个将所述混合视频与对应于所述说话者的语音的相应清晰音频声道的频谱图相关联,来生成所述训练示例。
17.根据权利要求16所述的方法,其中,每个训练示例包括:(i)单个说话者的相应的训练视频;以及(ii)在相应的训练视频中的单个说话者的语音的真值隔离语音频谱图,并且其中,生成所述混合视频和所述混合音频声道包括用噪声增强所述单个说话者的语音的清晰音频声道。
18.根据权利要求16所述的方法,其中,每个训练示例包括:(i)多个说话者的相应的训练视频;以及(ii)所述相应的训练视频中的所述多个说话者中的每一个的语音的相应的真值隔离语音频谱图;并且
其中,生成具有所述混合音频声道的混合视频包括:混合所述多个说话者的训练视频,以及混合所述多个说话者的相应的清晰的音频声道。
19.根据权利要求18所述的方法,其中,生成所述混合视频和所述混合音频声道包括:用噪声来增强所述多个说话者的语音的混合音频声道。
20.根据权利要求15至19中的任一项所述的方法,其中,所述音频卷积神经网络是音频扩张卷积神经网络。
21.根据权利要求15至19中的任一项所述的方法,其中,所述视频卷积神经网络是视频扩张卷积神经网络。
22.一种用于视听语音分离的系统,包括一个或多个计算机和一个或多个存储设备,所述一个或多个存储设备存储指令,所述指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1-21中的任一项所述的方法的相应操作。
23.一个或多个计算机可读存储介质,所述一个或多个计算机可读存储介质存储指令,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至21中的任一项所述的方法的相应操作。
CN201880034995.XA 2017-11-22 2018-11-21 视听语音分离 Active CN110709924B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762590190P 2017-11-22 2017-11-22
US62/590,190 2017-11-22
PCT/US2018/062330 WO2019104229A1 (en) 2017-11-22 2018-11-21 Audio-visual speech separation

Publications (2)

Publication Number Publication Date
CN110709924A CN110709924A (zh) 2020-01-17
CN110709924B true CN110709924B (zh) 2024-01-09

Family

ID=64661522

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880034995.XA Active CN110709924B (zh) 2017-11-22 2018-11-21 视听语音分离

Country Status (4)

Country Link
US (2) US11456005B2 (zh)
EP (1) EP3607547B1 (zh)
CN (1) CN110709924B (zh)
WO (1) WO2019104229A1 (zh)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
JP2016508007A (ja) 2013-02-07 2016-03-10 アップル インコーポレイテッド デジタルアシスタントのためのボイストリガ
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
WO2020174356A1 (en) * 2019-02-25 2020-09-03 Technologies Of Voice Interface Ltd Speech interpretation device and system
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11340863B2 (en) * 2019-03-29 2022-05-24 Tata Consultancy Services Limited Systems and methods for muting audio information in multimedia files and retrieval thereof
US11488024B1 (en) 2019-05-29 2022-11-01 Ball Aerospace & Technologies Corp. Methods and systems for implementing deep reinforcement module networks for autonomous systems control
US11303348B1 (en) * 2019-05-29 2022-04-12 Ball Aerospace & Technologies Corp. Systems and methods for enhancing communication network performance using vector based deep learning
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
KR102190986B1 (ko) * 2019-07-03 2020-12-15 주식회사 마인즈랩 개별 화자 별 음성 생성 방법
BR112022001300A2 (pt) * 2019-08-02 2022-03-22 Nec Corp Dispositivo de processamento de fala, método de processamento de fala, e mídia de gravação
US10820131B1 (en) * 2019-10-02 2020-10-27 Turku University of Applied Sciences Ltd Method and system for creating binaural immersive audio for an audiovisual content
CN113035225B (zh) * 2019-12-09 2023-02-28 中国科学院自动化研究所 视觉声纹辅助的语音分离方法及装置
US11348253B2 (en) 2020-01-09 2022-05-31 Alibaba Group Holding Limited Single-channel and multi-channel source separation enhanced by lip motion
US11039043B1 (en) * 2020-01-16 2021-06-15 International Business Machines Corporation Generating synchronized sound from videos
CN113994427A (zh) * 2020-02-07 2022-01-28 谷歌有限责任公司 通过预测以讲话者表示为条件的隔离音频信号在音频记录中按来源分离语音
US11748057B2 (en) * 2020-02-26 2023-09-05 Samsung Electronics Co., Ltd. System and method for personalization in intelligent multi-modal personal assistants
CN111326143B (zh) * 2020-02-28 2022-09-06 科大讯飞股份有限公司 语音处理方法、装置、设备及存储介质
US11398216B2 (en) 2020-03-11 2022-07-26 Nuance Communication, Inc. Ambient cooperative intelligence system and method
US11790900B2 (en) 2020-04-06 2023-10-17 Hi Auto LTD. System and method for audio-visual multi-speaker speech separation with location-based selection
WO2021206679A1 (en) * 2020-04-06 2021-10-14 Hi Auto LTD. Audio-visual multi-speacer speech separation
CN113516990A (zh) * 2020-04-10 2021-10-19 华为技术有限公司 一种语音增强方法、训练神经网络的方法以及相关设备
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
CN111583954B (zh) * 2020-05-12 2021-03-30 中国人民解放军国防科技大学 一种说话人无关单通道语音分离方法
CN111627458B (zh) * 2020-05-27 2023-11-17 北京声智科技有限公司 一种声源分离方法及设备
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
CN114333896A (zh) * 2020-09-25 2022-04-12 华为技术有限公司 语音分离方法、电子设备、芯片及计算机可读存储介质
US20230267942A1 (en) 2020-10-01 2023-08-24 Google Llc Audio-visual hearing aid
CN112420073B (zh) * 2020-10-12 2024-04-16 北京百度网讯科技有限公司 语音信号处理方法、装置、电子设备和存储介质
WO2022082607A1 (en) * 2020-10-22 2022-04-28 Harman International Industries, Incorporated Vocal track removal by convolutional neural network embedded voice finger printing on standard arm embedded platform
KR20220055296A (ko) 2020-10-26 2022-05-03 삼성전자주식회사 전자 장치 및 그 제어 방법
CN112712819B (zh) * 2020-12-23 2022-07-26 电子科技大学 视觉辅助跨模态音频信号分离方法
CN112289334B (zh) * 2020-12-29 2021-04-02 北京达佳互联信息技术有限公司 一种混响消除方法及装置
CN113035227B (zh) * 2021-03-12 2022-02-11 山东大学 一种多模态语音分离方法及系统
CN113449590B (zh) * 2021-05-14 2022-10-28 网易(杭州)网络有限公司 说话视频生成方法及装置
CN113593601A (zh) * 2021-07-27 2021-11-02 哈尔滨理工大学 基于深度学习的视听多模态语音分离方法
CN115938385A (zh) * 2021-08-17 2023-04-07 中移(苏州)软件技术有限公司 一种语音分离方法、装置及存储介质
CN114464198B (zh) * 2021-11-30 2023-06-06 中国人民解放军战略支援部队信息工程大学 一种可视化人声分离系统、方法以及装置
CN114171053B (zh) * 2021-12-20 2024-04-05 Oppo广东移动通信有限公司 一种神经网络的训练方法、音频分离方法、装置及设备
CN114299952B (zh) * 2021-12-29 2022-08-19 湖北微模式科技发展有限公司 结合多种运动分析的话者角色区分方法及系统
CN114598914A (zh) * 2022-02-17 2022-06-07 厦门快商通科技股份有限公司 一种基于视频的人声分离方法、终端设备及存储介质
CN116343809B (zh) * 2022-11-18 2024-04-02 上海玄戒技术有限公司 视频语音增强的方法及装置、电子设备和存储介质
CN116129931B (zh) * 2023-04-14 2023-06-30 中国海洋大学 一种视听结合的语音分离模型搭建方法及语音分离方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107210040A (zh) * 2015-02-11 2017-09-26 三星电子株式会社 语音功能的操作方法和支持该方法的电子设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5621858A (en) * 1992-05-26 1997-04-15 Ricoh Corporation Neural network acoustic and visual speech recognition system training method and apparatus
US6772119B2 (en) * 2002-12-10 2004-08-03 International Business Machines Corporation Computationally efficient method and apparatus for speaker recognition
US7133535B2 (en) * 2002-12-21 2006-11-07 Microsoft Corp. System and method for real time lip synchronization
US20040260550A1 (en) * 2003-06-20 2004-12-23 Burges Chris J.C. Audio processing system and method for classifying speakers in audio data
US20050228673A1 (en) * 2004-03-30 2005-10-13 Nefian Ara V Techniques for separating and evaluating audio and video source data
US7912232B2 (en) * 2005-09-30 2011-03-22 Aaron Master Method and apparatus for removing or isolating voice or instruments on stereo recordings
US8543402B1 (en) 2010-04-30 2013-09-24 The Intellisis Corporation Speaker segmentation in noisy conversational speech
US9390712B2 (en) * 2014-03-24 2016-07-12 Microsoft Technology Licensing, Llc. Mixed speech recognition
US9697833B2 (en) 2015-08-25 2017-07-04 Nuance Communications, Inc. Audio-visual speech recognition with scattering operators
EP3171362B1 (en) * 2015-11-19 2019-08-28 Harman Becker Automotive Systems GmbH Bass enhancement and separation of an audio signal into a harmonic and transient signal component
US9818431B2 (en) * 2015-12-21 2017-11-14 Microsoft Technoloogy Licensing, LLC Multi-speaker speech separation
US20180082679A1 (en) * 2016-09-18 2018-03-22 Newvoicemedia, Ltd. Optimal human-machine conversations using emotion-enhanced natural speech using hierarchical neural networks and reinforcement learning
US10460727B2 (en) * 2017-03-03 2019-10-29 Microsoft Technology Licensing, Llc Multi-talker speech recognizer
EP3649642A1 (en) * 2017-07-03 2020-05-13 Yissum Research Development Company of The Hebrew University of Jerusalem Ltd. Method and system for enhancing a speech signal of a human speaker in a video using visual information

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107210040A (zh) * 2015-02-11 2017-09-26 三星电子株式会社 语音功能的操作方法和支持该方法的电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于深度学习语音分离技术的研究现状与进展;刘文举等;《自动化学报》;20160411;第42卷(第06期);全文 *

Also Published As

Publication number Publication date
WO2019104229A1 (en) 2019-05-31
US11894014B2 (en) 2024-02-06
EP3607547A1 (en) 2020-02-12
US20200335121A1 (en) 2020-10-22
US20230122905A1 (en) 2023-04-20
CN110709924A (zh) 2020-01-17
EP3607547B1 (en) 2021-06-16
US11456005B2 (en) 2022-09-27

Similar Documents

Publication Publication Date Title
CN110709924B (zh) 视听语音分离
US10777215B2 (en) Method and system for enhancing a speech signal of a human speaker in a video using visual information
Gogate et al. CochleaNet: A robust language-independent audio-visual model for real-time speech enhancement
Afouras et al. The conversation: Deep audio-visual speech enhancement
WO2021143326A1 (zh) 语音识别方法、装置、设备和存储介质
Adeel et al. Lip-reading driven deep learning approach for speech enhancement
US11842722B2 (en) Speech synthesis method and system
Zmolikova et al. Neural target speech extraction: An overview
WO2020039571A1 (ja) 音声分離装置、音声分離方法、音声分離プログラム、及び音声分離システム
US20210272573A1 (en) System for end-to-end speech separation using squeeze and excitation dilated convolutional neural networks
CN113205793B (zh) 音频生成方法、装置、存储介质及电子设备
US20230298593A1 (en) Method and apparatus for real-time sound enhancement
CN114203163A (zh) 音频信号处理方法及装置
Hegde et al. Visual speech enhancement without a real visual stream
CN111883105B (zh) 用于视频场景的上下文信息预测模型的训练方法及系统
Yoshida et al. Audio-visual voice activity detection based on an utterance state transition model
Aarabi et al. The fusion of visual lip movements and mixed speech signals for robust speech separation
Fahad hossain et al. A continuous word segmentation of Bengali noisy speech
US20230197098A1 (en) System and method for removing noise and echo for multi-party video conference or video education
US20230230610A1 (en) Approaches to generating studio-quality recordings through manipulation of noisy audio
US20230267942A1 (en) Audio-visual hearing aid
CN117121099A (zh) 自适应视觉语音识别
Huang et al. Towards Modeling Auditory Restoration in Noisy Environments
CN117795597A (zh) 用于自动语音辨识的联合声学回声消除、语音增强和话音分离
CN117475994A (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