CN115116471A - 音频信号处理方法和装置、训练方法、设备及介质 - Google Patents
音频信号处理方法和装置、训练方法、设备及介质 Download PDFInfo
- Publication number
- CN115116471A CN115116471A CN202210459690.1A CN202210459690A CN115116471A CN 115116471 A CN115116471 A CN 115116471A CN 202210459690 A CN202210459690 A CN 202210459690A CN 115116471 A CN115116471 A CN 115116471A
- Authority
- CN
- China
- Prior art keywords
- audio signal
- matrix
- processed
- neural network
- real
- 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.)
- Granted
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 546
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000012549 training Methods 0.000 title claims abstract description 57
- 238000003672 processing method Methods 0.000 title claims abstract description 51
- 239000011159 matrix material Substances 0.000 claims abstract description 440
- 238000001228 spectrum Methods 0.000 claims abstract description 205
- 238000013528 artificial neural network Methods 0.000 claims abstract description 176
- 238000012545 processing Methods 0.000 claims abstract description 103
- 238000004590 computer program Methods 0.000 claims abstract description 7
- 238000001914 filtration Methods 0.000 claims description 70
- 230000008569 process Effects 0.000 claims description 10
- 239000002131 composite material Substances 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 14
- 238000003062 neural network model Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 11
- 238000013473 artificial intelligence Methods 0.000 description 10
- 230000003044 adaptive effect Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 230000000873 masking effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- 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/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- 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/0208—Noise filtering
-
- 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/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0224—Processing in the time domain
-
- 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/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- 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/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
Landscapes
- Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
音频信号处理方法和装置、训练方法、设备及介质。本公开提供了一种利用神经网络进行时频域回声消除处理的音频信号处理方法,包括:获取参考音频信号和待处理音频信号;获得该参考音频信号的幅度谱矩阵以及该待处理音频信号的幅度谱矩阵和相位谱矩阵;利用第一神经网络对该待处理音频信号进行频域回声消除处理,生成第一处理后音频信号;获得该参考音频信号的实部数据矩阵和虚部数据矩阵以及该第一处理后音频信号的实部数据矩阵和虚部数据矩阵;利用第二神经网络对该第一处理后音频信号进行时域回声消除处理,生成第二处理后音频信号。本公开还提供了一种神经网络训练方法、音频信号处理装置、计算设备、计算机可读存储介质以及计算机程序产品。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种音频信号处理方法,以及一种应用了该音频信号处理方法的音频信号处理装置,此外还涉及一种神经网络模型的训练方法、计算设备、计算机可读存储介质以及计算机程序产品。
背景技术
随着音频信号处理技术的不断发展,使用终端设备的目标对象对音频质量的要求也越来越高。如果通话过程中出现回声,那么通话质量将会受到严重影响。回声产生的原理是:音频信号在扬声器中播放以及在封闭或半封闭环境中经过多次反射而导致信号失真,最后与本地音频一起被麦克风采集从而形成回声。回声会干扰本地音频的传递,严重影响通信体验。
传统技术中一般使用自适应滤波器来消除回声中的线性部分,然而回声中的非线性部分往往难以被消除。近来,神经网络模型开始被应用于回声消除。神经网络模型可以与自适应滤波器组合使用,以便对自适应滤波器处理后的音频信号进行后处理,以去除信号中的非线性残留和少量的线性残留;或者,神经网络模型也可以用于替代自适应滤波器,以消除回声中的线性和非线性部分。目前所用的基于神经网络模型的回声消除处理通常将音频信号转换到频域,获得相应的幅度谱和相位谱,基于幅度谱进行回声消除处理,然后再结合相位谱变换到时域,以生成处理后的音频信号。然而,该处理方式中仅针对音频信号的幅度谱进行处理,而摒弃了相位,因此会对音频信号的回声消除质量带来不利影响。
发明内容
根据本公开的第一个方面,提供了一种音频信号处理方法,包括:获取参考音频信号和待处理音频信号,其中,该参考音频信号是通过本地扬声器播放的音频信号,该待处理音频信号是通过本地麦克风采集的音频信号;获得该参考音频信号的幅度谱矩阵,以及获得该待处理音频信号的幅度谱矩阵和相位谱矩阵;基于该参考音频信号的幅度谱矩阵、该待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对该待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号;获得该参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得该第一处理后音频信号的实部数据矩阵和虚部数据矩阵;基于该参考音频信号的实部数据矩阵和虚部数据矩阵以及该第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对该第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号。
根据本公开的一些示例性实施例,该获得该参考音频信号的幅度谱矩阵包括:对该参考音频信号进行快速傅里叶变换,以获得该参考音频信号的幅度谱矩阵;以及,该获得该待处理音频信号的幅度谱矩阵和相位谱矩阵包括:对该待处理音频信号进行快速傅里叶变换,以获得该待处理音频信号的幅度谱矩阵和相位谱矩阵。
根据本公开的一些示例性实施例,该基于该参考音频信号的幅度谱矩阵、该待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对该待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号包括:将该参考音频信号的幅度谱矩阵与该待处理音频信号的幅度谱矩阵拼接,生成拼接幅度谱矩阵;将该拼接幅度谱矩阵输入该第一神经网络,生成幅度谱过滤矩阵;基于该幅度谱过滤矩阵和该待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵;以该过滤后幅度谱矩阵和该待处理音频信号的相位谱矩阵共同作为输入参数,进行快速傅里叶逆变换,以生成该第一处理后音频信号。
根据本公开的一些示例性实施例,该幅度谱过滤矩阵的大小与该待处理音频信号的幅度谱矩阵的大小相同,并且其中,该基于该幅度谱过滤矩阵和该待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵包括:将该待处理音频信号的幅度谱矩阵中每一个元素与该幅度谱过滤矩阵中对应位置的一个元素相乘,以生成该过滤后幅度谱矩阵。
根据本公开的一些示例性实施例,该基于该幅度谱过滤矩阵和该待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵包括:将该待处理音频信号的幅度谱矩阵与该幅度谱过滤矩阵进行卷积,以生成该过滤后幅度谱矩阵。
根据本公开的一些示例性实施例,该获得该参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得该第一处理后音频信号的实部数据矩阵和虚部数据矩阵包括:对该参考音频信号进行快速傅里叶变换,以获得该参考音频信号的实部数据矩阵和虚部数据矩阵;对该第一处理后音频信号进行快速傅里叶变换,以获得该第一处理后音频信号的实部数据矩阵和虚部数据矩阵。
根据本公开的一些示例性实施例,该基于该参考音频信号的实部数据矩阵和虚部数据矩阵以及该第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对该第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号包括:将该参考音频信号的实部数据矩阵与该第一处理后音频信号的实部数据矩阵拼接,生成拼接实部数据矩阵,并且将该参考音频信号的虚部数据矩阵与该第一处理后音频信号的虚部数据矩阵拼接,生成拼接虚部数据矩阵;将该拼接实部数据矩阵和该拼接虚部数据矩阵输入该第二神经网络,生成实部数据过滤矩阵和虚部数据过滤矩阵;基于该第一处理后音频信号的实部数据矩阵和该实部数据过滤矩阵,生成过滤后实部数据矩阵,基于该第一处理后音频信号的虚部数据矩阵和该虚部数据过滤矩阵,生成过滤后虚部数据矩阵;以该过滤后实部数据矩阵和该过滤后虚部数据矩阵共同作为输入参数,进行快速傅里叶逆变换,以生成该第二处理后音频信号。
根据本公开的一些示例性实施例,该实部数据过滤矩阵的大小与该第一处理后音频信号的实部数据矩阵的大小相同,该虚部数据过滤矩阵的大小与该第一处理后音频信号的虚部数据矩阵的大小相同,并且其中,该基于该第一处理后音频信号的实部数据矩阵和该实部数据过滤矩阵,生成过滤后实部数据矩阵,基于该第一处理后音频信号的虚部数据矩阵和该虚部数据过滤矩阵,生成过滤后虚部数据矩阵包括:将该第一处理后音频信号的实部数据矩阵中每一个元素与该实部数据过滤矩阵中对应位置的一个元素相乘,以生成该过滤后实部数据矩阵;将该第一处理后音频信号的虚部数据矩阵中每一个元素与该虚部数据过滤矩阵中对应位置的一个元素相乘,以生成该过滤后虚部数据矩阵。
根据本公开的一些示例性实施例,该基于该第一处理后音频信号的实部数据矩阵和该实部数据过滤矩阵,生成过滤后实部数据矩阵包括:将该第一处理后音频信号的实部数据矩阵与该实部数据过滤矩阵进行卷积,以生成该过滤后实部数据矩阵;以及,该基于该第一处理后音频信号的虚部数据矩阵和该虚部数据过滤矩阵,生成过滤后虚部数据矩阵包括:将该第一处理后音频信号的虚部数据矩阵与该虚部数据过滤矩阵进行卷积,以生成该过滤后虚部数据矩阵。
根据本公开的一些示例性实施例,该第一神经网络和该第二神经网络都是长短期记忆神经网络。
根据本公开的第二个方面,提供了一种神经网络训练方法,包括:获取参考音频信号和待处理音频信号,其中,该参考音频信号是通过本地扬声器播放的音频信号,该待处理音频信号是将本地麦克风采集的音频信号与真实音频信号混合而得到的混合音频信号;获得该参考音频信号的幅度谱矩阵,以及获得该待处理音频信号的幅度谱矩阵和相位谱矩阵;基于该参考音频信号的幅度谱矩阵、该待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对该待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号;获得该参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得该第一处理后音频信号的实部数据矩阵和虚部数据矩阵;基于该参考音频信号的实部数据矩阵和虚部数据矩阵以及该第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对该第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号;基于该第一处理后音频信号和该真实音频信号,获得第一信噪比损失值,基于该第二处理后音频信号和该真实音频信号,获得第二信噪比损失值;至少基于所述第一信噪比损失值和所述第二信噪比损失值,对该第一神经网络和该第二神经网络中的至少一个进行调整。
根据本公开的一些示例性实施例,至少基于所述第一信噪比损失值和所述第二信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整包括:对所述第一信噪比损失值和所述第二信噪比损失值进行加权求和,获得综合信噪比损失值;基于所述综合信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整
根据本公开的一些示例性实施例,该第一信噪比损失的权重大于该第二信噪比损失的权重。
根据本公开的一些示例性实施例,其中,至少基于所述第一信噪比损失值和所述第二信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整包括:
将该第一处理后音频信号输入基于CTC的声学模型,获得CTC损失值;对该第一信噪比损失值、该第二信噪比损失值和该CTC损失值进行加权求和,获得综合损失值;以及基于该综合损失值,对该第一神经网络和该第二神经网络中的至少一个进行调整。
根据本公开的一些示例性实施例,该第一信噪比损失值和该第二信噪比损失值都是尺度不变信噪比损失值。
根据本公开的第三个方面,提供了一种音频信号处理装置,包括:音频信号获取模块,其被配置成:获取参考音频信号和待处理音频信号,其中,所述参考音频信号是通过本地扬声器播放的音频信号,所述待处理音频信号是通过本地麦克风采集的音频信号;音频信号频域信息获取模块,其被配置成:获得该参考音频信号的幅度谱矩阵,以及获得该待处理音频信号的幅度谱矩阵和相位谱矩阵;频域回声消除处理模块,其被配置成:基于该参考音频信号的幅度谱矩阵和该待处理音频信号的幅度谱矩阵,利用第一神经网络对该待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号;音频信号时域信息获取模块,其被配置成:获得该参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得该第一处理后音频信号的实部数据矩阵和虚部数据矩阵;时域回声消除处理模块,其被配置成:基于该参考音频信号的实部数据矩阵和虚部数据矩阵以及该第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对该第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号。
根据本公开的第四个方面,提供了一种计算设备,包括处理器和存储器,该存储器被配置成存储计算机可执行指令,该计算机可执行指令被配置成当在该处理器上执行时,使该处理器执行根据本公开的第一个方面及其示例性实施例该的音频信号处理方法,或者使该处理器执行根据本公开的第二个方面及其示例性实施例该的神经网络训练方法。
根据本公开的第五个方面,提供了一种计算机可读存储介质,其被配置成存储计算机可执行指令,该计算机可执行指令被配置成当在处理器上执行时,使该处理器执行根据本公开的第一个方面及其示例性实施例该的音频信号处理方法,或者使该处理器执行根据本公开的第二个方面及其示例性实施例该的神经网络训练方法。
根据本公开的第六个方面,提供了一种计算机程序产品,其包括计算机可执行指令,该计算机可执行指令被配置成当在处理器上执行时,使该处理器执行根据本公开的第一个方面及其示例性实施例该的音频信号处理方法,或者使该处理器执行根据本公开的第二个方面及其示例性实施例该的神经网络训练方法。
因此,根据本公开提供的音频信号处理方法通过首先在频域基于音频信号的幅度谱进行频域回声消除处理,随后在时域基于音频信号的实部数据和虚部数据进行时域回声消除处理,以考虑到相位信息的作用,从而使得其对音频信号的回声消除效果具有明显的提升。
此外,根据本公开提供的神经网络训练方法能够基于频域回声消除的结果和时域回声消除的结果两者,或者基于频域回声消除的结果、时域回声消除的结果以及声学模型的评估结果,对第一神经网络和/或第二神经网络进行联合训练,因此,能够进一步提升音频信号处理方法对回声消除的质量。
附图说明
下面将结合附图对本公开的具体实施例进行详细的描述,以便能够对本公开的更多细节、特征和优点具有更加充分的认识和理解;在附图中:
图1示意性示出了根据本公开一些示例性实施例的音频信号处理方法的应用场景;
图2示意性地示出了相关技术中的一种基于神经网络模型的回声消除模型;
图3以流程图的形式示意性地示出了根据本公开的一些示例性实施例提供的一种音频信号处理方法;
图4根据本公开的一些示例性实施例,示意性地示出了图3所示的音频信号处理方法的一些细节;
图5根据本公开的一些示例性实施例,示意性地示出了图3所示的音频信号处理方法的一些细节;
图6示意性地示出了根据本公开的一些示例性实施例提供的一种音频信号处理模型;
图7a以流程图的形式示意性地示出了根据本公开的一些示例性实施例提供的一种神经网络训练方法;
图7b根据本公开的一些示例性实施例,示意性地示出了图7a所示的神经网络训练方法的一些细节;
图8示意性地示出了根据本公开的一些示例性实施例提供的一种神经网络训练模型;
图9以流程图的形式示意性地示出了根据本公开的一些示例性实施例提供的另一种神经网络训练方法;
图10示意性地示出了根据本公开的一些示例性实施例提供的另一种神经网络训练模型;
图11以框图的形式示意性地示出了根据本公开的一些示例性实施例的一种音频信号处理装置的结构;
图12以框图的形式示意性地示出了根据本公开的一些实施例的一种计算设备的结构。
应理解的是,附图中显示的内容都仅仅是示意性的,因此其不必按照比例进行绘制。此外,在全部附图中,相同或相似的特征由相同或相似的附图标记指示。
具体实施方式
下面的描述提供了本公开的各示例性实施例的特定细节,以便本领域的技术人员能够充分理解和实施根据本公开的技术方案。
首先,对本公开的示例性实施例中涉及的部分术语进行说明,以便于本领域技术人员理解:
人工智能(Artificial Intelligence,即AI):利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换言之,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并实现一种新的能以人类智能相似的方式做出反应的智能机器。人工智能研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,即ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
回声消除(Acoustic Echo Cancelling,即AEC)是透过音波干扰方式消除麦克风与扬声器因音频信号的回受路径而产生的杂音。AEC的主要功能是估计本地扬声器到本地麦克风的包括了反射路径的声学传输函数,通过估计的声学传输函数过滤传入的音频信号,得到回声信号的估计。然后从麦克风信号中减去估计的回声,得到无回声的信号,并且将该无回声的信号,而非麦克风信号,通过信道传输给远端。传统的AEC往往采用自适应滤波方式,近来,随着人工智能和机器学习的发展,神经网络被提出用于AEC,其尤其有利于去除音频信号中的非线性残留。
信噪比(Signal-Noise Ratio,即SNR):一个电子设备或者电子***中信号(或信息)与噪声的比例。这里面的信号指的是来自设备外部需要进行处理的信号,噪声是指经过处理后产生的原信号中并不存在的无规则的额外信号(或信息),并且该种信号并不随原信号的变化而变化。
尺度不变信噪比(Scale-invariant Signal-to-Noise Ratio,即SiSNR)是指不受信号变化影响的信噪比。例如,在通过正则化消减信号的变化导致的影响的情况下,SiSNR可以按照以下公式进行计算:
字符错误率(Character Error Rate,即CER)是语音识别准确性最常用的一种度量标准。CER可以被计算为CER = (S + D + I) / (S + D + C),其中,S为被替换的字符数,D为被删除的字符数,I为***的字符数,C为正确的字数。
基于连接时序分类(Connectionist Temporal Classification,即CTC)的声学模型是本领域中熟知的声学模型,其基于时序分类方法,不需要在时间维度上进行帧级别的对齐,因此输入语音特征即可预测结果。相对于传统的声学模型(例如,基于深度神经网络-隐马尔科夫模型(Deep Neural Network - Hidden Markov Model,即DNN-HMM)的声学模型),基于CTC的声学模型极大地简化了声学模型的训练流程,因而简化了建模过程。
参见图1,其示意性示出了根据本公开一些示例性实施例的音频信号处理方法的应用场景。如图1所示,示例性应用场景100中包括第一终端设备110、服务器120以及第二终端设备130,并且第一终端设备110和第二终端设备130能够分别通过网络140以有线或无线的方式与服务器120直接或间接地连接进行通信。
服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,本公开对此不作限制。第一终端设备110和第二终端设备130可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。网络140的示例可以包括局域网(LAN)、广域网(WAN)、个域网(PAN)、和/或诸如因特网之类的通信网络的任意组合,本公开对此不作限制。相应地,第一终端设备110、服务器120以及第二终端设备130中的每一个可以包括能够通过网络140进行通信的至少一个通信接口(未示出)。这样的通信接口可以是下列各项中的一个或多个:任何类型的网络接口(例如,网络接口卡(NIC))、有线或无线(诸如IEEE 802.11无线LAN(WLAN))无线接口、全球微波接入互操作(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、BluetoothTM接口、近场通信(NFC)接口等。应理解的是,图1所示的应用场景100所包括的第一终端设备110和第二终端设备130都仅仅是示例性的,因此,应用场景100可以包括更多的终端设备,例如,具有多个目标对象参与的实时通信会议的应用场景。此外,还应理解的是,在另一些示例性应用场景中,第一终端设备110和第二终端设备130可以直接相互进行通信,因此无需服务器120。
在图1所示的示例性应用场景100中,第二终端设备130可以采集音频信号,进行信道编码后得到参考音频信号,然后将该参考音频信号传输至服务器120,服务器120将该参考音频信号传输至第一终端设备110,第一终端设备110接收参考音频信号后,对参考音频信号进行信道解码,进而通过其具有的扬声器播放参考音频信号,同时,第一终端设备110也可以通过麦克风对本地的音频信号进行采集,并且在这个过程中因为其对通过扬声器播放的参考音频信号也进行采集而生成回声信号,所以,第一终端设备110通过麦克风采集的音频信号包括回声信号。同理,对于第二终端设备130而言,其可以接收来自第一终端设备110的参考音频信号,并通过其具有的扬声器进行播放,同时第二终端设备110也可以通过麦克风对本地的音频信号进行采集,并且在这个过程中因为其对通过扬声器播放的参考音频信号进行采集而生成回声信号。在这种情形中,第二终端设备130通过麦克风采集的音频信号也包括回声信号。因此,对于图1所示的示例性应用场景中的终端设备而言,需要对采集的音频信号进行回声消除处理。
传统技术中,一般使用自适应滤波器来消除回声中的线性部分,然而回声中的非线性部分往往难以被消除。近来,神经网络开始被应用于回声消除,与传统的自适应滤波器相比,神经网络模型能够去除音频信号具有的回声中的线性部分和非线性部分。
参见图2,其示意性地示出了相关技术中的一种基于神经网络的回声消除模型。如图2所示,回声消除模型200首先获取参考音频信号和待处理音频信号,其中,参考音频信号是通过本地扬声器播放的音频信号,待处理音频信号是通过本地麦克风采集的音频信号。参考音频信号被输入到第一快速傅里叶变换模块210a中进行快速傅里叶变换,以获得该参考音频信号的幅度谱矩阵220,待处理音频信号被输入到第二快速傅里叶变换模块210b中进行快速傅里叶变换,以获得该待处理音频信号的幅度谱矩阵230和相位谱矩阵240。然后,参考音频信号的幅度谱矩阵220和待处理音频信号的幅度谱矩阵230被输入到拼接处理模块250进行拼接处理。拼接的幅度谱矩阵被输入到长短期记忆神经网络(即,LSTM神经网络)260中,以生成幅度谱掩蔽矩阵270。幅度谱掩蔽矩阵270和待处理音频信号的幅度谱矩阵230被输入到相乘处理模块280,以将待处理音频信号的幅度谱矩阵230中每一个元素与幅度谱掩蔽矩阵270中对应位置的一个元素相乘,以生成掩蔽后幅度谱矩阵。掩蔽后幅度谱矩阵和待处理音频信号的相位谱矩阵240一起被输入到傅里叶逆变换模块290进行傅里叶逆变换,以生成处理后音频信号。该处理后音频信号便是经由回声消除模型200处理后得到的音频信号。
由上述分析可见,回声消除模型200将待处理音频信号转换到频域,获得相应的幅度谱和相位谱,对幅度谱进行回声消除处理,然后结合相位谱变换到时域,以生成处理后的音频信号。回声消除模型200中,LSTM神经网络260仅针对音频信号的幅度谱进行回声消除处理,而摒弃了相位谱。然而,音频信号的相位信息实质上对于神经网络对信号的处理是有利的,其能够进一步提升神经网络对回声信号进行消除的性能。因此,相关技术的回声消除模型200中,LSTM神经网络260在处理过程中摒弃相位谱的操作对于回声消除的质量会带来不利影响。
参见图3,其以流程图的形式示意性地示出了根据本公开的一些示例性实施例提供的一种音频信号处理方法。如图3所示,音频信号处理方法300包括步骤310、320、330、340和350。
在步骤310中,获取参考音频信号和待处理音频信号,其中,所述参考音频信号是通过本地扬声器播放的音频信号,所述待处理音频信号是通过本地麦克风采集的音频信号。应理解的是,本地扬声器和本地麦克风意指扬声器和麦克风处于同一空间,因此,扬声器播放的音频信号(即,参考音频信号)可以在该空间中被多次反射并且可以被麦克风采集,从而生成待处理音频信号中包含的回声信号。参考音频信号可以具有多种来源,作为非限制性示例,参考音频信号可以是远程终端设备采集并传送的音频信号,或者可以是从服务器接收的可由扬声器播放的音频信号,或者可以是本地终端设备处可通过扬声器播放的任何音频信号,只要该音频信号通过本地扬声器播放,并且由此可以被本地麦克风采集而形成回声信号便可。本公开对参考音频信号的来源不作限制。由于待处理音频信号中包含了播放参考音频信号而导致的回声信号,因此需要对待处理音频信号进行回声消除处理。
在步骤320中,获得所述参考音频信号的幅度谱矩阵,以及获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵。应理解的是,可以采用任何合适的方法来获得参考音频信号的幅度谱矩阵,以及获得待处理音频信号的幅度谱矩阵和相位谱矩阵,本公开对此不作限制。在本公开的一些示例性实施例中,可以对参考音频信号进行快速傅里叶变换,以获得参考音频信号的幅度谱矩阵,并且可以对待处理音频信号也进行快速傅里叶变换,以获得待处理音频信号的幅度谱矩阵和相位谱矩阵。通过快速傅里叶变换,能够快速、方便地获得参考音频信号和待处理音频信号的频域特征,即幅度谱和相位谱。应理解的是,获得音频信号的幅度谱和相位谱的任何合适的方法都是可能的,本公开对此不作限制。例如,在本公开的另一些示例性实施例中,也可以将参考音频信号和待处理音频信号分别输入到经训练的神经网络模型中,以分别获得参考音频信号的幅度谱矩阵以及待处理音频信号的幅度谱矩阵和相位谱矩阵。
在步骤330中,基于所述参考音频信号的幅度谱矩阵、所述待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对所述待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号。在该步骤中,通过对待处理音频信号的频域特征进行相应的处理,使得能够在频域中实现对待处理音频信号的回声消除处理。作为非限制性示例,第一神经网络可以被配置成:基于参考音频信号的幅度谱矩阵和待处理音频信号的幅度谱矩阵,生成幅度谱过滤矩阵。例如,幅度谱过滤矩阵可以是大小与待处理音频信号的幅度谱矩阵的大小相同的掩蔽矩阵,或者可以是能够与待处理音频信号的幅度谱矩阵进行卷积的卷积矩阵。由此可见,第一神经网络的功能在于:基于所获取的参考音频信号和待处理音频信号两者的频域特征(即,两者的幅度谱矩阵),适应性地生成相应的过滤矩阵,该过滤矩阵随后可被用于对待处理音频信号的频域特征(即,待处理音频信号的幅度谱矩阵)进行过滤处理。由此,基于第一神经网络,能够实现在频域中对待处理音频信号的回声消除处理。下文中将会对第一神经网络的功能进行更详细的描述。此外,应理解的是,第一神经网络可以是任何合适的神经网络模型,例如但不限于,全连接神经网络、卷积神经网络、循环神经网络以及LSTM神经网络,等等。本公开对可用作第一神经网络的神经网络的类型不作限制。
参见图4,其根据本公开的一些示例性实施例,示意性地示出了图3所示的音频信号处理方法300的步骤330的细节。如图4所示,在本公开的一些示例性实施例中,音频信号处理方法300的步骤330包括步骤330-1、330-2、330-3和330-4。
在步骤330-1中,将所述参考音频信号的幅度谱矩阵与所述待处理音频信号的幅度谱矩阵拼接,生成拼接幅度谱矩阵。在步骤330-2中,将所述拼接幅度谱矩阵输入所述第一神经网络,生成幅度谱过滤矩阵。在步骤330-3中,基于所述幅度谱过滤矩阵和所述待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵。在步骤330-4中,以所述过滤后幅度谱矩阵和所述待处理音频信号的相位谱矩阵共同作为输入参数,进行快速傅里叶逆变换,以生成所述第一处理后音频信号。本公开的一些示例性实施例中,上述步骤330-2中生成的幅度谱过滤矩阵的大小与待处理音频信号的幅度谱矩阵的大小相同,由此,在步骤330-3中,可以将待处理音频信号的幅度谱矩阵中每一个元素与幅度谱过滤矩阵中对应位置的一个元素相乘,以生成过滤后幅度谱矩阵。应理解的是,这里的术语“对应位置”指的是待处理音频信号的幅度谱矩阵中的元素在该矩阵中的位置编号与幅度谱过滤矩阵中对应的元素的位置编号相同。例如,都是位置编号为(m, n)的元素(m和n为大于0的任意整数),等等。此外,根据本公开的另一些示例性实施例,在步骤330-3中,可以将待处理音频信号的幅度谱矩阵与幅度谱过滤矩阵进行卷积,以生成过滤后幅度谱矩阵。在这种情况下,上述步骤330-2中生成的幅度谱过滤矩阵的大小与待处理音频信号的幅度谱矩阵的大小不必相同。
对应位置的元素直接相乘,其操作简单,计算量相对较小,模型的复杂程度较低。采用卷积运算,其计算量相对较大,但是其信号的过滤效果好,因此对于回声消除质量的提升非常有利。此外,应理解的是,可以采用任何合适的方式,基于幅度谱过滤矩阵和待处理音频信号的幅度谱矩阵生成过滤后幅度谱矩阵,本公开对此不作限制。
返回参考图3,在步骤340中,获得所述参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵。应理解的是,可以采用任何合适的方法来获得参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得待处理音频信号的实部数据矩阵和虚部数据矩阵,本公开对此不作限制。在本公开的一些示例性实施例中,可以对参考音频信号进行快速傅里叶变换,以获得参考音频信号的实部数据矩阵和虚部数据矩阵,并且可以对待处理音频信号也进行快速傅里叶变换,以获得待处理音频信号的实部数据矩阵和虚部数据矩阵。通过快速傅里叶变换,能够快速、方便地获得参考音频信号和待处理音频信号的时域特征,即实部数据矩阵和虚部数据矩阵。应理解的是,获得音频信号的实部数据矩阵和虚部数据矩阵的任何合适的方法都是可能的,本公开对此不作限制。例如,在本公开的另一些示例性实施例中,也可以将参考音频信号和待处理音频信号分别输入到经训练的神经网络模型中,以分别获得参考音频信号的实部数据矩阵和虚部数据矩阵以及待处理音频信号的实部数据矩阵和虚部数据矩阵。
在步骤350中,基于所述参考音频信号的实部数据矩阵和虚部数据矩阵以及所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对所述第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号。在该步骤中,通过对待处理音频信号的时域特征进行相应的处理,使得能够在时域中实现对待处理音频信号的回声消除处理。作为非限制性示例,第二神经网络可以被配置成:基于参考音频信号的实部数据矩阵和虚部数据矩阵以及第一处理后音频信号的实部数据矩阵和虚部数据矩阵,分别生成实部数据过滤矩阵和虚部数据过滤矩阵。例如,实部数据过滤矩阵和虚部数据过滤矩阵可以是大小分别与第一处理后音频信号的实部数据矩阵和虚部数据矩阵的大小相同的掩蔽矩阵,或者可以是分别能够与第一处理后音频信号的实部数据矩阵和虚部数据矩阵进行卷积的卷积矩阵。由此可见,第二神经网络的功能在于:基于所获取的参考音频信号和第一处理后音频信号两者的时域特征(即,两者的实部数据矩阵和虚部数据矩阵),适应性地生成相应的过滤矩阵,这些过滤矩阵随后可被用于对第一处理后音频信号的时域特征(即,第一处理后音频信号的实部数据矩阵和虚部数据矩阵)进行过滤。由此,基于第二神经网络,能够实现在时域中对第一处理后音频信号的回声消除处理。下文中将会对第二神经网络的功能进行更详细的描述。此外,应理解的是,第二神经网络同样可以是任何合适的神经网络模型,例如但不限于,全连接神经网络、卷积神经网络、循环神经网络以及LSTM神经网络,等等。本公开对于可用作第二神经网络的神经网络的类型不作任何限制。
参见图5,其根据本公开的一些示例性实施例,示意性地示出了图3所示的音频信号处理方法300的步骤350的细节。如图5所示,在本公开的一些示例性实施例中,音频信号处理方法300的步骤350包括步骤350-1、350-2、350-3和350-4。
在步骤350-1中,将所述参考音频信号的实部数据矩阵与所述第一处理后音频信号的实部数据矩阵拼接,生成拼接实部数据矩阵,并且将所述参考音频信号的虚部数据矩阵与所述第一处理后音频信号的虚部数据矩阵拼接,生成拼接虚部数据矩阵。在步骤350-2中,将所述拼接实部数据矩阵和所述拼接虚部数据矩阵输入所述第二神经网络,生成实部数据过滤矩阵和虚部数据过滤矩阵。在步骤350-3中,基于所述第一处理后音频信号的实部数据矩阵和所述实部数据过滤矩阵,生成过滤后实部数据矩阵,基于所述第一处理后音频信号的虚部数据矩阵和所述虚部数据过滤矩阵,生成过滤后虚部数据矩阵。在步骤350-4中,以所述过滤后实部数据矩阵和所述过滤后虚部数据矩阵共同作为输入参数,进行快速傅里叶逆变换,以生成所述第二处理后音频信号。本公开的一些示例性实施例中,上述步骤350-2中生成的实部数据过滤矩阵的大小与第一处理后音频信号的实部数据矩阵的大小相同,并且生成的虚部数据过滤矩阵的大小与第一处理后音频信号的虚部数据矩阵的大小相同,由此,在步骤350-3中,可以将第一处理后音频信号的实部数据矩阵中每一个元素与实部数据过滤矩阵中对应位置的一个元素相乘,以生成过滤后实部数据矩阵,并且可以将第一处理后音频信号的虚部数据矩阵中每一个元素与虚部数据过滤矩阵中对应位置的一个元素相乘,以生成过滤后虚部数据矩阵。如上文中已经详细解释的,这里的术语“对应位置”指的是第一处理后音频信号的实部数据矩阵中的元素在该矩阵中的位置编号与实部数据过滤矩阵中对应的元素的位置编号相同,以及第一处理后音频信号的虚部数据矩阵中的元素在该矩阵中的位置编号与虚部数据过滤矩阵中对应的元素的位置编号相同。此外,根据本公开的另一些示例性实施例,在步骤350-3中,可以将第一处理后音频信号的实部数据矩阵与实部数据过滤矩阵进行卷积,以生成过滤后实部数据矩阵,并且可以将第一处理后音频信号的虚部数据矩阵与虚部数据过滤矩阵进行卷积,以生成过滤后虚部数据矩阵。在这种情况下,上述步骤350-2中生成的实部数据过滤矩阵的大小与第一处理后音频信号的实部数据矩阵的大小不必相同,并且生成的虚部数据过滤矩阵的大小与第一处理后音频信号的虚部数据矩阵的大小和不必相同。
对应位置的元素直接相乘,其操作简单,计算量相对较小,模型的复杂程度较低。采用卷积运算,其计算量相对较大,但是其信号的过滤效果好,因此对于回声消除质量的提升非常有利。应理解的是,可以采用任何合适的方式,基于实部数据过滤矩阵和第一处理后音频信号的实部数据矩阵生成过滤后实部数据矩阵,以及基于虚部数据过滤矩阵和第一处理后音频信号的虚部数据矩阵生成过滤后虚部数据矩阵,本公开对此不作限制。
参见图6,其示意性地示出了根据本公开的一些示例性实施例提供的一种音频信号处理模型,该音频信号处理模型对应于图3至图5所示的音频信号处理方法。如图6所示,音频信号处理模型400首先获取参考音频信号和待处理音频信号,其中,参考音频信号是通过本地扬声器播放的音频信号,待处理音频信号是通过本地麦克风采集的音频信号。参考音频信号被输入到第一快速傅里叶变换模块410a中进行快速傅里叶变换,以获得该参考音频信号的幅度谱矩阵420a,待处理音频信号被输入到第二快速傅里叶变换模块410b中进行快速傅里叶变换,以获得该待处理音频信号的幅度谱矩阵430a和相位谱矩阵440。参考音频信号的幅度谱矩阵420a和待处理音频信号的幅度谱矩阵430a被输入到第一拼接处理模块450a进行拼接处理,以生成拼接幅度谱矩阵。然后,拼接幅度谱矩阵被输入到第一LSTM神经网络460a中,以生成幅度谱过滤矩阵470a。幅度谱过滤矩阵470a和待处理音频信号的幅度谱矩阵430a被输入到第一过滤处理模块480a。第一过滤处理模块480a可以将待处理音频信号的幅度谱矩阵430a中每一个元素与幅度谱过滤矩阵470a中对应位置的一个元素相乘,以生成过滤后幅度谱矩阵,或者,第一过滤处理模块480a可以将待处理音频信号的幅度谱矩阵430a与幅度谱过滤矩阵470a进行卷积,以生成过滤后幅度谱矩阵。过滤后幅度谱矩阵和待处理音频信号的相位谱矩阵440被输入到第一傅里叶逆变换模块490a进行傅里叶逆变换,以生成第一处理后音频信号。参考音频信号还被输入到第三快速傅里叶变换模块410c中进行快速傅里叶变换,以获得该参考音频信号的实部数据矩阵420b和虚部数据矩阵420c。第一处理后音频信号被输入到第四快速傅里叶变换模块410d中进行快速傅里叶变换,以获得该第一处理后音频信号的实部数据矩阵430b和虚部数据矩阵430c。参考音频信号的实部数据矩阵420b和虚部数据矩阵420c,以及第一处理后音频信号的实部数据矩阵430b和虚部数据矩阵430c,被输入到第二拼接处理模块450b分别进行拼接处理,以便相应地生成拼接实部数据矩阵和拼接虚部数据矩阵。然后,拼接实部数据矩阵和拼接虚部数据矩阵被输入到第二LSTM神经网络460b中,以相应地生成实部数据过滤矩阵470b和虚部数据过滤矩阵470c。实部数据过滤矩阵470b和第一处理后音频信号的实部数据矩阵430b被输入到第二过滤处理模块480b。第二过滤处理模块480b可以将第一处理后音频信号的实部数据矩阵430b中每一个元素与实部数据过滤矩阵470b中对应位置的一个元素相乘,以生成过滤后实部数据矩阵,或者,第二过滤处理模块480b可以将第一处理后音频信号的实部数据矩阵430b与实部数据过滤矩阵470b进行卷积,以生成过滤后实部数据矩阵。虚部数据过滤矩阵470c和第一处理后音频信号的虚部数据矩阵430c被输入到第三过滤处理模块480c。第三过滤处理模块480c可以将第一处理后音频信号的虚部数据矩阵430c中每一个元素与虚部数据过滤矩阵470c中对应位置的一个元素相乘,以生成过滤后虚部数据矩阵,或者,第三过滤处理模块480c可以将第一处理后音频信号的虚部数据矩阵430c与虚部数据过滤矩阵470c进行卷积,以生成过滤后虚部数据矩阵。过滤后实部数据矩阵和过滤后虚部数据矩阵被输入到第二傅里叶逆变换模块490b进行傅里叶逆变换,以生成第二处理后音频信号。
由上述分析可知,频域建模的粒度更大,只能学习幅度谱,建模能力较差,但消耗的算力较少,时域建模有更细的粒度,因此建模能力更好,但同时也需要更大的模型,需要消耗更大的算力。因此,根据本公开的示例性实施例提供的音频信号处理方法以及音频信号处理模型采用了时频域混合的方式,从而可以获取二者的优点,弥补二者不足,使得既具有较细的粒度,较强的建模能力,同时消耗的算力较少。
因此,根据本公开的示例性实施例提供的音频信号处理方法和音频信号处理模型,通过首先在频域基于音频信号的幅度谱进行频域回声消除处理,随后在时域基于音频信号的实部数据和虚部数据进行时域回声消除处理,以考虑到相位信息的作用,从而使得其对音频信号的回声消除效果具有明显的提升。例如,在进行回声消除处理后,可以对处理后的语音信号进行语音识别,并与真实语音信号的内容进行对照以获得相应的字符错误率(即CER),用于检验回声消除处理的效果。相比常规的回声消除处理,利用本公开的示例性实施例提供的音频信号处理方法对语音信号进行回声消除处理,在进行语音识别的情况下,CER相对下降了大约16%,如下表所示:
回声消除处理方法 | 测试集CER |
常规AEC | 9.42 |
根据本公开的音频信号处理方法 | 7.88 |
因此,根据本公开的示例性实施例提供的音频信号处理方法和音频信号处理方案相比传统的回声消除方法,提升了回声消除效果,改进了语音传输的质量,因此也改善了用户体验。此外,第一神经网络460a和第二神经网络460b都可以通过特定的音频信号进行训练,以便能够实现对相应的音频信号的频域和时域的回声消除处理,这将在下文中详述。
参见图7a,其以流程图的形式示意性地示出了根据本公开的一些示例性实施例提供的一种神经网络训练方法,该神经网络训练方法可以用于对上述音频信号处理方法和音频信号处理模型中用到的第一神经网络和第二神经网络进行训练。如图7a所示,神经网络训练方法500包括步骤510、520、530、540、550、560和570。
在步骤510中,获取参考音频信号和待处理音频信号,其中,所述参考音频信号是通过本地扬声器播放的音频信号,所述待处理音频信号是将本地麦克风采集的音频信号与真实音频信号混合而得到的混合音频信号。因此,在神经网络训练方法500中,本地麦克风采集的音频信号实质上是完全是本地扬声器播放的参考音频信号导致的回声信号,由此,该回声信号与真实音频信号混合后得到的混合音频信号和参考音频信号一起就构成了可用于对第一神经网络和第二神经网络进行训练的音频信号。步骤520至550与图3所示的音频信号处理方法300中的步骤320至350相同,因此这里不再赘述。应理解的是,在一些示例性实施例中,步骤530也可以包括图4所示那些步骤,步骤550也可以包括图5所示的那些步骤。在步骤560中,基于所述第一处理后音频信号和所述真实音频信号,获得第一信噪比损失值,基于所述第二处理后音频信号和所述真实音频信号,获得第二信噪比损失值。在本公开的一些示例性实施例中,第一信噪比损失值和第二信噪比损失值都可以是尺度不变信噪比损失值(即,SiSNR Loss)。然而,用于计算信号质量损失的任何其他合适的指标也是可能的,本公开对此不作限制。在步骤570中,至少基于所述第一信噪比损失值和所述第二信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整。
参见图7b,其根据本公开的一些示例性实施例,对步骤570加以进一步的限定。如图7b所示,步骤570进一步包括:步骤570-1,对所述第一信噪比损失值和所述第二信噪比损失值进行加权求和,获得综合信噪比损失值;以及,步骤570-2,基于所述综合信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整。在本公开的一些示例性实施例中,取决于应用中对第一神经网络和第二神经网络的依赖程度的不同,第一信噪比损失值的权重可以与第二信噪比损失值的权重不同,例如,第一信噪比损失值的权重可以大于第二信噪比损失值的权重。在本公开的一些示例性实施例中,基于这种情形,可以利用根据本公开的示例性实施例的神经网络训练方法对第一神经网络和第二神经网络进行联合训练,但在实际应用中可以只采用第一神经网络进行回声消除处理,而无需用到第二神经网络。由此,在实际应用中,可以减小回声消除处理的复杂程度,并且因此减少计算量,但同时仍能确保回声处理的质量。在本公开的另一些示例性实施例中,第一信噪比损失值的权重可以小于第二信噪比损失值的权重,或者第一信噪比损失值的权重可以等于第二信噪比损失值的权重。应理解的是,本公开中列举的信噪比损失值或者尺度不变信噪比损失值都是示例性的,实际上,任何合适的其他指标都可以被用来对神经网络进行训练,本公开对此不作限制。
参见图8,其示意性地示出了根据本公开的一些示例性实施例提供的一种神经网络训练模型,该神经网络训练模型对应于图7所示的神经网络训练方法。应理解的是,图8所示的神经网络训练模型600与图6所示的音频信号处理模型400基本上相同,其区别仅在于图8所示的神经网络训练模型600还包括第一信噪比(Signal Noise Ratio,即SNR)损失计算模块610a、第二信噪比损失计算模块610b以及综合信噪比损失计算模块620。下文将仅就这些区别进行说明,与图6所示内容相同的地方将不再赘述。
第一信噪比损失计算模块610a从第一傅里叶逆变换模块490a接收第一处理后音频信号,并计算获得第一信噪比损失值。第二信噪比损失计算模块610b从第二傅里叶逆变换模块490b接收第二处理后音频信号,并计算获得第二信噪比损失值。综合信噪比损失计算模块620接收第一信噪比损失值和第二信噪比损失值,并对两者进行加权求和,以获得综合信噪比损失值。如上文所述,取决于应用中对第一神经网络和第二神经网络的依赖程度,第一信噪比损失值的权重可以与第二信噪比损失值的权重不同。例如,在本公开的另一些示例性实施例中,第一信噪比损失值的权重可以大于第二信噪比损失值的权重。在本公开的另一些示例性实施例中,第一信噪比损失值的权重可以小于或者等于第二信噪比损失值的权重。然后,基于综合信噪比损失值,可以对第一神经网络460a和第二神经网络460b中的至少一个进行调整。
由此,神经网络训练方法500以及神经网络训练模型600能够基于频域回声消除的结果和时域回声消除的结果两者,对第一神经网络和/或第二神经网络进行联合训练。此外,经过联合训练后,可以在实际应用中仅使用频域回声消除(即,第一神经网络460a及其相关环节),而无需时域回声消除(即,第二神经网络460b及其相关环节),使得应用中使用的神经网络模型的复杂度不会增加,同时确保了回声消除的高质量。
参见图9,其以流程图的形式示意性地示出了根据本公开的一些示例性实施例提供的另一种神经网络训练方法,该神经网络训练方法可以用于对上述音频信号处理方法和音频信号处理模型中用到的第一神经网络和第二神经网络进行训练。如图9所示,神经网络训练方法700包括步骤710、720、730、740、750、760、770、780和790。
神经网络训练方法700中的步骤710至760与图7所示的神经网络训练方法500中的步骤510至560相同,因此这里不再赘述。此外,应理解的是,在一些示例性实施例中,步骤730也可以包括图4所示那些步骤,步骤750也可以包括图5所示的那些步骤。在步骤770中,将所述第一处理后音频信号输入基于CTC的声学模型,获得CTC损失值。在步骤780中,对所述第一信噪比损失值、所述第二信噪比损失值和所述CTC损失值进行加权求和,获得综合损失值。在步骤790中,基于所述综合损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整。在本公开的一些示例性实施例中,第一信噪比损失值和第二信噪比损失值都可以是尺度不变信噪比损失值(即,SiSNR Loss)。然而,用于计算信号质量损失的任何其他合适的指标也是可能的,本公开对此不作限制。此外,在本公开的一些示例性实施例中,第一信噪比损失值、第二信噪比损失值、CTC损失值可以分别具有不同的权重。例如,第一信噪比损失值的权重可以比第二信噪比损失值的权重和CTC损失值的权重都大。然而应理解的是,取决于实际情况,关于第一信噪比损失值、第二信噪比损失值和CTC损失值的任何其他权重都是可能的。
参见图10,其示意性地示出了根据本公开的一些示例性实施例提供的另一种神经网络训练模型,该神经网络训练模型对应于图9所示的神经网络训练方法。应理解的是,图10所示的神经网络训练模型800与图8所示的神经网络训练模型600基本上相同,其区别仅在于图10所示的神经网络训练模型800还包括综合损失值计算模块810以及基于CTC的声学模型。下文将仅就这些区别进行说明,与图8所示内容相同的地方将不再赘述。
如图10所示,来自第一傅里叶逆变换模块490a的第一处理后音频被输送到滤波器组(Filter Banks,即FBank)特征提取模块820,以获取频带特征,随后依次经过差分处理模块830和均方值差处理模块840,以获得声学特征,该声学特征随后被经过卷积模块850,然后送入第三神经网络模块860进行处理,并且在经过线性化模块870进行线性化处理后,被送入CTC损失值计算模块880,以计算得到CTC损失值。如图10所示,在该示例性实施例中,第三神经网络模块860可以包括LSTM网络和批量样本归一化层(Batch Normalization,即BN层)。然而,第三神经网络模块860可以包括其他类型的神经网络模型,例如全连接神经网络、卷积神经网络、循环神经网络等等,本公开对此不作限制。此外,上述FBank特征提取模块820、差分处理模块830、均方值差处理模块840、卷积模块850、第三神经网络模块860、线性化模块870和CTC损失值计算模块880一起构成了一个示例性的基于CTC模型的声学模型,其是本领域的技术人员所熟知的,因此这里不再赘述。应理解的是,其他类型的基于CTC的声学模型也是可能的,本公开对此也不作限制。综合损失值计算模块810接收第一信噪比损失值、第二信噪比损失值和CTC损失值,并对这三者进行加权求和,以获得综合损失值。然后,基于综合信噪比损失值,可以对第一神经网络460a和第二神经网络460b中的至少一个进行调整,或者可以对第一神经网络460a、第二神经网络460b和第三神经网络860中的至少一个进行调整。
由此,神经网络训练方法700以及神经网络训练模型800能够基于频域回声消除的结果、时域回声消除的结果以及声学模型的评估结果,对第一神经网络和/或第二神经网络进行联合训练。在联合训练中,声学模型的梯度能够传递到第一神经网络和第二神经网络,以便对其进行进一步的训练,因此能够进一步提升所训练的神经网络的性能。此外,因为训练时声学模型没有更新,因此训练后的音频信号处理模型上线时可以直接接入其他没有经过联合训练的声学模型,使得训练后的音频信号处理模型具有很强的通用性。
参见图11,其以框图的形式示意性地示出了根据本公开的一些示例性实施例的一种音频信号处理装置的结构。如图11所示,音频信号处理装置900包括:音频信号获取模块910、音频信号频域信息获取模块920、频域回声消除处理模块930、音频信号时域信息获取模块940和时域回声消除处理模块950。
音频信号获取模块910被配置成:获取参考音频信号和待处理音频信号。音频信号频域信息获取模块920被配置成:获得所述参考音频信号的幅度谱矩阵,以及获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵。频域回声消除处理模块930被配置成:基于所述参考音频信号的幅度谱矩阵和所述待处理音频信号的幅度谱矩阵,利用第一神经网络对所述待处理音频信号进行频域回声消除处理,生成第一处理后音频信号。音频信号时域信息获取模块940被配置成:获得所述参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵。时域回声消除处理模块950被配置成:基于所述参考音频信号的实部数据矩阵和虚部数据矩阵以及所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对所述第一处理后音频信号进行时域回声消除处理,生成第二处理后音频信号。上述各个模块涉及在上文中关于图3描述的步骤310至350的操作,因而在此不再赘述。
此外,上面关于图11描述的各个模块均可以在硬件中或在结合软件和/或固件的硬件中实现。例如,这些模块可以被实现为计算机可执行代码/指令,该计算机可执行代码/指令被配置为在一个或多个处理器中执行并存储在计算机可读存储介质中。可替换地,这些模块可以被实现为硬件逻辑/电路。例如,在一些实施例中,这些模块中的一个或多个可以一起在片上***(SoC)中实现。SoC可以包括集成电路芯片(其包括处理器(例如,中央处理单元(CPU)、微控制器、微处理器、数字信号处理器(DSP)等)、存储器、一个或多个通信接口、和/或其他电路中的一个或多个部件),并且可以可选地执行所接收的程序代码和/或包括嵌入式固件以执行功能。
参见图12,其以框图的形式示意性地示出了根据本公开的一些实施例的一种计算设备1000的结构。计算设备1000可以被用于本公开描述的各种应用场景,并且其可以实施本公开描述的音频信号处理方法和/或神经网络训练方法。
计算设备1000可以包括能够诸如通过***总线1014或其他适当的方式连接彼此通信的至少一个处理器1002、存储器1004、(多个)通信接口1006、显示设备1008、其他输入/输出(I/O)设备1010以及一个或多个大容量存储装置1012。
处理器1002可以是单个处理单元或多个处理单元,所有处理单元可以包括单个或多个计算单元或者多个核心。处理器1002可以被实施成一个或多个微处理器、微型计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令来操纵信号的任何设备。除了其他能力之外,处理器1002可以被配置成获取并且执行存储在存储器1004、大容量存储装置1012或者其他计算机可读介质中的计算机可读指令,诸如操作***1016的程序代码、应用程序1018的程序代码、其他程序1020的程序代码等。
存储器1004和大容量存储设备1012是用于存储指令的计算机可读存储介质的示例,指令可以由处理器1002执行来实施前面所描述的各种功能。举例来说,存储器1004一般可以包括易失性存储器和非易失性存储器二者(例如RAM、ROM等等)。此外,大容量存储设备1012一般可以包括硬盘驱动器、固态驱动器、可移除介质、包括外部和可移除驱动器、存储器卡、闪存、软盘、光盘(例如CD、DVD)、存储阵列、网络附属存储、存储区域网等等。存储器1004和大容量存储设备1012在本文中都可以被统称为计算机可读存储器或计算机可读存储介质,并且可以是能够把计算机可读、处理器可执行程序指令存储为计算机可执行代码的非瞬时性介质,计算机可执行代码可以由处理器1002作为被配置成实施在本公开的各示例性实施例中所描述的操作和功能(例如,上述音频信号处理方法模型、神经网络训练方法、以及与其对应的模型)的特定机器来执行。
多个程序模块可以存储在大容量存储设备1012上。这些程序模块包括操作***1016、一个或多个应用程序1018、其他程序1020和程序数据1022,并且它们可以被处理器1002执行。这样的应用程序或程序模块的示例可以包括例如用于实现以下部件/功能的计算机程序逻辑(例如,计算机可执行代码或指令):音频信号获取模块910、音频信号频域信息获取模块920、频域回声消除处理模块930、音频信号时域信息获取模块940和时域回声消除处理模块950。
虽然在图12中被图示成存储在计算设备1000的存储器1004中,但是音频信号处理方法和模型、神经网络训练方法和模型、以及音频信号获取模块910、音频信号频域信息获取模块920、频域回声消除处理模块930、音频信号时域信息获取模块940和时域回声消除处理模块950或者它们的一部分可以使用可由计算设备1000访问的任何形式的计算机可读介质来实施。如本文所使用的,“计算机可读介质”至少包括两种类型的计算机可读介质,也就是计算机存储介质和通信介质。计算机存储介质包括通过用于存储信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质,信息诸如是计算机可读指令、数据结构、程序模块或者其他数据。计算机存储介质包括而不限于RAM、ROM、EEPROM、闪存或其他存储器技术,CD-ROM、数字通用盘(DVD)、或其他光学存储装置,磁盒、磁带、磁盘存储装置或其他磁性存储设备,或者可以被用来存储信息以供计算设备访问的任何其他非传送介质。与此相对,通信介质可以在诸如载波或其他传送机制之类的已调数据信号中具体实现计算机可读指令、数据结构、程序模块或其他数据。本公开所定义的计算机存储介质不包括通信介质。
计算设备1000还可以包括一个或更多通信接口1006,以用于诸如通过网络、直接连接等等与其他设备交换数据。通信接口1006可以促进在多种网络和协议类型内的通信,其中包括有线网络(例如LAN、电缆等等)和无线网络(例如WLAN、蜂窝、卫星等等)、因特网等等。通信接口1006还可以提供与诸如存储阵列、网络附属存储、存储区域网等等中的外部存储装置(未示出)的通信。
在一些示例中,计算设备1000还可以包括诸如显示器之类的显示设备1008,以用于显示信息和图像。其他I/O设备1010可以是接收来自目标对象的各种输入并且向目标对象提供各种输出的设备,包括但不限于触摸输入设备、手势输入设备、摄影机、键盘、遥控器、鼠标、打印机、音频输入/输出设备等等。
本公开还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述各种可选实施方式中提供的音频信号处理方法和/或神经网络训练方法。
本文中使用的术语仅用于描述本公开中的实施例,并不意图限制本公开。如本文中使用的,单数形式“一个”、“一”和“该”旨在也包括复数形式,除非上下文清楚地另有指示。还要理解的是,术语“包括”和“包含”当在本公开中使用时,是指所述及的特征的存在,但不排除一个或多个其他特征的存在或者添加一个或多个其他特征。如本文中使用的,术语“和/或”包括相关联的列出项目中的一个或多个的任意和全部组合。将理解的是,尽管术语“第一”、“第二”、“第三”等在本文中可以用来描述各种特征,但是这些特征不应当由这些术语限制。这些术语仅用来将一个特征与另一个特征相区分。
除非另有定义,本公开中使用的所有术语(包括技术术语和科学术语)具有与本公开所属领域的普通技术人员所通常理解的相同含义。还要理解的是,诸如那些在通常使用的字典中定义的之类的术语应当被解释为具有与其在相关领域和/或本说明书上下文中的含义相一致的含义,并且将不在理想化或过于正式的意义上进行解释,除非本公开中明确地如此定义。
在本说明书的描述中,术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点被包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
本公开在软件硬件元件或程序模块的一般上下文中描述了各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等。本公开所使用的术语“模块”,“功能”和“组件”一般表示软件、固件、硬件或其组合。本公开描述的技术的特征是与平台无关的,意味着这些技术可以在具有各种处理器的各种计算平台上实现。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。此外,还应理解的是,在流程图中表示或在此以其他方式描述的方法的各个步骤仅仅示例性的,并不意味着所图示或描述的方法的步骤必须按照所示或所述的步骤执行。相反,在流程图中表示或在此以其他方式描述的方法的各个步骤可以按照与本公开中不同的顺序被执行,或者可以同时被执行。此外,根据需要,在流程图中表示或在此以其他方式描述的方法还可以包括其他附加的步骤。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,则可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路、具有合适的组合逻辑门电路的专用集成电路、可编程门阵列、现场可编程门阵列等。
本技术领域的普通技术人员可以理解上述实施例方法的全部或部分步骤可以通过程序指令相关的硬件完成,所述程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括执行方法实施例的步骤之一或其组合。
尽管已经结合一些示例性实施例详细地描述了本公开,但是其不旨在被限制于在本公开中所阐述的特定形式。相反,本公开的范围仅由所附权利要求来限定。
Claims (19)
1.一种音频信号处理方法,包括:
获取参考音频信号和待处理音频信号,其中,所述参考音频信号是通过本地扬声器播放的音频信号,所述待处理音频信号是通过本地麦克风采集的音频信号;
获得所述参考音频信号的幅度谱矩阵,以及获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵;
基于所述参考音频信号的幅度谱矩阵、所述待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对所述待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号;
获得所述参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵;
基于所述参考音频信号的实部数据矩阵和虚部数据矩阵以及所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对所述第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号。
2.如权利要求1所述的音频信号处理方法,其中,所述获得所述参考音频信号的幅度谱矩阵包括:对所述参考音频信号进行快速傅里叶变换,以获得所述参考音频信号的幅度谱矩阵,以及
所述获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵包括:对所述待处理音频信号进行快速傅里叶变换,以获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵。
3.如权利要求1所述的音频信号处理方法,其中,所述基于所述参考音频信号的幅度谱矩阵、所述待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对所述待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号包括:
将所述参考音频信号的幅度谱矩阵与所述待处理音频信号的幅度谱矩阵拼接,生成拼接幅度谱矩阵;
将所述拼接幅度谱矩阵输入所述第一神经网络,生成幅度谱过滤矩阵;
基于所述幅度谱过滤矩阵和所述待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵;
以所述过滤后幅度谱矩阵和所述待处理音频信号的相位谱矩阵共同作为输入参数,进行快速傅里叶逆变换,以生成所述第一处理后音频信号。
4.如权利要求3所述的音频信号处理方法,其中,所述幅度谱过滤矩阵的大小与所述待处理音频信号的幅度谱矩阵的大小相同,并且其中,所述基于所述幅度谱过滤矩阵和所述待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵包括:
将所述待处理音频信号的幅度谱矩阵中每一个元素与所述幅度谱过滤矩阵中对应位置的一个元素相乘,以生成所述过滤后幅度谱矩阵。
5.如权利要求3所述的音频信号处理方法,其中,所述基于所述幅度谱过滤矩阵和所述待处理音频信号的幅度谱矩阵,生成过滤后幅度谱矩阵包括:
将所述待处理音频信号的幅度谱矩阵与所述幅度谱过滤矩阵进行卷积,以生成所述过滤后幅度谱矩阵。
6.如权利要求1所述的音频信号处理方法,其中,所述获得所述参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵包括:
对所述参考音频信号进行快速傅里叶变换,以获得所述参考音频信号的实部数据矩阵和虚部数据矩阵;
对所述第一处理后音频信号进行快速傅里叶变换,以获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵。
7.如权利要求1所述的音频信号处理方法,其中,所述基于所述参考音频信号的实部数据矩阵和虚部数据矩阵以及所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对所述第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号包括:
将所述参考音频信号的实部数据矩阵与所述第一处理后音频信号的实部数据矩阵拼接,生成拼接实部数据矩阵,并且将所述参考音频信号的虚部数据矩阵与所述第一处理后音频信号的虚部数据矩阵拼接,生成拼接虚部数据矩阵;
将所述拼接实部数据矩阵和所述拼接虚部数据矩阵输入所述第二神经网络,生成实部数据过滤矩阵和虚部数据过滤矩阵;
基于所述第一处理后音频信号的实部数据矩阵和所述实部数据过滤矩阵,生成过滤后实部数据矩阵,基于所述第一处理后音频信号的虚部数据矩阵和所述虚部数据过滤矩阵,生成过滤后虚部数据矩阵;
以所述过滤后实部数据矩阵和所述过滤后虚部数据矩阵共同作为输入参数,进行快速傅里叶逆变换,以生成所述第二处理后音频信号。
8.如权利要求7所述的音频信号处理方法,其中,所述实部数据过滤矩阵的大小与所述第一处理后音频信号的实部数据矩阵的大小相同,所述虚部数据过滤矩阵的大小与所述第一处理后音频信号的虚部数据矩阵的大小相同,并且其中,所述基于所述第一处理后音频信号的实部数据矩阵和所述实部数据过滤矩阵,生成过滤后实部数据矩阵,基于所述第一处理后音频信号的虚部数据矩阵和所述虚部数据过滤矩阵,生成过滤后虚部数据矩阵包括:
将所述第一处理后音频信号的实部数据矩阵中每一个元素与所述实部数据过滤矩阵中对应位置的一个元素相乘,以生成所述过滤后实部数据矩阵;
将所述第一处理后音频信号的虚部数据矩阵中每一个元素与所述虚部数据过滤矩阵中对应位置的一个元素相乘,以生成所述过滤后虚部数据矩阵。
9.如权利要求7所述的音频信号处理方法,其中,所述基于所述第一处理后音频信号的实部数据矩阵和所述实部数据过滤矩阵,生成过滤后实部数据矩阵包括:将所述第一处理后音频信号的实部数据矩阵与所述实部数据过滤矩阵进行卷积,以生成所述过滤后实部数据矩阵,以及
所述基于所述第一处理后音频信号的虚部数据矩阵和所述虚部数据过滤矩阵,生成过滤后虚部数据矩阵包括:将所述第一处理后音频信号的虚部数据矩阵与所述虚部数据过滤矩阵进行卷积,以生成所述过滤后虚部数据矩阵。
10.如权利要求1所述的音频信号处理方法,其中,所述第一神经网络和所述第二神经网络都是长短期记忆神经网络。
11.一种神经网络训练方法,包括:
获取参考音频信号和待处理音频信号,其中,所述参考音频信号是通过本地扬声器播放的音频信号,所述待处理音频信号是将本地麦克风采集的音频信号与真实音频信号混合而得到的混合音频信号;
获得所述参考音频信号的幅度谱矩阵,以及获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵;
基于所述参考音频信号的幅度谱矩阵、所述待处理音频信号的幅度谱矩阵和相位谱矩阵,利用第一神经网络对所述待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号;
获得所述参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵;
基于所述参考音频信号的实部数据矩阵和虚部数据矩阵以及所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对所述第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号;
基于所述第一处理后音频信号和所述真实音频信号,获得第一信噪比损失值,基于所述第二处理后音频信号和所述真实音频信号,获得第二信噪比损失值;
至少基于所述第一信噪比损失值和所述第二信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整。
12.如权利要求11所述的神经网络训练方法,其中,至少基于所述第一信噪比损失值和所述第二信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整包括:
对所述第一信噪比损失值和所述第二信噪比损失值进行加权求和,获得综合信噪比损失值;
基于所述综合信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整。
13.如权利要求12所述的神经网络训练方法,其中,所述第一信噪比损失的权重大于所述第二信噪比损失的权重。
14.如权利要求11所述的神经网络训练方法,其中,至少基于所述第一信噪比损失值和所述第二信噪比损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整包括:
将所述第一处理后音频信号输入基于CTC的声学模型,获得CTC损失值;
对所述第一信噪比损失值、所述第二信噪比损失值和所述CTC损失值进行加权求和,获得综合损失值;以及
基于所述综合损失值,对所述第一神经网络和所述第二神经网络中的至少一个进行调整。
15.如权利要求11至14中任一项所述的神经网络训练方法,其中,所述第一信噪比损失值和所述第二信噪比损失值都是尺度不变信噪比损失值。
16.一种音频信号处理装置,包括:
音频信号获取模块,其被配置成:获取参考音频信号和待处理音频信号,其中,所述参考音频信号是通过本地扬声器播放的音频信号,所述待处理音频信号是通过本地麦克风采集的音频信号;
音频信号频域信息获取模块,其被配置成:获得所述参考音频信号的幅度谱矩阵,以及获得所述待处理音频信号的幅度谱矩阵和相位谱矩阵;
频域回声消除处理模块,其被配置成:基于所述参考音频信号的幅度谱矩阵和所述待处理音频信号的幅度谱矩阵,利用第一神经网络对所述待处理音频信号进行频域回声消除处理,并且生成第一处理后音频信号;
音频信号时域信息获取模块,其被配置成:获得所述参考音频信号的实部数据矩阵和虚部数据矩阵,以及获得所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵;
时域回声消除处理模块,其被配置成:基于所述参考音频信号的实部数据矩阵和虚部数据矩阵以及所述第一处理后音频信号的实部数据矩阵和虚部数据矩阵,利用第二神经网络对所述第一处理后音频信号进行时域回声消除处理,并且生成第二处理后音频信号。
17.一种计算设备,包括处理器和存储器,所述存储器被配置成存储计算机可执行指令,所述计算机可执行指令被配置成当在所述处理器上执行时,使所述处理器执行根据权利要求1至10中任一项所述的音频信号处理方法,或者使所述处理器执行根据权利要求11至15中任一项所述的神经网络训练方法。
18.一种计算机可读存储介质,其被配置成存储计算机可执行指令,所述计算机可执行指令被配置成当在处理器上执行时,使所述处理器执行根据权利要求1至10中任一项所述的音频信号处理方法,或者使所述处理器执行根据权利要求11至15中任一项所述的神经网络训练方法。
19.一种计算机程序产品,其包括计算机可执行指令,所述计算机可执行指令被配置成当在处理器上执行时,使所述处理器执行根据权利要求1至10中任一项所述的音频信号处理方法,或者使所述处理器执行根据权利要求11至15中任一项所述的神经网络训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210459690.1A CN115116471B (zh) | 2022-04-28 | 2022-04-28 | 音频信号处理方法和装置、训练方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210459690.1A CN115116471B (zh) | 2022-04-28 | 2022-04-28 | 音频信号处理方法和装置、训练方法、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115116471A true CN115116471A (zh) | 2022-09-27 |
CN115116471B CN115116471B (zh) | 2024-02-13 |
Family
ID=83326289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210459690.1A Active CN115116471B (zh) | 2022-04-28 | 2022-04-28 | 音频信号处理方法和装置、训练方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115116471B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113689878A (zh) * | 2021-07-26 | 2021-11-23 | 浙江大华技术股份有限公司 | 回声消除方法、回声消除装置及计算机可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113140225A (zh) * | 2020-01-20 | 2021-07-20 | 腾讯科技(深圳)有限公司 | 语音信号处理方法、装置、电子设备及存储介质 |
WO2021196905A1 (zh) * | 2020-04-01 | 2021-10-07 | 腾讯科技(深圳)有限公司 | 语音信号去混响处理方法、装置、计算机设备和存储介质 |
CN113744748A (zh) * | 2021-08-06 | 2021-12-03 | 浙江大华技术股份有限公司 | 一种网络模型的训练方法、回声消除方法及设备 |
CN113870888A (zh) * | 2021-09-24 | 2021-12-31 | 武汉大学 | 一种基于语音信号时域和频域的特征提取方法、装置、回声消除方法及装置 |
CN114121031A (zh) * | 2021-12-08 | 2022-03-01 | 思必驰科技股份有限公司 | 设备语音降噪、电子设备和存储介质 |
CN114242098A (zh) * | 2021-12-13 | 2022-03-25 | 北京百度网讯科技有限公司 | 一种语音增强方法、装置、设备以及存储介质 |
CN114283795A (zh) * | 2021-12-24 | 2022-04-05 | 思必驰科技股份有限公司 | 语音增强模型的训练、识别方法、电子设备和存储介质 |
-
2022
- 2022-04-28 CN CN202210459690.1A patent/CN115116471B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113140225A (zh) * | 2020-01-20 | 2021-07-20 | 腾讯科技(深圳)有限公司 | 语音信号处理方法、装置、电子设备及存储介质 |
WO2021196905A1 (zh) * | 2020-04-01 | 2021-10-07 | 腾讯科技(深圳)有限公司 | 语音信号去混响处理方法、装置、计算机设备和存储介质 |
CN113744748A (zh) * | 2021-08-06 | 2021-12-03 | 浙江大华技术股份有限公司 | 一种网络模型的训练方法、回声消除方法及设备 |
CN113870888A (zh) * | 2021-09-24 | 2021-12-31 | 武汉大学 | 一种基于语音信号时域和频域的特征提取方法、装置、回声消除方法及装置 |
CN114121031A (zh) * | 2021-12-08 | 2022-03-01 | 思必驰科技股份有限公司 | 设备语音降噪、电子设备和存储介质 |
CN114242098A (zh) * | 2021-12-13 | 2022-03-25 | 北京百度网讯科技有限公司 | 一种语音增强方法、装置、设备以及存储介质 |
CN114283795A (zh) * | 2021-12-24 | 2022-04-05 | 思必驰科技股份有限公司 | 语音增强模型的训练、识别方法、电子设备和存储介质 |
Non-Patent Citations (6)
Title |
---|
HAO ZHANG,等: "Deep Learning for Joint Acoustic Echo and Noise Cancellation with Nonlinear Distortions", 《INTERSPEECH 2019》 * |
NILS L. WESTHAUSEN,等: "Dual-Signal Transformation LSTM Network for Real-Time Noise Suppression", 《HTTPS://ARXIV.ORG/PDF/2005.07551.PDF》 * |
SHIMIN ZHANG,等: "F-T-LSTM based Complex Network for Joint Acoustic Echo Cancellation and Speech Enhancement", 《HTTPS://ARXIV.ORG/PDF/2106.07577.PDF》 * |
XIAOHUAI LE,等: "DPCRN: Dual-Path Convolution Recurrent Network for Single Channel Speech Enhancement", 《HTTPS://ARXIV.ORG/PDF/2107.05429.PDF》 * |
张伟: "智能音箱中回声消除算法的研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
王冬霞,等: "基于BLSTM神经网络的回声和噪声抑制算法", 《信号处理》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113689878A (zh) * | 2021-07-26 | 2021-11-23 | 浙江大华技术股份有限公司 | 回声消除方法、回声消除装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115116471B (zh) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107452389A (zh) | 一种通用的单声道实时降噪方法 | |
CN107845389A (zh) | 一种基于多分辨率听觉倒谱系数和深度卷积神经网络的语音增强方法 | |
CN110164467A (zh) | 语音降噪的方法和装置、计算设备和计算机可读存储介质 | |
CN113436643B (zh) | 语音增强模型的训练及应用方法、装置、设备及存储介质 | |
WO2019227574A1 (zh) | 语音模型训练方法、语音识别方法、装置、设备及介质 | |
CN112581973B (zh) | 一种语音增强方法及*** | |
CN103559888A (zh) | 基于非负低秩和稀疏矩阵分解原理的语音增强方法 | |
EP3899936B1 (en) | Source separation using an estimation and control of sound quality | |
CN107408394A (zh) | 确定在主信道与参考信道之间的噪声功率级差和声音功率级差 | |
WO2022141868A1 (zh) | 一种提取语音特征的方法、装置、终端及存储介质 | |
CN112735460B (zh) | 基于时频掩蔽值估计的波束成形方法及*** | |
CN111785288A (zh) | 语音增强方法、装置、设备及存储介质 | |
Ram et al. | Performance analysis of adaptive variational mode decomposition approach for speech enhancement | |
CN115116471B (zh) | 音频信号处理方法和装置、训练方法、设备及介质 | |
CN116013344A (zh) | 一种多种噪声环境下的语音增强方法 | |
KR102026226B1 (ko) | 딥러닝 기반 Variational Inference 모델을 이용한 신호 단위 특징 추출 방법 및 시스템 | |
CN113053400A (zh) | 音频信号降噪模型的训练方法、音频信号降噪方法及设备 | |
WO2024041512A1 (zh) | 音频降噪方法、装置、电子设备及可读存储介质 | |
WO2024027295A1 (zh) | 语音增强模型的训练、增强方法、装置、电子设备、存储介质及程序产品 | |
CN116052706B (zh) | 一种基于神经网络的低复杂度语音增强方法 | |
Li et al. | Robust frequency domain spline adaptive filtering based on the half-quadratic criterion: Performance analysis and applications | |
US20220130406A1 (en) | Noise spatial covariance matrix estimation apparatus, noise spatial covariance matrix estimation method, and program | |
CN113763978A (zh) | 语音信号处理方法、装置、电子设备以及存储介质 | |
CN111832596A (zh) | 数据处理方法、电子设备及计算机可读介质 | |
Yechuri et al. | An iterative posterior regularized nmf-based adaptive wiener filter for speech enhancement |
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 |