CN114495974B - 音频信号处理方法 - Google Patents

音频信号处理方法 Download PDF

Info

Publication number
CN114495974B
CN114495974B CN202210153017.5A CN202210153017A CN114495974B CN 114495974 B CN114495974 B CN 114495974B CN 202210153017 A CN202210153017 A CN 202210153017A CN 114495974 B CN114495974 B CN 114495974B
Authority
CN
China
Prior art keywords
processed
audio data
signal
separation
audio
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
CN202210153017.5A
Other languages
English (en)
Other versions
CN114495974A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210153017.5A priority Critical patent/CN114495974B/zh
Publication of CN114495974A publication Critical patent/CN114495974A/zh
Application granted granted Critical
Publication of CN114495974B publication Critical patent/CN114495974B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech 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/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0272Voice signal separating
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

公开了一种音频信号处理方法、一种音频信号处理装置、设备和计算机可读存储介质。本公开的各项实施例提供了一种盲源分离算法与神经网络联合相结合的自适应语音分离技术,不仅能够克服传统盲源分离算法在高混响情况下语音分离的结果不准确的问题,还能够克服传统的神经网络的运算复杂度过高和泛化能力差的问题。本公开的实施例能轻松地应用到任何一个两麦或多麦的车载/会议语音系统,扩展了语音分离技术的应用场景,实现了实时的语音分离效果。

Description

音频信号处理方法
技术领域
本公开涉及人工智能服务领域及车联网领域,更具体地涉及一种音频信号处理方法、一种音频信号处理装置、设备和计算机可读存储介质。
背景技术
目前已经提出了语音分离技术,以从采集到的音频数据中分离出主说话人的语音,并尽量降低其他人的说话声的干扰、噪音的干扰以及混响的干扰。目前语音分离技术主要有两个发展方向:基于盲源分离算法的语音分离方案和基于神经网络网络的语音分离方案。
传统的盲源分离算法在高混响和低语音混合率的情况下,会导致在分离过程中无法形成一个精确的分离矩阵,导致语音分离的性能受制于房间混响情况,并在高混响的情况下性能显著降低。此外,基于神经网络的语音分离方案,因为其本身的鲁棒性不足,导致在多种场景下的泛化能力较差,并且端到端的语音分离神经网络的模型算法复杂度通常较高,无法在一些低算力的平台上实时运行。因此,需要对现有的语音分离技术进行进一步的改进。
发明内容
本公开的实施例提供了一种音频信号处理方法、一种音频信号处理装置、设备和计算机可读存储介质。
本公开的实施例提供了一种音频信号处理方法,包括:基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集合和第二待处理音频数据集合;对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号;基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定针对所述第一待处理音频数据集的第二估计信号,以及基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。
例如,所述对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号还包括:获取分离参数的初始值,并基于所述分离参数的初始值以及所述第一待处理音频数据集,通过多次迭代更新所述分离参数的值,以及基于更新后的分离参数的值,确定针对所述第一待处理音频数据集的第一估计信号,其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
例如,所述基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理还包括:基于针对所述第一待处理音频数据集的第二估计信号,确定分离参数的初始值;基于所述分离参数的初始值以及所述第二待处理音频数据集,通过多次迭代更新所述分离参数的值,以及基于更新后的分离参数的值,确定针对所述第二待处理音频数据集的第一估计信号,其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
例如,所述基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定针对所述第一待处理音频数据集的第二估计信号还包括:基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,利用神经网络来确定针对所述第一待处理音频数据集的第二估计信号,其中,所述神经网络用于提供各个声源对应的待处理音频信号之间的差异信息或关联信息。
例如,所述神经网络的训练样本包括混合信号样本、经预分离处理后的混合信号样本以及所述混合信号对应的源信号,所述神经网络的训练包括:基于所述混合信号以及所述经预分离处理后的混合信号样本,利用所述神经网络确定所述混合信号对应的估计信号;对所述神经网络中的各个神经元进行迭代更新,以所述混合信号对应的估计信号逼近所述混合信号对应的源信号。
例如,所述方法还包括:在对第二待处理音频数据集进行预分离处理后,确定所述第二待处理音频数据集的第一估计信号;基于所述第二待处理音频数据集和所述针对第二待处理音频数据集的第一估计信号,确定针对所述第二待处理音频数据集的第二估计信号。
例如,所述方法还包括:基于所述针对第一待处理音频数据集的第二估计信号,确定针对第一待处理音频数据集的目标信号片段,或者基于所述针对第一待处理音频数据集的第二估计信号,确定针对第二待处理音频数据集的目标信号片段;基于所述针对第一待处理音频数据集的目标信号片段或者所述针对第二待处理音频数据集的目标信号片段,确定目标信号;其中,所述目标信号包括至少一个目标信号分量,每个目标信号分量对应于一个声源。
例如,每个声源对应的待处理音频信号为混合信号;或者每个声源对应的待处理音频信号为混合信号经回声消除处理或去混响处理后得到的信号;其中,所述混合信号为每个声源对应的源信号和干扰信号的线性或非线性叠加。
例如,所述第一待处理音频集和第二待处理音频数据集合为所述待处理音频信号的不同音频帧集合。
例如,所述基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集合和第二待处理音频数据集合还包括:获取来自至少一个声源的待处理音频信号,将所述待处理音频信号划分为多个待处理音频数据集合,所述多个待处理音频数据集合包括第一待处理音频数据集合和第二待处理音频数据集合,以及对第一待处理音频数据集合或第二待处理音频数据集合中的待处理音频数据从时域形式转换为时频域形式。
本公开的实施例提供了一种音频信号处理装置,包括:获取模块,被配置为基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集合和第二待处理音频数据集合;预分离模块,被配置为对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号;神经网络模块,被配置为基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定针对所述第一待处理音频数据集的第二估计信号,以及所述预分离模块还被配置为基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。
本公开的实施例提供了一种电子设备,包括:处理器;以及存储器,其中,所述存储器中存储有计算机可执行程序,当由所述处理器执行所述计算机可执行程序时,执行上述的方法。
本公开的实施例提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现上述方法。
根据本公开的另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个方面或者上述各个方面的各种可选实现方式中提供的方法。
本公开的实施例提供了一种盲源分离算法与神经网络联合的自适应语音分离系统,不仅能够克服传统盲源分离算法在高混响情况下语音分离的结果不准确的问题,还能够克服传统的神经网络的运算复杂度过高和泛化能力差的问题。本公开的实施例能轻松地应用到任何一个两麦或多麦的车载/会议语音系统,扩展了语音分离技术的应用场景,实现了实时的语音分离效果。
例如,在本公开的一些示例实施例中,通过盲源分离算法对采集的语音数据进行了预分离处理,并将预分离的结果输入至一个小型的神经网络,该神经网络输出结果再反作用于该盲源分离算法的运算,不仅达到联合优化的效果,还能显著地提升语音分离的性能。
例如,在本公开的一些示例实施例中,上述的小型神经网络可以以预分离后的语音和混合语音作为训练样本,以学习混合语音和预分离语音在语谱图上的差异性与关联性,从而降低语音分离任务的难度,以实现使用一个小算力的神经网络就能很好完成的分离任务。此外,示例神经网络还可以进一步地以一些额外的特征(例如,梅尔普特征等)作为输入,以进一步提高神经网络的处理语音数据的准确性。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的描述中所需要使用的附图作简单的介绍。下面描述中的附图仅仅是本公开的示例性实施例。
图1是示出根据本公开实施例的应用场景的示例示意图。
图2是示出根据本公开实施例的应用场景的又一示例示意图。
图3是示出根据本公开实施例的音频信号处理方法的流程图。
图4是示出根据本公开实施例的示例装置的示意图。
图5是示出根据本公开实施例的音频信号处理方法的又一示意流程图。
图6是示出根据本公开实施例的示例神经网络的示意图。
图7是示出根据本公开实施例的又一示例神经网络的示意图。
图8示出了两个声源的源信号在无干扰的情况下的语谱图。
图9是根据本公开实施例的对一段两声源混合语音信号处理前的语谱图。
图10是根据本公开实施例的对一段两声源混合语音信号处理后的语谱图。
图11是采用其他技术对一段两声源混合语音信号处理后的语谱图。
图12是采用其他技术一段两声源混合语音信号处理后的语谱图。
图13是采用根据本公开实施例进行实验的实验效果与采用其他技术进行实验的实验效果的对比数据图。
图14是示出根据本公开实施例的电子设备的结构图。
具体实施方式
为了使得本公开的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
在本说明书和附图中,具有基本上相同或相似步骤和元素用相同或相似的附图标记来表示,且对这些步骤和元素的重复描述将被省略。同时,在本公开的描述中,术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种示例的范围的情况下,第一数据可以被称为第二数据,并且类似地,第二数据可以被称为第一数据。第一数据和第二数据都可以是数据,并且在某些情况下,可以是单独且不同的数据。本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上,例如,多个音频帧是指两个或两个以上的音频帧。
应理解,在本文中对各种示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。
还应理解,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。还应理解,根据(基于)A确定B并不意味着仅仅根据(基于)A确定B,还可以根据(基于)A和/或其它信息来确定B。
还应理解,术语“包括”(也称“includes”、“including”、“Comprises”和/或“Comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
为便于描述本公开,以下介绍与本公开有关的概念。
语音分离(Speech Separation)技术:通常情况下采集的音频信号中除了主说话人之外,还有其他人说话声的干扰和噪音干扰。语音分离技术尝试解决如何从这些干扰中分离出主说话人的语音。根据干扰声源的不同,语音分离任务可以分为三类:①语音增强(Speech Enhancement),其尝试降低噪声的干扰;②多说话人分离(Speaker Separation),其尝试降低其他说话人的干扰;③解混响(De-reverberation),其尝试降低目标说话人自己声音的反射波带来的干扰。
盲源分离(Blind Source Separation)技术:盲源分离技术是研究在未知系统的传递函数、源信号的混合系数及其概率分布的情况下,仅利用源信号之间相互独立这一微弱已知条件,从一组传感器测量所得的混合信号中分离出独立源信号的一种技术。该盲源分离技术可以实现为盲信号分离系统,该系统可以模拟人类的听觉系统,用来识别和增强来自特定声源的声音。盲信号分离系统可以从多个观测到的混合信号中分析出声源发出的源信号。通常观测到的混合信号来自多个传感器的输出,并且传感器的输出信号独立性(线性不相关)。也即是,通过多个传感器采集得到多个观测信号,该多个观测信号混合得到该混合信号。盲信号意味着:1)原始信号未知;2)对于信号混合的方法未知。
独立向量分析(Independent Vector Analysis,IVA)是一种有效的盲源分离方法,它联合所有频点、最小化输出信号之间的统计相关性,避免了独立成分分析(Independent Component Analysis,ICA)方法中的排列模糊问题。
短时傅里叶变换(Short-Time Fourier Transform,STFT):短时距傅里叶变换是傅里叶变换的一种变形,也称作窗化的傅里叶变换或基于时间的傅里叶变换,用于决定随时间变化的信号局部部分的正弦频率和相位。实际上,计算短时距傅里叶变换(STFT)的过程是将长时间信号分成数个较短的等长信号,然后再分别计算每个较短段的傅里叶变换。通常拿来描绘频域与时域上的变化,为时频分析中其中一个重要的工具。
短时傅里叶逆变换(Inverse Short Time Fourier Transform,ISTFT):短时傅里叶变换的逆过程又称为短时傅里叶逆变换。
以下,参照图1和图2描述根据本公开的一些实施例的示例应用场景。图1示出了根据本公开的一些实施例的应用场景100的示意图,其中示意性地示出了服务器110和多个终端120。终端120以及服务器110可以通过有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。
例如,根据本公开的一些实施例的方法可以全部或部分地搭载在服务器110上以对采集到的音频数据进行处理,例如采用如上所述的语音分离技术来对音频数据进行处理,和/或训练能够实现语音分离效果的神经网络。这里的服务器110可以是独立的服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content Delivery Network)、定位服务以及大数据和人工智能平台等基础云计算服务的云服务器,本公开实施例对此不作具体限制。
例如,根据本公开的一些实施例的方法还可以全部或部分地搭载在终端120上以采集音频数据和/或对音频数据进行后续的语音分离处理。多个终端120中的每个终端可以是诸如台式计算机等的固定终端,诸如智能手机、平板电脑、便携式计算机、手持设备、个人数字助理、智能可穿戴设备、车载终端等具有网络功能的移动终端,或者它们的任意组合,本公开实施例对此不作具体限制。
作为一个示例,服务器110可以为终端120提供各种人工智能云服务,例如,提供语音处理相关的云服务。其中,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
例如,人工智能云服务,一般也被称作是AIaaS(AI as a Service,中文为“AI即服务”)。这是目前主流的一种人工智能平台的服务方式,具体来说AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个AI主题商城:所有的开发者都可以通过应用程序接口(API,Application ProgrammingInterface)的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的AI框架和AI基础设施来部署和运维自已专属的云人工智能服务。
上述的人工智能技术涉及领域广泛,既有硬件层面的技术也有软件层面的技术。其中,人工智能软件技术主要包括计算机视觉技术、自然语言处理和机器学习/深度学习等方向。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。例如,对于本公开的声学模型而言,其能够以类似于人类阅读并理解多种不同语种的语言的方式,对该语种的语言进行翻译。人工智能通过研究各种智能机器的设计原理与实现方法,使本公开的各个实施例具有理解来自不同声源(语音源)的语音的能力,并能够实现对语音的分离。
可选地,本公开采用了自然语言处理(Nature Language processing,NLP)技术。自然语言处理技术是计算机科学领域与人工智能领域中的一个重要方向,其能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。由此,基于自然语言处理技术,本公开的各个实施例可以以类似人脑理解来自不同声源的语音的能力,并能够分析分离后的语音与声源之间的对应关系。
可选地,本公开的实施例采用的自然语言处理技术还可以是基于机器学习(Machine Learning,ML)和深度学习的。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。自然语言处理技术利用机器学习研究计算机怎样模拟或实现人类的学习语言的行为,通过分析已有的、已分类的文本数据来获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。机器训练是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。游戏人工智能通过研究怎样模拟或实现真人的训练行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器训练和深度训练通常包括人工神经网络、置信网络、强化训练、迁移训练、归纳训练、式教训练等技术。本公开不对机器训练和深度训练涉及的技术进行具体限制。
下文中的各个网络都可以是神经网络,尤其是基于人工智能的神经网络。通常,基于人工智能的神经网络被实现为无环图,其中神经元布置在不同的层中。通常,神经网络模型包括输入层和输出层,输入层和输出层通过至少一个隐藏层分开。隐藏层将由输入层接收到的输入变换为对在输出层中生成输出有用的表示。网络节点经由边全连接至相邻层中的节点,并且每个层内的节点之间不存在边。在神经网络的输入层的节点处接收的数据经由隐藏层、激活层、池化层、卷积层等中的任意一项被传播至输出层的节点。神经网络模型的输入输出可以采用各种形式,本公开对此不作限制。
作为一个示例,服务器110可以作为训练语音分离相关的神经网络的执行主体。可以理解的是,本公开的一些实施例中对于神经网络的训练也可以是在终端120上执行的,还可以是由终端和服务器共同执行的,本公开对此不进行限制。此外,可以理解的是,应用本公开的一些实施例的神经网络来进行推理的装置既可以是终端,也可以是服务器,还可以是由终端和服务器组成的系统。
作为一个示例,终端120可以利用其音频电路来捕获所述包括多个录音音频帧的音频信号。音频电路可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器进行后续的语音分离处理,或者输入至射频电路以实现实时的语音分享。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端120的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。虽然麦克风采集的语音数据可能是流式的,然而为了音频算法处理/传输的方便,可以设定捕获的2.5ms至60ms为单位的数据量为一个(语音)音频帧。这个时间被称之为“采样时间”。本公开并不对采样时间进行限制,只要其能够满足终端120的编解码器和具体应用的需求即可。
本公开的各个实施例可以作为一种前端语音增强技术,以增强期望信号、抑制干扰,能够应用到多种系统中,如智能家居系统、视频会议系统、车载系统以及语音识别系统等。例如,在图2所示的示例场景中,其示例性地展示了可与语音识别系统耦合的一种示例前端信号处理模块。
如图2所示,存在多个麦克风采集来自不同声源的语音信号。可选地,目标语音和干扰语音都可能被图示的一个或多个麦克风接收。也即图2中所示的每个麦克风都可能感测并输出一路混合有干扰信号和源信号的混合信号。其中,“混合”一词指示目标信号和干扰信号的线性或非线性叠加。例如,可能存在多种混合方式,例如线性瞬时混合,或线性卷积混合,或非线性混合等不同混合方式。
接着,多个麦克风都可以将其对应的混合信号输出至前端信号处理模块。在前端信号处理模块中,各路混合信号分别经过回声消除、去混响、声源分离、波束形成和后处理模块后得到增强的干净目标语音信号,供输入识别系统进行语音识别。其中,在声源分离模块中,可集成本公开的各种实施例对应的语音分离方案。当然,本领域技术人员应当理解,本公开并不限于此。
图2所示的语音数据采集方案又称为多通道语音采集方案。针对多通道语音采集方案的语音分离技术又称为多通道语音分离技术。然而多通道语音分离方案的语音分离效果往往受制于麦克风的数量和摆放的位置。
例如,现有神经网络往往用于估计多通道语音的语音密度、声源方向、语音的空间信息。这些信息的复杂度较高并且泛化能力差。如果仅利用现有的神经网络来实现从多通道语音中分离出目标语音,由于神经网络的语音分离效果受制于采集训练数据时的麦克风的数量和摆放位置,如果一旦麦克风的位置改变,神经网络的语音分离效果往往较差。就目前的神经网络方案而言,其在处理多通道语音时,往往由于其泛化能力不足,导致语音分离效果差。其次,由于多通道语音数据复杂,往往需要采用大型的端到端神经网络方案。而这样的神经网络方案往往受到模型大小和算法复杂度的约束,无法应用到小型低算力的车载或会议系统中去,导致难以在产品中达到实时语音分离的目的。
本公开基于此,提供了一种音频信号处理方法,包括:基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集和第二待处理音频数据集;对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号;基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定针对所述第一待处理音频数据集的第二估计信号,以及基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。
本公开的实施例提供了一种基于盲源分离算法与神经网络联合的自适应语音分离系统,不仅能够克服传统盲源分离算法在高混响情况下语音分离的结果不准确的问题,还能够克服传统的神经网络的运算复杂度过高和泛化能力差的问题。本公开的实施例能应用到任何一个两麦或多麦的车载/会议语音系统,扩展了语音分离技术的应用场景,实现了实时的语音分离效果。
例如,在本公开的一些示例实施例中,通过盲源分离算法对采集的语音数据进行了预分离处理,并将预分离的结果输入至一个小型的神经网络,该神经网络输出结果再反作用于该盲源分离算法的运算,不仅达到联合优化的效果,还能显著地提升语音分离的性能。
例如,在本公开的一些示例实施例中,上述的小型神经网络可以以预分离后的语音和混合语音作为训练样本,以学习混合语音和预分离语音在语谱图上的差异性与关联性,从而降低语音分离任务的难度,以实现使用一个小算力的神经网络就能很好完成的分离任务。此外,示例神经网络还可以进一步地以一些额外的特征(例如,梅尔普特征等)作为输入,以进一步提高神经网络的处理语音数据的准确性。更进一步地,由于上述的小型神经网络无需学习特定麦克风布局对应的相位差特征,因此,本公开的各项实施例可以适应于任何麦克风布局下的语音分离场景。例如,本公开的各个实施例均可以适用于会议系统的语音分离场景中,或者其他分布式语音分离的场景中,例如,在布置有分布式/阵列式麦克风的家居场景中。
由于本公开的各个实施例对任意形状的麦克风阵列都具有很强的泛化能力,因此,不管是会议系统、车载系统、亦或是在智能家居的领域,本公开的各个实施例均能很好的嵌入其中,能帮助语音终端进行语音识别前处理的工作。此外,本公开的各个实施例还可以很轻松的扩展到如图2所示的降噪、去混响、联合去回声的任务中,达到一体化前端语音处理。
以下结合图3至图7对根据本公开实施例进行更详细介绍。
图3是示出根据本公开实施例的音频信号处理方法30的流程图。方法30可以应用于图2所示的声源分离模块。
例如,在本公开至少一个实施例中,如图3所示,方法30包括以下操作S301至操作S304。
在操作S301中,基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集和第二待处理音频数据集。
以图2中示出的场景为例,所述来自至少一个声源中的每个声源对应的待处理音频信号可以是图2所示的多路混合信号。或者,所述来自至少一个声源的待处理音频信号还可以是这些混合信号经回声消除处理和/或去混响处理后得到的信号。而在本公开的一些实施例中,第一待处理音频数据集合和第二待处理音频集可以是所述待处理音频信号的不同音频帧集合。针对捕获语音的场景,第一待处理音频数据集合和第二待处理音频集可以是不同的语音片段(例如,不同的语音音频帧集合)。
在操作S302中,对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号。所述预分离处理可以是尝试将各个声源的源信号从混合信号中分离出来的操作。例如,所述预分离处理可以是尝试分别对各个声源的源信号的进行估计的操作。经预分离操作后可以得到源信号的近似值。所述估计信号可以是对任意声源的源信号的估计信号,其近似于某个声源发出的源信号。在本公开的一些示例实施例中,所述预分离处理至少部分地基于盲源分离算法,当然本公开并不以此为限。例如,在操作S302中,能够进行多次迭代,确定出分离效果好的分离参数来对所述第一待处理音频数据集中的混合信号进行预分离,预分离可以得到第一估计信号。其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
作为一个示例,分离参数可以看作为一种转换系数,其指示第一待处理音频数据集中的各路混合信号与第一估计信号之间的转换关系。例如,基于各路混合信号的混合方式的不同,分离参数可能会对应的变化。例如,针对线性瞬时混合,或线性卷积混合,或非线性混合等不同混合方式,可以对应地设置/求解不同的分离参数。该分离参数即用于对混合信号进行解混。
以基于独立向量分析的盲源分离算法为例,分离参数的示例可以是一个或多个分离矩阵。可选地,在没有神经网络的反馈信息(例如,后续提及的第二估计信号等)的情况下,分离参数的初始值可以是任意预设值。而在具有神经网络的反馈信息的情况下,分离参数的值可以至少部分地基于所述神经网络的反馈信息而被确定。
在一种可能实现方式中,每路混合信号首先被转换为频域信号。该分离参数为至少一个分离矩阵,分离矩阵的数量为一个或多个,每个频点对应一个分离矩阵。如果分离矩阵的数量为一个,终端120或服务器110能够对单频点的频域信号进行分离处理。如果分离矩阵的数量为多个,终端120或服务器110则能够对多频点的频域信号进行分离处理。相应地,终端120或服务器110则能够根据至少一个分离矩阵,对频域信号进行分离,得到该至少一个第一估计信号或第一估计信号的信号分量。当然,本公开并不以此为限。
在操作S303中,基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定针对所述第一待处理音频数据集的第二估计信号。在本公开的一些示例实施例中,可选地可以利用神经网络来确定第二估计信号。例如,所述第二估计信号包括至少一个信号分量,每个信号分量对应一个声源。更进一步地,所述第二估计信号可以作为针对第一待处理音频数据集分离出的目标信号。或者在一些实施例中,所述第二估计信号经后处理后可以作为针对第一待处理音频数据集分离出的目标信号。
在操作S304中,基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。类似地,针对第二待处理音频数据集的预分离处理也可以类似地至少部分地基于盲源分离算法,当然本公开并不以此为限。
需要说明的是,在本公开至少一个实施例中,操作S301至操作S304可以顺序执行,可以并行执行,也可以按调整后的其他次序执行,本公开的实施例对各个步骤的执行顺序不作限制,可以根据实际情况调整。还需要说明的是,在本公开至少一个实施例中,方法30可以选择地执行操作S301至操作S304中的部分操作,也可以执行除了操作S301至操作S304以外的一些附加操作,本公开的实施例对此不作限制。例如,在本公开的一些示例实施例中,还可选地包括操作S305至操作S306中的一项或多项。
在操作S305中,在对第二待处理音频数据集进行预分离处理后,确定所述第二待处理音频数据集的第一估计信号;基于所述第二待处理音频数据集和所述针对第二待处理音频数据集的第一估计信号,确定针对所述第二待处理音频数据集的第二估计信号。
在操作S306中,基于所述针对第一待处理音频数据集的第二估计信号,确定针对第一待处理音频数据集的目标信号片段,或者基于所述针对第一待处理音频数据集的第二估计信号,确定针对第二待处理音频数据集的目标信号片段;基于所述针对第一待处理音频数据集的目标信号片段或者所述针对第二待处理音频数据集的目标信号片段,确定目标信号。可选地,所述目标信号包括至少一个目标信号分量,每个目标信号分量对应于一个声源。也即,所述每个目标信号分量是经过方法30处理后得到的逼近单个声源发出的信号。虽然未在图3中明确示出,方法30还可选包括后处理步骤以及语音识别步骤,本公开并不以此为限。
由此,方法30提供了一种基于盲源分离算法与神经网络联合的自适应语音分离方法,不仅能够克服传统盲源分离算法在高混响情况下语音分离的结果不准确的问题,还能够克服传统的神经网络的运算复杂度过高和泛化能力差的问题。本公开的实施例能轻松地应用到任何一个两麦或多麦的车载/会议语音系统,扩展了语音分离技术的应用场景,实现了实时的语音分离效果。
接下来,参考图4至图7来对图3中的各个操作进行进一步的示例性说明。具体地,图4是示出能够用于实施方法30的一种示例装置400的示意图。图5是示出根据本公开实施例的方法30的又一示意流程图。图6是示出根据本公开实施例的示例神经网络的示意图。图7是示出根据本公开实施例的又一示例神经网络的示意图。
参考图4,示例装置400可以包括获取模块401、盲源分离模块402和神经网络模块403。其中,可选地,获取模块401用于执行操作S301,盲源分离模块402用于执行操作S302和操作S304,神经网络模块用于执行操作S303。可选地,神经网络模块还用于执行操作S305。该示例装置示例性地示出了对由两个麦克风捕获的来自两个声源的待处理音频信号(其分别被示出为通道1的时频信号和通道2的时频信号)进行处理的过程。这两个待处理音频信号均存在不同程度的互相干扰,也即,这两个待处理音频信号均为多路混合信号。本领域技术人员应当理解虽然图4仅示出了来自两个声源的待处理音频信号,本公开的各实施例事实上还可以处理来自更多或更少个声源的待处理信号。
如图4和图5所示,操作S301还可以进一步包括操作S501至S503。操作S302还可以进一步包括操作S504至S505。操作S303还可以进一步包括操作S506。操作S304还可以进一步包括操作S507。
例如,在操作501中,获取模块401可以获取来自至少一个声源的待处理音频信号。作为一个示例,M个传感器(例如,麦克风)采集了N个声源(又称为音源)的卷积混合信号,M和N均大于零,二者可以相同也可以不同。这M个传感器将其感测到的M个通道的混合信号作为待处理音频数据(其例如是一种时域信号)以进行后续处理。
假设M=2,即可得到两个通道的混合信号:针对通道1的混合信号x1以及针对通道2的混合信号x2。其中,混合信号x1中不仅包括通道1的麦克风期望采集到的目标信号s1,还包括一定程度的干扰信号以及由于混响导致的变化。类似地,混合信号x2中不仅包括通道2的麦克风期望采集到的源信号s2,还包括一定程度的干扰信号以及由于混响导致的变化。针对通道1的混合信号x1以及针对通道2的混合信号x2均可以作为待处理音频数据以进行后续处理。
作为另一个示例,这M个传感器还可选地先将这M个通道的混合信号先输入至图2中的回声消除模块以及去混响模块中,以进行回声消除和去混响处理,并处理后的混合信号作为待处理音频数据。本公开不对回声消除和去混响处理的顺序进行限制,本领域技术人员可以根据实际需求对应的设置相应的处理方案。
在操作S502中,获取模块401可以将所述待处理音频信号划分为多个待处理音频数据集合,所述多个待处理音频数据集合包括第一待处理音频数据集合和第二待处理音频数据集合。
作为一个示例,第一待处理音频数据集合例如是多个麦克风采集的前N秒(例如前4秒)的音频数据,第二待处理音频数据集合例如是多个麦克风采集的第N秒至第N+M秒(例如,第5-8秒)的音频数据,其中,N和M均为正数。此时,由于神经网络模块还未开始对于第一待处理音频数据集合的处理,因此,后续针对第一待处理音频数据集合的预分离处理可以无需神经网络模块的反馈信息,而针对第二待处理音频数据集合的预分离处理则利用了神经网络模块的反馈信息。
作为另一个示例,在对第一待处理音频集进行处理之前,可能已经获得了神经网络模块的反馈信息,那么后续针对第一待处理音频数据集合的预分离处理也可以利用这些神经网络模块的反馈信息。例如,第一待处理音频数据集合例如是多个麦克风采集的第N秒至第N+M1秒(例如,第5-8秒)的音频数据,第二待处理音频数据集合例如是多个麦克风采集的第N+M1秒至第N+M2秒(例如,第9-13秒)的音频数据。其中M2与M1为任意正数,且M2大于M1。
在操作S503中,获取模块401可以对第一待处理音频数据集合或第二待处理音频数据集合中的待处理音频数据从时域形式转换为时频域形式。例如,可以将上述的第一待处理音频数据集合和第二待处理音频数据集合中的音频帧进行STFT变换,从而将时域的待处理音频数据处理成时频域的待处理音频数据。
可以理解地,麦克风直接采集的待处理音频数据通常为时域信号,而直接对时域信号进行处理时通常计算复杂度高,计算量大,将其转换至时频域进行计算,能够降低计算复杂度并减少计算量。此外,由于麦克风直接采集的待处理音频数据是非平稳的,无法直接使用标准傅里叶变换方式进行处理,又语音信号具有短时特性,采用短时傅里叶变换,对语音信号的各个短时片段进行变换,能够得到时频域的待处理音频数据。例如,该时域信号转换为时频域信号的过程可以包括:对时域的待处理音频数据进行加窗、分帧和傅里叶变换,得到时频域的待处理音频数据。
例如,上述的两个混合信号x1和x2经过STFT变换后,混合信号x1将被转换到时频域,以符号x1(f,t)标识。类似地,转换到时频域的混合信号x2可以被标识为x2(f,t)。可以x1(f,t)和x2(f,t)进行组合以便于表示,从而得到X(f,t)=[x1(f,t),x2(f,t)]T。X(f,t)又可以被称为上述的麦克风采集到的观测信号。正如上述描述的,x1(f,t)和x2(f,t)均包括不同程度的干扰。从而,可以对应地用公式(1)来示例性地表征在时频域下的观测信号与源信号之间的关系。
X(f,t)=A(f)S(f,t) (1)
其中,S(f,t)=[s1(f,t),s2(f,t)]T,s1(f,t)为针对通道1的时频域下的源信号分量,也即通道1期望采集的信号经STFT变换后的信号。s2(f,t)针对通道2的时频域下的源信号分量,也即通道2期望采集的信号经STFT变换后的信号。S(f,t)又可以被称为上述的麦克风期望采集到的源信号。其中,f和t分别为频率下标和时间下标。矩阵A(f)为在f频点的混合矩阵。
如果A(f)已知,那么盲源分离模块402则能够求解出S(f,t)。然而,由于采集声音的环境未知,A(f)在实际应用中是未知的。为了在A(f)未知的情况下,得到S(f,t),盲源分离模块可以采用各种估计方案来求解混矩阵W(f)=[w1(f),w2(f)]H。理想情况下的解混矩阵W(f)可以收敛于混合矩阵A(f)的逆。例如,可以用公式(2)来进一步示出分离矩阵、第一估计信号、与观测信号之间的关系。
Y(f,t)=W(f)X(f,t) (2)
其中,Y(f,t)=[y1(f,t),y2(f,t)]T。y1(f,t)为针对通道1的时频域下的第一估计信号分量,也即针对通道1的观测信号在经过盲源分离处理后的信号。y2(f,t)为针对通道2的时频域下的第一估计信号分量,也即针对通道2的观测信号在经过盲源分离处理后的信号。Y(f,t)又可以被称为第一估计信号。盲源分离处理的目标为使得y1(f,t)尽可能地接近于s1(f,t),并且y2(f,t)尽可能的接近于s2(f,t),也即使得Y(f,t)尽可能的接近于S(f,t)。
在操作S504中,获取目标函数,所述目标函数指示所述分离参数迭代的方向信息。作为一个示例,可以采用基于独立向量分析(IVA)的盲源分离方案,建立源信号模型,并对应地设计目标函数。接续上述示例,为便于表示,可以在公式(2)中省略时间索引t,而仅针对频率进行说明。基于独立向量分析的原理,可以对应地设计出公式(3)所示的示例目标函数。
其中,W是W(f)(1≤f≤Nf)的简写,Nf为最高频率点。G(yk)=GR(rk),且E[G(yk)]表示求解G(yk)的期望。例如,可以令GR(rk)=rk来进行运算,k标识频点。当然,在其它示例中,GR(rk)还可以是针对rk的线性组合或非线性组合,本公开对此不进行限制。在公式(3)中,detW(f)表示针对W(f)求解行列式。
公式(3)是以最小化信息熵(负熵)为目的而设计的目标函数。根据中心极限定理:独立随机变量之和趋向与高斯分布,那么最大化统计独立也就是最大化非高斯。互信息是信息论中依赖性(关联度)的自然度量,其在公式(3)中以J(W)表示。
在操作S505中,获取分离参数的初始值,并基于所述分离参数的初始值以及所述第一待处理音频数据集,通过多次迭代更新所述分离参数的值,以及基于更新后的分离参数的值,确定针对所述第一待处理音频数据集的第一估计信号,其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
作为一个示例,可以迭代地进行目标函数最优化,以求解分离矩阵,直至目标函数收敛,从而得到上述的针对所述第一待处理音频数据集的第一估计信号以及针对所述第二待处理音频数据集的第一估计信号。
在本公开的一些示例实施例中,可以用与负熵近似相似的方法来求解互信息J(W)的近似。而在本公开的又一些实施例中,也可以用与似然度近似相同的方法来求解互信息的近似。本公开并不以此为限。以上的公式(3)从形式上与极大化非高斯性和极大化似然度的相关目标函数近似,因此,本公开的各项实施例可以采用各类与极大化非高斯性和极大化似然度的相关目标函数对应的优化方法(例如,基于自然梯度下降的优化方法、基于不动点的优化方法、基于辅助函数的优化方法等等)来优化公式(3)的求解。
接续以上示例,如果两个向量不相关,那么这两个向量的互信息为0。也即,如果在多次迭代后,公式(3)中的J(W)能够收敛至0的话,那么可以确定各个源信号已经分离,从而得到逼近源信号的估计信号。基于公式(3)中的目标函数,不同的优化方法可以对应地设置迭代目标项以及迭代目标方案。
例如,本公开的一些实施例利用基于自然梯度下降的示例优化方法来求解分离矩阵并得到第一估计信号。为最小化互信息J(W),基于自然梯度下降的优化方法将对应地设置步长α,然后基于步长α沿自然梯度下降最快的方向更新矩阵W(f)。在基于自然梯度下降的优化方法中,步长α的取值需要工程师事先设定。然而,如果步长α过大则容易跳过极值,如果步长α过小则容易困在局部最优解而难以得到全局最优解。因此,需要有经验的工程师反复调试步长α。
为此,除了基于自然梯度下降的优化方法以外,例如,本公开的又一些实施例还可以利用基于辅助函数的示例优化方法来求解分离矩阵并得到估计的源信号,以避免使用步长α。例如,基于公式(3),可以得到公式(4)所示的针对分离矩阵W的迭代公式。
在公式(4)中,是wk(f)的共轭转置。
其中,响应于盲源分离模块402未获得神经网络模块403的反馈信息,盲源分离模块402可以将wk(f)的初始值设置为单位矩阵。在每次迭代中,wk(f)将根据步长α进行更新,求解出新的rk,并基于rk求解J(W)。例如,针对上述的第一待处理音频数据集合为多个麦克风采集的前N秒的音频数据的示例,wk(f)的初始值设置为单位矩阵(也即,将分离矩阵的初始值确定为单位矩阵)。
响应于盲源分离模块402已获得神经网络模块403的反馈信息,盲源分离模块402可以将wk(f)的初始值设置为基于该反馈信息解算的初始值,从而实现缩减迭代次数的目的。之后将结图6-图7对如何根据神经网络的反馈对应地调节/更新wk(f)的取值进行更详细的说明,本公开在此不再详述。
例如,针对公式(4),还可以对应地推导出公式(5)和公式(6)。
wk(f)←(W(f)Vk(f))-1ek (6)
其中,Vk(f)是辅助目标迭代项迭代的辅助迭代项,←符号表示赋值。
G′(rk)是G(rk)的逆,G(rk)=GR(rk)。在一些示例中,G′(rk)=r′k,其表示针对rl求导。wk(f)的初始值为单位矩阵,ek为单位矩阵。
由此,基于Vk(f)和rk可以确定在每次迭代中对应的迭代目标项wk(f),而不需步长α的参与。
此外,为避免wk(f)在迭代过程中累计误差,还可以针对公式(6)中的wl(f)进行公式(7)所示的归一化操作,以避免误差累计。
公式(7)说明在每次迭代过程中,以来替代wk(f)。在目标函数收敛时,可以基于所得到的分离矩阵W以及公式(2)得到第一估计信号。
在操作S506中,神经网络模块403可以基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,利用神经网络来确定针对所述第一待处理音频数据集的第二估计信号,其中,所述神经网络用于提供各个声源对应的待处理音频信号之间的差异信息或关联信息。
例如,所述神经网络的训练样本包括混合信号样本、经预分离处理后的混合信号样本以及所述混合信号对应的源信号,所述神经网络的训练包括:基于所述混合信号以及所述经预分离处理后的混合信号样本,利用所述神经网络确定所述混合信号对应的估计信号;对所述神经网络中的各个神经元进行迭代更新,以所述混合信号对应的估计信号逼近所述混合信号对应的源信号。经过上述训练过程训练出的神经网络可以直接从第一估计信号和待处理音频数据中确定各个声源对应的待处理音频信号之间的差异信息或关联信息。
又例如,如图4所示,上述神经网络的训练样本还可以进一步包括一些其它信息,例如,语谱图的梅尔普特征等等,以辅助神经网络对于混合信号的分析。
以图6中示出的神经网络模块403作为一种本公开的实施方式的示例进行说明。如图6所示,神经网络模块可以从第一待处理音频数据集对应的时频域的待处理音频数据中提取幅度信息和相位信息。其中,幅度信息以幅值谱|Yi|,相位信息以相位谱∠Yi示出。通过上述已经训练好的神经网络,基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定掩蔽参数其中,i为通道值,j为声源的标识符。利用混合语音的幅值谱与估计出来的掩蔽值(j=1,2,....,J,J为声源总数)对应点乘积得到估计出来的目标语音信号的幅值谱然后,利用幅值谱和原始的相位谱∠Yi,即可得到第二估计信号。
以图7示出的神经网络模块404作为另一种本公开的实施方式的示例进行说明。如图7所示,神经网络包括编码器、分离层和解码器。所述编码器被配置为对混合信号和第一估计信号进行编码,以获取编码隐藏向量并将所述编码隐藏向量输出至所述分离层和所述解码器。所述分离层被配置为基于所述编码隐藏向量,确定分离辅助特征(其例如是一种注意力信息),并将分离辅助特征输出至所述解码器。所述解码器被配置为基于所述编码隐藏向量和所述分离辅助特征,确定第二估计信号。
在操作S507中,基于针对所述第一待处理音频数据集的第二估计信号,确定分离参数的初始值;基于所述分离参数的初始值以及所述第二待处理音频数据集,通过多次迭代更新所述分离参数的值,以及基于更新后的分离参数的值,确定针对所述第二待处理音频数据集的第一估计信号,其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
相比于第一估计信号,第二估计信号将更接近源信号。因此,正如之前参照公式(1)至公式(7)中所描述的,分离矩阵、第二估计信号与观测信号之间的关系也符合公式(2)的描述。因此,可以利用公式(2)来推算出更优的分离矩阵。将该分离矩阵作为对所述第二待处理音频数据集进行预分离处理的分离参数的初始值,可以实现缩减迭代次数的目的。
由此,基于针对所述第一待处理音频数据集的第二估计信号,利用公式(2)可以求解出wk(f)的初始值。盲源分离模块402可以对应地利用上述信息设置分离参数的初始值,并基于该分离参数的初始值,获取针对第二待处理音频数据集合的第一估计信号作为预分离信号。针对第二待处理音频数据集合的第一估计信号,神经网络模块后续也将进行与操作S506类似的处理,从而得到针对第二待处理音频数据集合的第二估计信号。
然后,如同操作S306所描述的,可以基于所述针对第一待处理音频数据集的第二估计信号,确定针对第一待处理音频数据集的目标信号片段,或者基于所述针对第一待处理音频数据集的第二估计信号,确定针对第二待处理音频数据集的目标信号片段;基于所述针对第一待处理音频数据集的目标信号片段或者所述针对第二待处理音频数据集的目标信号片段,确定目标信号基于所述针对第一待处理音频数据集的第二估计信号,确定针对第一待处理音频数据集的目标信号片段,或者基于所述针对第一待处理音频数据集的第二估计信号,确定针对第二待处理音频数据集的目标信号片段;基于所述针对第一待处理音频数据集的目标信号片段或者所述针对第二待处理音频数据集的目标信号片段,确定目标信号。例如,在第二估计信号为时频域的信号的情况下,可以对上述的第二估计信号进行ISTFT变换,从而将时频域的第二估计信号处理成时域信号,并将该时域信号作为分离出的目标信号。此外,还可以对第二估计信号/目标信号进行任何可能的后处理(例如平滑处理),使得第二估计信号/目标信号对于识别系统更友好。
例如,基于针对第一待处理音频数据集合的第二估计信号,可以确定辅助盲源分离模块进行迭代计算的信息。向盲源分离模块提供进行迭代计算的信息例如是,指示各个麦克风捕捉的待处理音频数据之间的差异信息和/或关联信息。由此,针对第二待处理音频数据集合(例如,多个麦克风采集的第5-8秒的音频数据),类似地,针对第二待处理音频数据集合的第二估计信号,还可以进行ISTFT变换和/或后处理,以得到分离出的目标信号。
由此,如上详细描述的,在本公开的一些示例实施例中,通过盲源分离算法对采集的语音数据进行了预分离处理,并将预分离的结果输入至一个小型的神经网络,该神经网络输出结果再反作用于该盲源分离算法的运算,不仅达到联合优化的效果,还能显著地提升语音分离的性能。更进一步地,通过采用基于独立向量分析的盲源分离模块,避免了独立成分分析带来的排序模糊的问题。更进一步地,由于,盲源分离模块还进一步地利用了神经网络的输出结果,实现了快速迭代,不仅提高了语音分离的结果的准确性,还提高了语音分离处理效率。
更进一步地,如上详细描述的,在本公开的一些示例实施例中,上述的两种示例性的小型神经网络均可以以预分离后的语音和混合语音作为训练样本,以学习混合语音和预分离语音在语谱图上的差异性与关联性,从而降低语音分离任务的难度,以实现使用一个小算力的神经网络就能很好完成的分离任务。此外,示例神经网络还可以进一步地以一些额外的特征(例如,梅尔普特征等)作为输入,以进一步提高神经网络的处理语音数据的准确性。更进一步地,由于上述的小型神经网络无需学习特定麦克风布局对应的相位差特征,因此,本公开的各项实施例可以适应于任何麦克风布局下的语音分离场景。例如,本公开的各个实施例均可以适用于会议系统的语音分离场景中,或者其他分布式语音分离的场景中,例如,在布置有分布式/阵列式麦克风的家居场景中。
由于本公开的各个实施例对任意形状的麦克风阵列都具有很强的泛化能力,因此,不管是会议系统、车载系统、亦或是在智能家居的领域,本公开的各个实施例均能很好的嵌入其中,能帮助语音终端进行语音识别前处理的工作。此外,本公开的各个实施例还可以很轻松的扩展到如图2所示的降噪、去混响、联合去回声的任务中,达到一体化前端语音处理。
此外,本公开还提供了一种音频信号处理装置,包括:获取模块,被配置为基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集合和第二待处理音频数据集合;预分离模块,被配置为对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号;神经网络模块,被配置为基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,确定针对所述第一待处理音频数据集的第二估计信号,以及所述预分离模块还被配置为基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。
下面对本公开与相关技术的声源分离效果,进行了两声源混合场景的实验。在存在混响的房间内,两个说话人同时说话,他们各自都与麦克风相距一定距离,并相对于麦克风有不同的方向角。相距一定距离的两个麦克风接收混合语音信号,该混合语音信号为两个声源的语音信号混合后得到的语音信号,也可以称之为混合信号。
图8示出了两个声源的源信号在无干扰的情况下的语谱图。其中一个声源在前段时间发声,而另一个声源在后段时间发声。如图9和图10所示,本申请实施例中对一段两声源混合语音信号处理前和处理后的语谱图。通过对比两个语谱图,图9所示的语谱图中,两个声源产生的语音信号混合在一起,图10所示的语谱图中,两个声源产生的语音信号则分别分布在前段时间和后段时间。
下面提供一种实验示例,分别采用本申请提供的方法与其他方法来对接收到的语音信号进行处理,通过处理后信号的信号干扰比(Signal-to-Interference Ratio,SIR)与信号失真比(Signal-to-Distortion Ratio,SDR)来对不同方法的处理效果进行对比分析。
其中,使用(1)来表示传统的AuxIVA技术,其针对上述混合语音信号处理后的语谱图如图11所示。使用(2)来表示端到端的神经网络方案(NN+mix+IPD),其输入为一路麦克风收音到的混合信号和两麦克风收音信号间的相位差特征,其针对上述混合语音信号处理后的语谱图如图12所示。使用(3)来表示采用本公开的实施例的技术。
分别通过三种技术来对上述双声源语音信号进行处理,处理后得到的信号的信号失真比提升(Signal-to-Distortion Ratio improvement,SDRi),尺度不变信噪比提升(scale-invariant source-to-noise ratio improvement,SI-SNRi),感知语音质量评估提升(Perceptual evaluation of speech quality improvement,PESQi)如图13所示。
如图13所示,能够看到采用技术(3)得到的信号的SDRi值、SI-SNRi值和PESQi均优于其他技术,可见,采用技术(3)能够更准确地对语音信号进行分离,分离效果更好。综合上述表1和表2的数据,本申请提供的方法能够成功分离多声源的混合语音,与其他方法相比,显著地提升了前端信号质量。
可见,本公开的实施例不仅能够克服传统盲源分离算法在高混响情况下语音分离的结果不准确的问题,还能够克服传统的神经网络的运算复杂度过高和泛化能力差的问题。本公开的实施例能轻松地应用到任何一个两麦或多麦的车载/会议语音系统,扩展了语音分离技术的应用场景,实现了实时的语音分离效果。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。图14是示出根据本公开实施例的电子设备700的结构图。参见图14,设备700可以包括处理器701和存储器702。处理器701和存储器702可以通过总线703相连。
处理器701可以根据存储在存储器702中的程序执行各种动作和处理。具体地,处理器701可以是一种集成电路芯片,具有信号的处理能力。上述处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以是X87架构或ARM架构的。
存储器702上存储有计算机指令,该计算机指令被微处理器执行时实现方法200。存储器702可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)或闪存。易失性存储器可以是随机存取存储器(RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率同步动态随机存取存储器DDRSDRAM)、增强型同步动态随机存取存储器(ESDRAM)、同步连接动态随机存取存储器(SLDRAM)和直接内存总线随机存取存储器(DR RAM)。应注意,本公开描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本公开的实施例提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现上述方法。
根据本公开的另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个方面或者上述各个方面的各种可选实现方式中提供的方法。
需要说明的是,附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
一般而言,本公开的各种示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
在上面详细描述的本发明的示例实施例仅仅是说明性的,而不是限制性的。本领域技术人员应该理解,在不脱离本发明的原理和精神的情况下,可对这些实施例或其特征进行各种修改和组合,这样的修改应落入本发明的范围内。

Claims (13)

1.一种音频信号处理方法,包括:
基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集和第二待处理音频数据集;
对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号,所述预分离处理至少部分地基于盲源分离算法;
基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,利用神经网络来确定针对所述第一待处理音频数据集的第二估计信号,以及
基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。
2.如权利要求1所述的方法,其中,所述对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号还包括:
获取分离参数的初始值,并基于所述分离参数的初始值以及所述第一待处理音频数据集,通过多次迭代更新所述分离参数的值,以及
基于更新后的分离参数的值,确定针对所述第一待处理音频数据集的第一估计信号,其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
3.如权利要求1所述的方法,其中,所述基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理还包括:
基于针对所述第一待处理音频数据集的第二估计信号,确定分离参数的初始值;
基于所述分离参数的初始值以及所述第二待处理音频数据集,通过多次迭代更新所述分离参数的值,以及
基于更新后的分离参数的值,确定针对所述第二待处理音频数据集的第一估计信号,其中,所述第一估计信号包括至少一个信号分量,每个信号分量对应一个声源。
4.如权利要求1所述的方法,其中,所述神经网络用于提供各个声源对应的待处理音频信号之间的差异信息或关联信息。
5.如权利要求4所述的方法,其中,所述神经网络的训练样本包括混合信号样本、经预分离处理后的混合信号样本以及所述混合信号对应的源信号,所述神经网络的训练包括:
基于所述混合信号以及所述经预分离处理后的混合信号样本,利用所述神经网络确定所述混合信号对应的估计信号;
对所述神经网络中的各个神经元进行迭代更新,以所述混合信号对应的估计信号逼近所述混合信号对应的源信号。
6.如权利要求1所述的方法,其中,所述方法还包括:
在对第二待处理音频数据集进行预分离处理后,确定所述第二待处理音频数据集的第一估计信号;
基于所述第二待处理音频数据集和所述针对第二待处理音频数据集的第一估计信号,确定针对所述第二待处理音频数据集的第二估计信号。
7.如权利要求6所述的方法,其中,所述方法还包括:
基于所述针对第一待处理音频数据集的第二估计信号,确定针对第一待处理音频数据集的目标信号片段,或者基于所述针对第一待处理音频数据集的第二估计信号,确定针对第二待处理音频数据集的目标信号片段;
基于所述针对第一待处理音频数据集的目标信号片段或者所述针对第二待处理音频数据集的目标信号片段,确定目标信号;
其中,所述目标信号包括至少一个目标信号分量,每个目标信号分量对应于一个声源。
8.如权利要求1所述的方法,其中,
每个声源对应的待处理音频信号为混合信号;或者
每个声源对应的待处理音频信号为混合信号经回声消除处理或去混响处理后得到的信号;
其中,所述混合信号为每个声源对应的源信号和干扰信号的线性或非线性叠加。
9.如权利要求1所述的方法,其中,所述第一待处理音频集和第二待处理音频数据集合为所述待处理音频信号的不同音频帧集合。
10.如权利要求1所述的方法,其中,所述基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集合和第二待处理音频数据集合还包括:
获取来自至少一个声源的待处理音频信号,
将所述待处理音频信号划分为多个待处理音频数据集合,所述多个待处理音频数据集合包括第一待处理音频数据集合和第二待处理音频数据集合,以及
对第一待处理音频数据集合或第二待处理音频数据集合中的待处理音频数据从时域形式转换为时频域形式。
11.一种音频信号处理装置,包括:
获取模块,被配置为基于来自至少一个声源的待处理音频信号,获取第一待处理音频数据集合和第二待处理音频数据集合;
预分离模块,被配置为对所述第一待处理音频数据集进行预分离处理,以确定针对所述第一待处理音频数据集的第一估计信号,所述预分离处理至少部分地基于盲源分离算法;
神经网络模块,被配置为基于所述第一待处理音频数据集和所述针对第一待处理音频数据集的第一估计信号,利用神经网络来确定针对所述第一待处理音频数据集的第二估计信号,以及
所述预分离模块还被配置为基于针对所述第一待处理音频数据集的第二估计信号,对第二待处理音频数据集进行预分离处理。
12.一种电子设备,包括:
处理器;
存储器,存储器存储有计算机指令,该计算机指令被处理器执行时实现如权利要求1-10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-10中的任一项所述的方法。
CN202210153017.5A 2022-02-18 2022-02-18 音频信号处理方法 Active CN114495974B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210153017.5A CN114495974B (zh) 2022-02-18 2022-02-18 音频信号处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210153017.5A CN114495974B (zh) 2022-02-18 2022-02-18 音频信号处理方法

Publications (2)

Publication Number Publication Date
CN114495974A CN114495974A (zh) 2022-05-13
CN114495974B true CN114495974B (zh) 2024-02-23

Family

ID=81481684

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210153017.5A Active CN114495974B (zh) 2022-02-18 2022-02-18 音频信号处理方法

Country Status (1)

Country Link
CN (1) CN114495974B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109036460A (zh) * 2018-08-28 2018-12-18 百度在线网络技术(北京)有限公司 基于多模型神经网络的语音处理方法和装置
WO2019094562A1 (en) * 2017-11-08 2019-05-16 Google Llc Neural network based blind source separation
CN111261184A (zh) * 2018-12-03 2020-06-09 三星电子株式会社 声源分离装置和声源分离方法
CN112562716A (zh) * 2020-12-03 2021-03-26 兰州交通大学 基于神经网络的语音增强方法、装置、终端和介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109661705B (zh) * 2016-09-09 2023-06-16 索尼公司 声源分离装置和方法以及程序

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019094562A1 (en) * 2017-11-08 2019-05-16 Google Llc Neural network based blind source separation
CN109036460A (zh) * 2018-08-28 2018-12-18 百度在线网络技术(北京)有限公司 基于多模型神经网络的语音处理方法和装置
CN111261184A (zh) * 2018-12-03 2020-06-09 三星电子株式会社 声源分离装置和声源分离方法
CN112562716A (zh) * 2020-12-03 2021-03-26 兰州交通大学 基于神经网络的语音增强方法、装置、终端和介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Li Min ; .Voiceprint Recognition of Transformer Fault Based on Blind Source Separation and Convolutional Neural Network.《2021 IEEE Electrical Insulation Conference (EIC)》.2021,全文. *
基于深度神经网络的双耳语音分离方法研究;林震宇;《中国优秀硕士学位论文全文数据库信息科技辑》;全文 *

Also Published As

Publication number Publication date
CN114495974A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
EP3346462B1 (en) Speech recognizing method and apparatus
CN110600017B (zh) 语音处理模型的训练方法、语音识别方法、系统及装置
US9668066B1 (en) Blind source separation systems
US11024324B2 (en) Methods and devices for RNN-based noise reduction in real-time conferences
Chazan et al. Multi-microphone speaker separation based on deep DOA estimation
US20160071526A1 (en) Acoustic source tracking and selection
CN113516990B (zh) 一种语音增强方法、训练神经网络的方法以及相关设备
WO2019080551A1 (zh) 目标语音检测方法及装置
CN111899756B (zh) 一种单通道语音分离方法和装置
Oh et al. Target speech feature extraction using non-parametric correlation coefficient
CN112289338B (zh) 信号处理方法及装置、计算机设备以及可读存储介质
JP2020134657A (ja) 信号処理装置、学習装置、信号処理方法、学習方法及びプログラム
WO2016119388A1 (zh) 一种基于语音信号构造聚焦协方差矩阵的方法及装置
Martín-Doñas et al. Dual-channel DNN-based speech enhancement for smartphones
CN112180318A (zh) 声源波达方向估计模型训练和声源波达方向估计方法
Jiang et al. An Improved Unsupervised Single‐Channel Speech Separation Algorithm for Processing Speech Sensor Signals
CN112908340A (zh) 一种基于全局-局部加窗的声音特征快速提取方法
Girin et al. Audio source separation into the wild
CN114495974B (zh) 音频信号处理方法
Jafari et al. Underdetermined blind source separation with fuzzy clustering for arbitrarily arranged sensors
US20230269532A1 (en) Beamforming method and beamforming system using neural network
Li et al. On loss functions for deep-learning based T60 estimation
CN117373468A (zh) 远场语音增强处理方法、装置、计算机设备和存储介质
CN115881157A (zh) 音频信号的处理方法及相关设备
Chun et al. Comparison of cnn-based speech dereverberation using neural vocoder

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