CN113763977A - 消除回声信号的方法、装置、计算设备和存储介质 - Google Patents
消除回声信号的方法、装置、计算设备和存储介质 Download PDFInfo
- Publication number
- CN113763977A CN113763977A CN202110411034.XA CN202110411034A CN113763977A CN 113763977 A CN113763977 A CN 113763977A CN 202110411034 A CN202110411034 A CN 202110411034A CN 113763977 A CN113763977 A CN 113763977A
- Authority
- CN
- China
- Prior art keywords
- signal
- filtered
- sample
- filtered signal
- reference signal
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing 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/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
Abstract
本申请的实施例提供了一种消除回声信号的方法、装置、计算设备和存储介质,方法包括:获取远端设备处的远端语音信号作为参考信号;采集近端设备处的麦克风信号,麦克风信号包括近端设备处的近端语音信号和与参考信号对应的回声信号;对麦克风信号进行滤波处理以获得第一滤波信号,第一滤波信号包括回声信号中的非线性分量和近端语音信号;将第一滤波信号和参考信号提供给神经网络语音模型以输出至少一个权重序列,其中神经网络语音模型是基于训练样本集进行训练得到的,训练样本集至少包括第一滤波信号样本和参考信号样本;以及基于至少一个权重序列和第一滤波信号获得将被发送至远端设备的近端目标语音信号。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种消除回声的方法、装置、计算设备和存储介质。
背景技术
随着移动终端相关技术的快速发展,智能设备已被广泛应用于人们的日常工作和生活中,例如,人们越来越多地通过智能设备实现远程通话或视频会议,然而,回声是影响用户通话体验的一个重要因素。回声起源于用户的终端设备上的扬声器和麦克风之间的声音传播。例如,在甲和乙之间的通话过程中,乙的声音从甲的智能设备的扬声器播出后,也会被甲的智能设备上的麦克风所接收,并传送至乙的智能设备,导致乙听见从甲的智能设备传输过来的自己的声音,这对语音通话的质量构成了不利的影响。
一般地,可采用滤波方法消除回声中的线性部分,但是无法消除回声中的非线性部分。进一步地,也可以在滤波单元之后增加一个非线性后处理单元来减少回声中的非线性部分。这种方法在单讲(即,只有远端设备处的人员说话,而近端设备处的人不说话)的情况下可以较好地消除回声,但在双讲(即,远端设备处的人和近端设备处的人同时说话)的情况下对近端设备处的语音有较为明显的损伤,严重影响通话体验。
发明内容
有鉴于此,本申请提供了一种消除回声的方法、装置、计算设备和存储介质,期望克服上面提到的部分或全部缺陷以及其它可能的缺陷。
根据本申请的第一方面,提供了一种消除回声信号的方法,该方法包括:获取远端设备处的远端语音信号作为参考信号;采集近端设备处的麦克风信号,所述麦克风信号包括近端设备处的近端语音信号和与所述参考信号对应的回声信号;对所述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号;将所述第一滤波信号和所述参考信号提供给神经网络语音模型以输出至少一个权重序列,其中所述神经网络语音模型是基于训练样本集进行训练得到的,所述训练样本集至少包括第一滤波信号样本和参考信号样本;以及基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号。
根据本申请的另一方面,提供了一种消除回声信号的装置,该装置包括:参考信号获取模块,其被配置成获取远端设备处的远端语音信号作为参考信号;麦克风信号采集模块,其被配置成采集近端设备处的麦克风信号,所述麦克风信号包括近端设备处的近端语音信号和与所述参考信号对应的回声信号;滤波模块,其被配置成对所述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号;权重序列生成模块,其被配置成借助于神经网络语音模型、并基于所述第一滤波信号和所述参考信号而输出至少一个权重序列,其中所述神经网络语音模型是基于训练样本集进行训练得到的,所述训练样本集至少包括第一滤波信号样本和参考信号样本;以及近端目标语音信号生成模块,其被配置成基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号。
根据本申请的又一方面,提供了一种计算设备,该计算设备包括:存储器,其被配置成存储计算机可执行指令;处理器,其被配置成当所述计算机可执行指令被处理器执行时执行如前述消除回声的方法的实施例中任一实施例所述的方法。
根据本申请的再一方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行如前述消除回声的方法的实施例中任一实施例所述的方法。
利用本申请的实施例提供的方法、装置、计算设备或计算机可读存储介质,通过对麦克风信号进行的滤波处理可以消除或者大幅度减少麦克风采集到的回声信号中的线性部分,借助于经训练的神经网络语音模型,能够准确地识别出麦克风采集到的回声信号中的非线性部分,神经网络语音模型输出的权重序列可以表征麦克风信号在各个频率处存在非线性回声的可能性的高低,在此基础上,通过上述的权重序列和麦克风信号之间的运算可容易地得到比较纯净的近端语音信号,从而避免或大幅度减少上述的回声信号(包括线性部分和非线性部分)被发送给远端设备。因此,利用本申请的实施例提供的各种方案,能够在消除回声信号的情况下实现近端语音信号的更完整的保留,可进一步提升用户之间的通话质量。
附图说明
现在将更详细并且参考附图来描述本公开的实施例,其中:
图1示意性地示出了根据本申请实施例的技术方案可以在其中实施的网络架构的结构;
图2示意性地示出了根据本申请实施例的消除回声信号的方法的流程图;
图3图示了应用本申请实施例提供的消除回声信号的方法的场景的示例;
图4示意性地示出了根据本申请实施例的对麦克风信号进行的滤波处理的过程的示例;
图5图示了根据本申请实施例提供的经训练的神经网络语音模型基于第一滤波信号和参考信号输出权重序列的示例;
图6图示了根据本申请的另一实施例提供的神经网络语音模型输出权重序列的示例;
图7图示了对音频时域信号进行特征提取而获得对数频谱特征的方法的示例;
图8示意性地概述了本申请实施例提供的消除回声信号的过程;
图9示意性地示出了本申请实施例提供的消除回声信号的过程涉及的具体步骤的示例;
图10示意性地示出了根据申请实施例的消除回声信号的装置的结构;
图11图示了一个示例系统,其包括代表可以实现本文描述的各种技术的一个或多个系统和/或设备的示例计算设备。
具体实施方式
下面将结合附图,对本申请中的技术方案进行清楚和完整的描述。所描述的实施例仅仅是本申请的一部分实施例,而不是全部实施例。基于本申请的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例都属于本申请保护的范围。
人工智能是利用数字计算机或者数字计算机控制的机器来模拟、延伸和扩展人的智能,感知环境,获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是通过机器来模拟人类认知能力的技术。人工智能是一门综合学科,涉及领域广泛,涵盖了感知、学推力和决策等方面的能力,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。人工智能最核心的能力就是根据给定输入作出判断或者预测。例如,在人人脸识别应用中,可以根据输入的照片判断照片中的人。在医疗诊断中,可以根据输入的医疗影像判断疾病的成因和性质。
在人工智能软件技术中,机器学习是使计算机具有智能特性的重要技术。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。机器学习专门研究计算机如何模拟或实现人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身的性能。机器学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。
为了便于对本发明实施例的理解,下面先对几个概念进行简单介绍。
近端设备/远端设备:本文所提到的“近端设备”和“远端设备”是相对于正在说话的用户的位置而言的,在两人或更多人之间的远程语音通话系统中,正在说话的用户所使用的终端设备可称为“近端设备”,相应地,接收正在说话的用户的语音的用户所使用的终端设备可称为“远端设备”,因此,远程语音通话系统可包括一个或多个“近端设备”,也可以包括一个或多个“远端设备”。近端语音信号:本文提到的“近端语音信号”指的是近端设备的用户在说话时产生的语音信号。远端语音信号:本文提到的“远端语音信号”指的是远端设备的用户在说话时产生的语音信号。回声信号:本文提到的“回声信号”指的是从近端设备的扬声器输出、而由近端设备的麦克风接收的声音信号,在语音通话过程中,“回声信号”实际上是源自于远端设备处的远端语音信号,因此,回声信号可以理解成与远端语音信号相对应。本文提到的“目标近端语音信号”指的是从近端设备的麦克风接收到的声音信号中去除回声信号后获得的语音信号。本文提到的“权重序列”指的是多个权重系数形成的序列,在数学上可以被视为由多个权重系数形成的向量。
本申请的实施例提供一种消除回声信号的技术方案,利用该技术方案,在多用户语音通话系统中,远端设备的用户接收到的声音信号可不包含上述的回声信号,或者,远端设备的用户接收到的声音信号中的回声信号的量得以极大地减少。
图1图示了根据本申请实施例的技术方案可以在其中实施的一种网络系统的结构的示例,应用该网络系统的场景的示例包括但不限于游戏语音通话场景、视频会议场景、语音直播场景、网络电话通话场景等。如图1所示,不同的用户可以使用不同或相同的终端设备,终端设备可以是具有人机互动功能的任何移动终端或者固定终端,终端设备的示例包括但不限于手机、台式电脑、平板电脑、笔记本电脑和掌上电脑。每个终端设备可以分别与服务器通过网络进行连接,以便每个终端设备可以与服务器进行数据交互。服务器例如可以是独立的物理服务器,也可以是由多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络、以及大数据和人工智能平台等基础云计算服务的云服务器。替代性地,网络系统也可不包括服务器,即,不同的终端设备之间可以直接建立通信,从而实施本申请实施例的消除回声信号的技术方案。
图2示意性地示出了根据本申请实施例的消除回声信号的方法的流程图。该方法例如可以由终端设备的集群中的任一终端设备(例如,图1中的平板电脑或者手机)执行,也可以由服务器执行,还可以由终端设备和服务器共同协作执行。在一个示例性的应用场景中,服务器获取终端设备的集群中的某一终端设备(作为远端设备)处的远端语音信号作为参考信号,终端设备的集群中的另一终端设备(作为近端设备)采集其麦克风接收到的麦克风信号(麦克风信号包括该近端设备处的近端语音信号和与参考信号对应的回声信号)并将麦克风信号传送至服务器,服务器对所述麦克风信号进行处理从而获得近端目标语音信号,然后将该近端目标语音信号发送至所述远端设备。
为便于理解,下面,本申请的实施例以该方法由终端设备执行为例进行详细说明,由于实施本申请实施例提供的消除回声信号的方法的直接结果是从将发送给远端设备的声音信号中消除或减弱回声信号,因此,在下文中,执行本申请实施例提供的消除回声信号的方法的主体是近端设备。
如图2所示,根据本申请的实施例提供的消除回声信号的方法包括:步骤S210、获取远端设备处的远端语音信号作为参考信号;步骤S220、采集近端设备处的麦克风信号,所述麦克风信号包括近端设备处的近端语音信号和与所述参考信号对应的回声信号;步骤S230、对所述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号;步骤S240、将所述第一滤波信号和所述参考信号提供给神经网络语音模型以输出至少一个权重序列;以及步骤S250、基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号。尽管图2示出了根据本申请的实施例提供的消除回声信号的方法的一些步骤,但是,这并不限定消除回声信号的方法中各个步骤的执行顺序,本领域技术人员根据实际应用情形可以设定合理的执行这些步骤的次序。
在步骤S210中,近端设备可以获取远端设备处的远端语音信号作为参考信号。远端设备处的用户在说话时产生的语音信号可以被记录并存储,例如可以存储为多媒体文件,多媒体文件的形式包括但不限于诸如wav、mid、mp3等格式的音频文件。近端设备可以通过网络直接从远端设备接收上述音频文件,替代性地,近端设备也可以经由服务器向远端设备请求获取上述音频文件。本申请的实施例对近端设备获取远端语音信号的具体方式不作限制。近端设备将获取到的远端语音信号作为参考信号。
在步骤S220中,近端设备可以采集近端设备处的麦克风信号。根据本申请的一个实施例,该麦克风信号可以是近端设备的麦克风所接收到的声音信号。在语音通话的过程中,近端设备的用户在说话的同时,近端设备的扬声器也输出从远端设备传送而来的远端语音信号,因此,麦克风信号可包括近端设备处的近端语音信号和与参考信号对应的回声信号,这种从近端设备的扬声器输出的回声信号对于远端设备的用户而言不必要的干扰信号。
在步骤S230中,近端设备可以对上述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号。根据本申请的一个实施例,近端设备可以对上述麦克风信号的滤波处理可包括滤除回声信号中的线性分量,而保留回声信号中的非线性分量和近端语音信号,将回声信号中的非线性分量和近端语音信号的混合信号作为上述第一滤波信号。本申请的实施例对滤除回声信号中的线性分量的方式不作具体限制,例如可以采用各种形式的信号滤波器,包括但不限于自适应滤波器。
在步骤S240中,可以在近端设备中设置神经网络语音模型,该神经网络语音模型接收上述的第一滤波信号和参考信号,并基于第一滤波信号和参考信号而输出至少一个权重序列。根据本申请的一些实施例,每个权重序列可包括多个权重系数,权重系数可用于衡量第一滤波信号在不同频率处存在回声信号的可能性。在一个示例中,该神经网络语音模型是基于训练样本集进行训练得到的,训练样本集至少包括第一滤波信号样本和参考信号样本。本申请的实施例并不对神经网络语音模型的具体形式作出限制,神经网络语音模型的类型的示例例包括但不限于长短时记忆(LSTM)网络、门控循环单元(GRU)、时间延时神经网络(TDNN)、卷积神经网络(CNN)。
在步骤S250中,基于在之前步骤得到的所述至少一个权重序列和第一滤波信号,近端设备可以获得近端目标语音信号,之后将该近端目标语音信号发送至远端设备。
在本申请实施例提供的消除回声信号的方法中,可以用任何适当的滤波方法滤除回声信号中的线性分量,在近端设备中建立神经网络语音模型,并采用第一滤波信号样本和参考信号样本对其进行训练,获得期望的神经网络语音模型。同时,由于第一滤波信号包括回声信号中的非线性分量,参考信号为源自于远端设备的远端语音信号,而回声信号是从近端设备的扬声器输出、而由近端设备的麦克风接收的声音信号,回声信号与参考信号实际上同源(均来自于远端设备)但可能存在偏差,因此,经训练的神经网络语音模型能够对包括回声信号中的非线性分量的第一滤波信号和参考信号进行比较和辨别,从第一滤波信号中识别出上述回声信号中的非线性分量。在此基础上,可以将容易地将回声信号中的非线性分量从第一滤波信号中去除,而仅保留近端语音信号。因此,利用本申请实施例提供的消除回声信号的方法,不仅可以消除回声信号中线性分量,而且能够高效率地消除或至少减弱回声信号中的非线性分量,实现近端语音信号的更完整的保留,从而进一步提升用户之间的通话质量。此外,神经网络语音模型可以仅接收回声信号中的非线性分量,而不处理回声信号中的线性分量,使得神经网络语音模型的数据处理量和运算负荷得以有效降低,有利于实现数据的快速处理从而能够实时地消除回声信号,而且降低了对近端设备的存储空间的要求。
根据本申请的一些实施例,近端设备包括扬声器,所述回声信号包括从所述扬声器播放出的声音信号。能够理解到的是,扬声器播放出的声音信号可以直接到达近端设备信号采集装置(例如,麦克风),或者扬声器播放出的声音信号中的一部分先到达近端设备所处环境中的其它物体(例如,墙壁等),然后再被反射至近端设备的麦克风。图3图示了应用本申请实施例提供的消除回声信号的方法的场景的示例,在该场景中,房间1中的用户和房间2中的用户正在进行语音通话,双方发出的语音信号都可经由网络传输至对方房间中的终端设备的扬声器,从扬声器播放的声音能够直接被终端设备的麦克风接收或者通过周围环境的反射再被麦克风接收。例如,房间2中的用户2的终端设备的麦克风会同时接收到用户2的语音信号和从房间2的扬声器输出的回声信号,如果用户2的终端设备实施本申请实施例提供的消除回声信号的方法,可以先从麦克风接收到的麦克风信号中消除或者大幅度减少回声信号,而保留用户2的语音信号,这样,房间1中的用户1从其终端设备的扬声器接收到的信号不会包含回声信号,或者回声信号的比例得以大幅度降低,由此可以明显改善语音通话的质量,提升使用终端设备的体验。
在图3的示例中,房间2中的用户2的终端设备被视为近端设备,则房间1中的用户1的终端设备为远端设备。在该情形中,房间2中的用户2的近端设备可获取房间1中的用户1的远端设备处的远端语音信号作为参考信号。例如,房间1中的远端设备可以将用户1发出的远端语音信号记录为语音媒体文件,房间2中的近端设备可经由网络接收该语音媒体文件作为所述参考信号。当然,房间1中的用户1的终端设备也可应用本申请实施例提供的消除回声信号的方法,此时,用户1的终端设备为近端设备,用户2的终端设备为远端设备。类似地,用户1的终端设备可以消除源自于房间1中的扬声器的回声信号,具体不再赘述。
根据本申请的一些实施例,在将麦克风信号提供给神经网络语音模型之前,可以先对其进行滤波处理。在一个示例中,可以采用自适应滤波器对麦克风信号进行处理以分离出回声信号中的线性分量和非线性分量。如图4所示,将近端语音信号和回声信号进行叠加而得到的混合信号和参考信号提供至自适应滤波器AF,从而输出第一滤波信号和第二滤波信号。自适应滤波器AF可以是线性自适应滤波器,例如,FIR(有限冲击响应)滤波器或者IIR(无线冲击响应)滤波器。自适应滤波器AF能够估计回声路径的特征参数,产生模拟的回声路径,并基于参考信号产生回声信号的估计值(例如,图4中的第二滤波信号),自适应滤波器AF输出的回声信号的估计值主要包括回声信号中线性分量。在此基础上,将第二滤波信号从近端语音信号和回声信号的混合信号中减去便得到第一滤波信号,因此,第一滤波信号主要包括回声信号中的非线性分量和近端语音信号。
图5图示了根据本申请实施例提供的经训练的神经网络语音模型基于第一滤波信号和参考信号输出权重序列的示例。如图5所示,神经网络语音模型的主体结构包括两层长短时记忆(LSTM)网络。上述的参考信号和自适应滤波器输出的第一滤波信号为连续的时域信号,可以将时域的第一滤波信号和参考信号进行特征提取获得相应的频谱特征,例如梅尔频率倒谱系数(MFCC)特征。在另一示例中,时域的第一滤波信号和参考信号先分别被转换成频域信号,可再基该频域信号获得与第一滤波信号和参考信号对应的对数能量谱。将第一滤波信号的频谱特征和参考信号的频谱特征进行拼接,得到拼接频谱特征向量。图5中的第一全连接层FC1能够对拼接频谱特征向量进行降维,从而大大减少神经网络语音模型的参数,降低神经网络语音模型的空间复杂度。如前所述,第一滤波信号主要包括回声信号中的非线性分量和近端语音信号,LSTM网络可以对回声信号中的非线性分量的路径进行模拟,并利用参考信号的频谱特征对第一滤波信号的频谱特征进行分类,得到表征回声信号中的非线性分量的输出信号。根据本申请的一些实施例中,LSTM网络的输出信号可再经过第二全连接层FC2而输出权重序列,该第二全连接层FC2可兼具降维和特征提取的功能。例如,如图5所示,第二全连接层FC2输出3个权重序列mask1、mask2和mask3,每个权重序列包括多个权重系数,而且每个权重序列包括的权重系数的数目可以与第一滤波信号的频谱特征向量的维度一致。例如,第一滤波信号的对数能量谱涉及n个频率(例如,f1、f2……fn),则每个权重序列可包括n个权重系数,每个权重系数可以表征第一滤波信号在上述的n个频率处存在回声信号(特别地,回声信号中的非线性分量)的可能性的高低。在图5示例中,每个权重序列中的权重系数可通过softmax激活函数而被归一化,从而使得每个权重序列中的权重系数介于0和1之间。根据本申请的一些实施例,在获得多个权重序列的基础上,可以对各个权重序列进行加权处理,输出单个的目标权重序列。在一个实验性的示例中,基于第二全连接层FC2输出的3个权重序列,可通过以下方式得到目标权重序列mask0: mask0=0*mask1+1*mask2+2*mask3,经过验证测试,基于该目标权重序列和第一滤波信号获得的近端目标语音信号可以达到较佳的回声消除效果。能理解到的是,图5只是示例性地示出了基于神经网络语音模型输出三个权重序列,在其它实施例中,神经网络语音模型可输出任意数量的权重序列,这取决于神经网络语音模型的结构的复杂度。例如,包括更多层LSTM网络的神经网络语音模型可以从第一滤波信号和参考信号识别出更多的特征,输出更多数量的权重序列。本领域技术人员可以考虑神经网络语音模型的结构的复杂性、神经网络语音模型内部的梯度消失情况、以及消除回声信号效果方面的优劣等因素确定神经网络语音模型输出的权重序列的数目。根据本申请的一些实施例,神经网络语音模型仅输出一个权重序列,该一个权重序列通过softmax激活函数而被归一化,从而得到目标权重序列。
图6图示了根据本申请的另一实施例提供的神经网络语音模型输出权重序列的示例,与图5所示的实施例不同,在图6中,将第一滤波信号、参考信号和第二滤波信号一同提供给神经网络语音模型以输出至少一个权重序列。如前所述,第二滤波信号是自适应滤波器AF基于参考信号产生的回声信号的估计值,其主要包括回声信号中线性分量。但是,可能难以保证通过滤波方式完全地消除回声信号中的线性分量,或者说,基于参考信号产生的回声信号的估计值与实际的回声信号之间的偏差可能非常大,因为自适应滤波器输出的第一滤波信号中也可能存在一定的回声信号中的线性分量。为了更进一步地消除回声信号,特别是消除自适应滤波器未能估算到的回声信号,在图6的示例中,经训练的神经网络语音模型接收第一滤波信号、参考信号和第二滤波信号这三种信号,这样,经训练的神经网络语音模型可以从第二滤波信号提取相关的频谱特征,丰富神经网络语音模型可识别出的回声信号的频谱范围,从而让输出的权重序列更加准确全面地反映第一滤波信号在不同频率处存在回声信号的可能性。相应地,向远端设备发送的近端目标语音信号中回声信号的比例将更低,更进一步提升用户之间的语音通话体验。
在图6所示的实施例中,神经网络语音模型需要获得第一滤波信号、第二滤波信号和参考信号中的每种信号的特征向量,相应地,前述的将第一滤波信号、所述参考信号、和第二滤波信号一同提供给神经网络语音模型以输出所述至少一个权重序列包括:对所述第一滤波信号、所述第二滤波信号和所述参考信号分别进行特征提取,分别获得第一滤波信号、所述第二滤波信号和所述参考信号的频谱特征;对第一滤波信号、第二滤波信号和参考信号的频谱特征进行拼接,获得拼接频谱特征;将所述拼接频谱特征提供给所述神经网络语音模型以获得所述至少一个权重序列。本文提到的“频谱特征”在数学上可以表示为向量的形式,本文提到的“拼接”指的是将向量形式的频谱特征进行合并,例如,第一滤波信号的频谱特征被表示为[M1,M2,……Mn],第二滤波信号的频谱特征被表示为[K1,K2,……Kn],则将第一滤波信号和第二滤波信号的频谱特征进行拼接即可获得拼接频谱特征[M1,M2,……Mn,K1,K2,……Kn]。图6所示的实施例输出目标权重序列的原理与图5的实施例类似,在此不再详述。
根据本申请的一些实施例,对第一滤波信号、第二滤波信号和参考信号分别进行特征提取,获得第一滤波信号、第二滤波信号和参考信号的频谱特征包括:对第一滤波信号、第二滤波信号和参考信号中的每个进行分帧和加窗处理,获得与第一滤波信号、第二滤波信号和参考信号分别对应的第一音频信号;对第一音频信号进行傅里叶变换获得第一频域信号;基于第一频域信号生成与第一滤波信号、第二滤波信号和参考信号对应的对数能量谱。图7图示了对音频时域信号进行特征提取而获得对数能量谱的方法的示例。如图7所示,任意时域形式的语音信号,例如,第一滤波信号、第二滤波信号和参考信号,可以依次经由分帧、加窗、傅里叶变换、取对数等操作而获得相应信号的对数能量谱。语音信号本身并不具备平稳的特性,但是在一个相对短的时间内,语音信号的频谱特征和一些物理特征参数基本保持不变,由此可以识别短时间内的语音信号的特征参数。因此,通过分帧处理可以将连续的音频时域信号划分为多个短时音频段,每个短的音频段可以称为一个分析帧,从而可以获得各个分析帧的频谱特征。加窗处理可以克服各分析帧的起始和结束的位置处信号不连续的问题,避免出现吉布斯效应。加窗处理可应用各种类型的加窗函数,包括但不限于汉明(hanning)窗、矩形窗等。对加窗处理后的各个分析帧的信号(第一音频信号)进行傅里叶变换(例如,短时傅里叶变换STFT)即可获得相应的频域信号(第一频域信号)。第一频域信号包括幅度谱和相位谱,基于幅度谱信号可以生成能量谱信号,能量谱为幅度谱的模的平方在频域上的积分。在一些实施例中,可以对第一频域信号或者第一频域信号中的幅度谱进行取对数操作,或者,在基于幅度谱信号可以生成能量谱信号后对能量谱信号进行取对数操作,由此可以获得与第一滤波信号、第二滤波信号和参考信号对应的对数能量谱。取对数操作可以不同能量的信号之间的差异,避免弱能量的声音信号被忽视或淹没,因此,获得的对数能量谱可以较全面地反映对应的音频信号的特性。取对数操作不是必需的,在其它实施例中,可以省略取对数操作。因此,这里提到的对数能量谱仅仅是上述的第一滤波信号、第二滤波信号和参考信号的频谱特征的示例,本申请并不限制对第一滤波信号、第二滤波信号和参考信号进行特征提取的具体方式。
如前所述,根据本申请的一些实施例,在获得多个权重序列的基础上,为了简化计算,可以对各个权重序列进行加权处理,输出单个的目标权重序列,而且目标权重序列中的各个权重系数表征第一滤波信号在各个频率处存在回声信号可能性的高低,因此,通过计算目标权重序列与第一滤波信号的频谱信号的点积获得近端目标语音信号的频谱信号,即可将第一滤波信号中的回声信号予以削弱或者完全消除。例如,如果第一滤波信号的频谱涉及n个频率(例如,f1、f2……fn),则利用经训练的神经网络语音模型获得的目标权重序列可包括分别与上述n个频率一一对应的n个权重系数,这n个权重系数的值在0至1的范围内。在理想的情形中,目标权重序列中的权重系数的值可以只包括1和0,值为0的权重系数表示对应的频率处的信号为回声信号,值为1的权重系数表示对应的频率处的信号为近端语音信号,因此,通过计算目标权重序列与第一滤波信号的频谱信号的点积,可以从第一滤波信号的频谱中消除回声信号,而仅保留近端语音信号。在实践中,目标权重序列中的一些权重系数的值可能不为1或者0,而是为0至1之间的其它值,在这种情况下,通过计算目标权重序列与第一滤波信号的频谱信号的点积而获得的近端目标语音信号的频谱信号中回声信号对应的频率的能量也得以削弱,即至少也使得第一滤波信号中的回声信号得以削弱。
根据本申请的一些实施例,在获得近端目标语音信号的频谱信号后,可以对其进行时频反变换以得到近端目标语音信号的时域信号,并将近端目标语音信号的时域信号发送至所述远端设备。
接下来,通过示例的方式具体说明对神经网络语音模型进行训练的过程。在一些实施例中,用于对神经网络语音模型进行训练的训练样本集可包括第一滤波信号样本和参考信号样本。在另外的实施例中,训练样本集可包括其第一滤波信号样本、参考信号样本、近端语音信号样本和第二滤波信号样本,基于这些训练样本集得到的神经网络语音模型可应用于图6所示的示例,将近端语音信号样本提供给神经网络语音模型可实现有监督训练。相应地,可通过如下训练步骤得到经训练的神经网络语音模型,该训练步骤包括:获取第一滤波信号样本、近端语音信号样本、第二滤波信号样本和参考信号样本;将所述第一滤波信号样本、近端语音信号样本、第二滤波信号样本和参考信号样本提供给神经网络语音模型,对该神经网络语音模型进行训练,直至所述神经网络语音模型对应的损失函数最小。在一些实施例中,损失函数可包括以下表达式:
其中表示每个近端语音信号样本的对数能量谱的能量,表示对神经网络语音模型输出的权重序列,表示每个第一滤波信号样本的对数能量谱的能量,变量的值取值范围是从1至近端语音信号样本的总数。在对神经网络语音模型进行训练的过程中,可以不断调整神经网络语音模型的参数,让上述的损失函数的值最小,从而获得经训练的神经网络语音模型。
对于参考信号样本和近端语音信号样本,可以通过实时采集和存储远端设备和近端设备处的语音方式而获得。在此基础上,进一步获得第一滤波信号样本和第二滤波信号样本。根据本申请的一些实施例,可通过以下步骤获取第一滤波信号样本和第二滤波信号样本:近端设备的扬声器播放从远端设备传送而来的参考信号样本;采集从近端设备的扬声器播出的参考信号样本作为回声信号样本;将近端语音信号样本、回声信号样本和参考信号样本提供至自适应滤波器,得到第一滤波信号样本和第二滤波信号样本。也就是说,第一滤波信号样本和第二滤波信号样本是通过自适应滤波器根据近端语言信号样本、回声信号样本和参考信号样本计算而得到的,其原理与图4所示的获得第一滤波信号和第二滤波信号的过程相同。
在获得第一滤波信号样本和第二滤波信号样本的过程中,可以将上述的回声信号样本和近端语音信号样本以随机比例叠加,从而获得混合信号样本。根据本申请的一些实施例,在将混合信号样本和参考信号样本提供给自适应滤波器之前,可以在二者之间设置延时,从而模拟实际应用场景中由于网络不稳定而产生的漂移,增强经训练的神经网络模型的鲁棒性。换言之,将所述混合信号样本和所述参考信号样本以彼此延时的方式提供至自适应滤波器,延时的时间长度例如为0-30毫秒。
上述的从近端设备接收到的声音信号中消除回声信号的过程可以概述为图8。为了获得期望的神经网络语音模型,需要对神经网络语音模型进行训练,因此,首先需要收集训练样本数据。例如,可以在远端设备上运行参考信号样本的音频文件,或者向远端设备输入远端语音信号,并关闭远端设备的扬声器,让近端设备的扬声器播放从远端设备传送而来的声音信号,并保持近端设备所处的环境处于安静无杂音状态,近端设备的麦克风采所集到的声音信号即为回声信号样本。此外,可以录制近端设备处的语音信号而获得近端语音信号样本,而且近端设备可经由网络接收远端设备上正在运行的音频文件(或者,远端设备记录远端语音信号而存储的音频文件)作为参考信号样本。接下来,可以基于回声信号样本、近端语音信号样本和参考信号样本构建提供给神经网络语音模型的网络输入信号。例如,根据本申请的一些实施例,可以将回声信号样本和近端语音信号样本按任意比例进行混合得到混合信号样本,并将混合信号样本和参考信号样本提供给自适应滤波器,从而得到第一滤波信号样本和第二滤波信号样本。由此,完成了训练神经网络语音模型所需的信号样本的准备工作。接下来,对各个信号样本进行特征提取,这可以依照如图7所示的示例性的方法完成,从而获得各种信号样本的对数能量谱。基于信号样本的对数能量谱对神经网络语音模型进行训练可获得最终的神经网络语音模型。在实际的应用阶段,例如,在近端设备上应用该神经网络语音模型的过程中,近端设备可以对其接收到的近端语音信号和回声信号进行滤波处理,这种滤波处理与在训练阶段为了获得第一滤波信号样本和第二滤波信号样本而进行的运算处理类似,从而获得与近端设备实际接收到的近端语音信号和回声信号对应的第一滤波信号和第二滤波信号。同样地,对提供给经训练的神经网络模型的各个信号进行特征提取,例如,获得各个信号的对数能量谱,经训练的神经网络模型基于各个信号的对数能量谱输出目标权重序列。将目标权重序列与第一滤波信号的频谱进行点乘可获得近端目标语音信号的频谱。之后,对近端目标语音信号的频谱变换为时域信号并发送至远端设备。这样,远端设备接收到的信号中的回声信号得以消除或者被大大降低。
图9示意性地示出了本申请实施例提供的消除回声信号的过程涉及的具体步骤的示例。消除回声信号的过程可包括如下具体步骤:S900、获取远端设备处的远端语音信号作为参考信号;S910、采集近端设备处的麦克风信号,麦克风信号包括近端设备处的近端语音信号和与参考信号对应的回声信号;S920、将近端语音信号、回声信号和参考信号提供给自适应滤波器,以输出第一滤波信号和第二滤波信号,第二滤波信号主要包括回声信号中的线性分量,第一滤波信号包括声信号中的非线性分量和近端语音信号;S930、对所述第一滤波信号、所述第二滤波信号和所述参考信号分别进行特征提取获得第一滤波信号、第二滤波信号和参考信号的频谱特征;S940、对第一滤波信号、第二滤波信号和参考信号的频谱特征进行拼接,获得拼接频谱特征;S950、将拼接频谱特征提供给神经网络语音模型以获得至少一个权重序列;S960、对所述至少一个权重序列中的各个权重序列进行加权处理获得目标权重序列;S970、计算目标权重序列和第一滤波信号的频谱信号的点积,获得所述近端目标语音信号的频谱信号;S980、对近端目标语音信号的频谱信号进行时频反变换以得到近端目标语音信号的时域信号;S990、将所述近端目标语音信号的所述时域信号发送至远端设备。在步骤S950中涉及的神经网络语音模型可通过以下步骤对神经网络语音模型进行训练而获得:S9510、近端设备的扬声器播放从远端设备传送而来的参考信号样本;S9520、采集从近端设备的扬声器播出的参考信号样本作为回声信号样本;S9530、将近端语音信号样本、回声信号样本和参考信号样本提供至自适应滤波器,得到第一滤波信号样本和第二滤波信号样本;S9540、将第一滤波信号样本、近端语音信号样本、第二滤波信号样本和参考信号样本提供给神经网络语音模型,对神经网络语音模型进行训练,直至神经网络语音模型对应的损失函数最小。
根据本申请的另一方面,提供了一种针对消除回声信号的装置,如图10所示,该装置1000包括:参考信号获取模块1000a,其被配置成获取远端设备处的远端语音信号作为参考信号;
麦克风信号采集模块1000b,其被配置成采集近端设备处的麦克风信号,所述麦克风信号包括近端设备处的近端语音信号和与所述参考信号对应的回声信号;滤波模块1000c,其被配置成对所述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号;权重序列生成模块1000d,其被配置成借助于神经网络语音模型、并基于所述第一滤波信号和所述参考信号而输出至少一个权重序列;以及近端目标语音信号生成模块1000e,其被配置成基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号。
本申请的另一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述各实施例所述的消除回声信号的方法。
图11图示了示例系统1100,其包括代表可以实现本文各实施例描述的技术方案的一个或多个系统和/或设备中的示例计算设备1110。计算设备1110可以是例如服务提供商的服务器、与服务器相关联的设备、片上系统、和/或任何其它合适的计算设备或计算系统。上面参照图10描述的消除回声信号的装置1000可以采取计算设备1110的形式。替换地,消除回声信号的装置1000可以以应用1116的形式被实现为计算机程序。
如11图示的示例计算设备1110包括彼此通信耦合的处理系统1111、一个或多个计算机可读介质1112以及一个或多个I / O接口1113。尽管未示出,但是计算设备1110还可以包括系统总线或其他数据和命令传送系统,其将各种组件彼此耦合。系统总线可以包括不同总线结构的任何一个或组合,所述总线结构诸如存储器总线或存储器控制器、外围总线、通用串行总线、和/或利用各种总线架构中的任何一种的处理器或局部总线。还构思了各种其他示例,诸如控制和数据线。
处理系统1111代表使用硬件执行一个或多个操作的功能。因此,处理系统1111被图示为包括可被配置为处理器、功能块等的硬件元件1114。这可以包括在硬件中实现为专用集成电路或使用一个或多个半导体形成的其它逻辑器件。硬件元件1114不受其形成的材料或其中采用的处理机构的限制。例如,处理器可以由(多个)半导体和/或晶体管(例如,电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质1112被图示为包括存储器/存储装置1115。存储器/存储装置1115表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存储装置1115可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储装置1115可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等)。计算机可读介质1112可以以下面进一步描述的各种其他方式进行配置。
一个或多个I/O接口1113代表允许用户使用各种输入设备向计算设备1110输入命令和信息并且可选地还允许使用各种输出设备将信息呈现给用户和/或其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置为检测物理触摸的容性或其他传感器)、相机(例如,可以采用可见或不可见的波长(诸如红外频率)将不涉及触摸的运动检测为手势)等等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,计算设备1110可以以下面进一步描述的各种方式进行配置以支持用户交互。
计算设备1110还包括应用1116。应用1116可以例如是参照图10描述的消除回声信号的装置1000的软件实例,并且与计算设备1110中的其他元件相组合地实现本文描述的技术。
本文可以在软件硬件元件或程序模块的一般上下文中描述各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、组件、数据结构等。本文所使用的术语“模块”,“功能”和“组件”一般表示软件、固件、硬件或其组合。本文描述的技术的特征是与平台无关的,意味着这些技术可以在具有各种处理器的各种计算平台上实现。
所描述的模块和技术的实现可以存储在某种形式的计算机可读介质上或者跨某种形式的计算机可读介质传输。计算机可读介质可以包括可由计算设备1110访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
与单纯的信号传输、载波或信号本身相反,“计算机可读存储介质”是指能够持久存储信息的介质和/或设备,和/或有形的存储装置。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可移动和不可移动介质和/或以适用于存储信息(诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据)的方法或技术实现的存储设备之类的硬件。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、硬盘、盒式磁带、磁带,磁盘存储装置或其他磁存储设备,或其他存储设备、有形介质或适于存储期望信息并可以由计算机访问的制品。
“计算机可读信号介质”是指被配置为诸如经由网络将指令发送到计算设备1110的硬件的信号承载介质。信号介质典型地可以将计算机可读指令、数据结构、程序模块或其他数据体现在诸如载波、数据信号或其它传输机制的调制数据信号中。信号介质还包括任何信息传递介质。术语“调制数据信号”是指这样的信号,该信号的特征中的一个或多个被设置或改变,从而将信息编码到该信号中。作为示例而非限制,通信介质包括诸如有线网络或直接连线的有线介质以及诸如声、RF、红外和其它无线介质的无线介质。
如前所述,硬件元件1114和计算机可读介质1112代表以硬件形式实现的指令、模块、可编程器件逻辑和/或固定器件逻辑,其在一些实施例中可以用于实现本文描述的技术的至少一些方面。硬件元件可以包括集成电路或片上系统、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及硅中的其它实现或其他硬件设备的组件。在这种上下文中,硬件元件可以作为执行由硬件元件所体现的指令、模块和/或逻辑所定义的程序任务的处理设备,以及用于存储用于执行的指令的硬件设备,例如,先前描述的计算机可读存储介质。
前述的组合也可以用于实现本文所述的各种技术和模块。因此,可以将软件、硬件或程序模块和其它程序模块实现为在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件1114体现的一个或多个指令和/或逻辑。计算设备1110可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,例如通过使用处理系统的计算机可读存储介质和/或硬件元件1114,可以至少部分地以硬件来实现将模块实现为可由计算设备1110作为软件执行的模块。指令和/或功能可以由一个或多个制品(例如,一个或多个计算设备1110和/或处理系统1111)可执行/可操作以实现本文所述的技术、模块和示例。
在各种实施方式中,计算设备1110可以采用各种不同的配置。例如,计算设备1110可以被实现为包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等的计算机类设备。计算设备1110还可以被实现为包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等移动设备的移动装置类设备。计算设备1110还可以实现为电视类设备,其包括具有或连接到休闲观看环境中的一般地较大屏幕的设备。这些设备包括电视、机顶盒、游戏机等。
本文描述的技术可以由计算设备1110的这些各种配置来支持,并且不限于本文所描述的技术的具体示例。功能还可以通过使用分布式系统、诸如通过如下所述的平台1122而在“云”1120上全部或部分地实现。
云1120包括和/或代表用于资源1124的平台1122。平台1122抽象云1120的硬件(例如,服务器)和软件资源的底层功能。资源1124可以包括在远离计算设备1110的服务器上执行计算机处理时可以使用的其它应用和/或数据。资源1124还可以包括通过因特网和/或通过诸如蜂窝或Wi-Fi网络的订户网络提供的服务。
平台1122可以抽象资源和功能以将计算设备1110与其他计算设备连接。平台1122还可以用于抽象资源的分级以提供遇到的对于经由平台1122实现的资源1124的需求的相应水平的分级。因此,在互连设备实施例中,本文描述的功能的实现可以分布在整个系统1100内。例如,功能可以部分地在计算设备1110上以及通过抽象云1120的功能的平台1122来实现。
应当理解,为清楚起见,参考不同的功能单元对本公开的实施例进行了描述。然而,将明显的是,在不偏离本公开的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其它功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本公开可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
将理解的是,尽管第一、第二、第三等术语在本文中可以用来描述各种设备、元件、部件或部分,但是这些设备、元件、部件或部分不应当由这些术语限制。这些术语仅用来将一个设备、元件、部件或部分与另一个设备、元件、部件或部分相区分。
尽管已经结合一些实施例描述了本公开,但是其不旨在被限于在本文中所阐述的特定形式。相反,本公开的范围仅由所附权利要求来限制。附加地,尽管单独的特征可以被包括在不同的权利要求中,但是这些可以可能地被有利地组合,并且包括在不同权利要求中不暗示特征的组合不是可行的和/或有利的。特征在权利要求中的次序不暗示特征必须以其工作的任何特定次序。此外,在权利要求中,词“包括”不排除其它元件,并且术语“一”或“一个”不排除多个。权利要求中的附图标记仅作为明确的例子被提供,不应该被解释为以任何方式限制权利要求的范围。
Claims (14)
1.一种消除回声信号的方法,包括:
获取远端设备处的远端语音信号作为参考信号;
采集近端设备处的麦克风信号,所述麦克风信号包括近端设备处的近端语音信号和与所述参考信号对应的回声信号;
对所述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号;
将所述第一滤波信号和所述参考信号提供给神经网络语音模型以输出至少一个权重序列,其中所述神经网络语音模型是基于训练样本集进行训练得到的,所述训练样本集至少包括第一滤波信号样本和参考信号样本;以及
基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号。
2.根据权利要求1所述的方法,所述对所述麦克风信号进行滤波处理以获得第一滤波信号包括:
将所述近端语音信号、所述回声信号和所述参考信号提供给自适应滤波器,以输出所述第一滤波信号和第二滤波信号,所述第二滤波信号包括所述回声信号中的线性分量,
其中所述方法包括:将所述第一滤波信号、所述参考信号和所述第二滤波信号一同提供给所述神经网络语音模型以输出所述至少一个权重序列。
3.根据权利要求2所述的方法,其中将所述第一滤波信号、所述参考信号、和所述第二滤波信号一同提供给所述神经网络语音模型以输出所述至少一个权重序列包括:
对所述第一滤波信号、所述第二滤波信号和所述参考信号分别进行特征提取,获得所述一滤波信号、所述第二滤波信号和所述参考信号的频谱特征;
对所述第一滤波信号、所述第二滤波信号和所述参考信号的频谱特征进行拼接,获得拼接频谱特征;
将所述拼接频谱特征提供给所述神经网络语音模型以获得所述至少一个权重序列。
4.根据权利要求3所述的方法,其中对所述第一滤波信号、所述第二滤波信号和所述参考信号分别进行特征提取,获得所述一滤波信号、所述第二滤波信号和所述参考信号的频谱特征包括:
对所述第一滤波信号、所述第二滤波信号和所述参考信号中的每一个进行分帧和加窗处理,获得分别与所述第一滤波信号、所述第二滤波信号和所述参考信号对应的第一音频信号;
对所述第一音频信号进行傅里叶变换获得第一频域信号;以及
基于所述第一频域信号生成与所述第一滤波信号、所述第二滤波信号和所述参考信号对应的对数能量谱。
5.根据权利要求3所述的方法,其中所述基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号包括:
对所述至少一个权重序列中的各个权重序列进行加权处理获得目标权重序列;
计算所述目标权重序列和所述第一滤波信号的频谱信号的点积,获得所述近端目标语音信号的频谱信号。
6.根据权利要求5所述的方法,其中所述方法还包括:
对所述近端目标语音信号的频谱信号进行时频反变换以得到所述近端目标语音信号的时域信号;
将所述近端目标语音信号的所述时域信号发送至所述远端设备。
7.根据权利要求4所述的方法,其中所述训练样本集还包括近端语音信号样本和第二滤波信号样本,所述方法还包括:通过如下训练步骤得到所述神经网络语音模型,所述训练步骤包括:
获取所述第一滤波信号样本、近端语音信号样本、第二滤波信号样本和参考信号样本;
将所述第一滤波信号样本、近端语音信号样本、第二滤波信号样本和参考信号样本提供给神经网络语音模型,对所述神经网络语音模型进行训练,直至所述神经网络语音模型对应的损失函数最小。
9.根据权利要求7所述的方法,其中所述方法包括通过以下步骤获取所述第一滤波信号样本和所述第二滤波信号样本:
所述近端设备的扬声器播放从所述远端设备传送而来的所述参考信号样本;
采集从所述近端设备的扬声器播出的参考信号样本作为回声信号样本;
将所述近端语音信号样本、所述回声信号样本和所述参考信号样本提供至适应滤波器,得到所述第一滤波信号样本和所述第二滤波信号样本。
10.根据权利要求9述的方法,其中将所述近端语音信号样本、所述回声信号样本和所述参考信号样本提供至自适应滤波器包括:
将所述近端语音信号样本和所述回声信号样本以随机比例叠加获得混合信号样本;
将所述混合信号样本和所述参考信号样本以彼此延时的方式提供至所述自适应滤波器。
11.根据权利要求1-10中任一项所述的方法,其中所述获取远端设备处的远端语音信号作为参考信号包括:
在所述远端设备处将所述远端语音信号记录为语音媒体文件;以及
所述近端设备通过网络接收所述语音媒体文件作为所述参考信号。
12.一种消除回声信号的装置,包括
参考信号获取模块,其被配置成获取远端设备处的远端语音信号作为参考信号;
麦克风信号采集模块,其被配置成采集近端设备处的麦克风信号,所述麦克风信号包括近端设备处的近端语音信号和与所述参考信号对应的回声信号;
滤波模块,其被配置成对所述麦克风信号进行滤波处理以获得第一滤波信号,所述第一滤波信号包括所述回声信号中的非线性分量和所述近端语音信号;
权重序列生成模块,其被配置成借助于神经网络语音模型、并基于所述第一滤波信号和所述参考信号而输出至少一个权重序列,其中所述神经网络语音模型是基于训练样本集进行训练得到的,所述训练样本集至少包括第一滤波信号样本和参考信号样本;以及
近端目标语音信号生成模块,其被配置成基于所述至少一个权重序列和所述第一滤波信号获得将被发送至所述远端设备的近端目标语音信号。
13.一种计算设备,包括
存储器,其被配置成存储计算机可执行指令;
处理器,其被配置成当所述计算机可执行指令被处理器执行时执行如权利要求1-11中的任一项所述的方法。
14.一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行如权利要求1-11中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110411034.XA CN113763977A (zh) | 2021-04-16 | 2021-04-16 | 消除回声信号的方法、装置、计算设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110411034.XA CN113763977A (zh) | 2021-04-16 | 2021-04-16 | 消除回声信号的方法、装置、计算设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113763977A true CN113763977A (zh) | 2021-12-07 |
Family
ID=78786991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110411034.XA Pending CN113763977A (zh) | 2021-04-16 | 2021-04-16 | 消除回声信号的方法、装置、计算设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113763977A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115762552A (zh) * | 2023-01-10 | 2023-03-07 | 阿里巴巴达摩院(杭州)科技有限公司 | 训练回声消除模型的方法、回声消除方法及对应装置 |
CN116013337A (zh) * | 2023-01-10 | 2023-04-25 | 北京百度网讯科技有限公司 | 音频信号处理方法、模型的训练方法、装置、设备和介质 |
CN116612778A (zh) * | 2023-07-18 | 2023-08-18 | 腾讯科技(深圳)有限公司 | 回声及噪声抑制方法、相关装置和介质 |
WO2023226592A1 (zh) * | 2022-05-25 | 2023-11-30 | 青岛海尔科技有限公司 | 噪音信号的处理方法和装置、存储介质及电子装置 |
CN117437929A (zh) * | 2023-12-21 | 2024-01-23 | 睿云联(厦门)网络通讯技术有限公司 | 一种基于神经网络的实时回声消除方法 |
-
2021
- 2021-04-16 CN CN202110411034.XA patent/CN113763977A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023226592A1 (zh) * | 2022-05-25 | 2023-11-30 | 青岛海尔科技有限公司 | 噪音信号的处理方法和装置、存储介质及电子装置 |
CN115762552A (zh) * | 2023-01-10 | 2023-03-07 | 阿里巴巴达摩院(杭州)科技有限公司 | 训练回声消除模型的方法、回声消除方法及对应装置 |
CN116013337A (zh) * | 2023-01-10 | 2023-04-25 | 北京百度网讯科技有限公司 | 音频信号处理方法、模型的训练方法、装置、设备和介质 |
CN116013337B (zh) * | 2023-01-10 | 2023-12-29 | 北京百度网讯科技有限公司 | 音频信号处理方法、模型的训练方法、装置、设备和介质 |
CN116612778A (zh) * | 2023-07-18 | 2023-08-18 | 腾讯科技(深圳)有限公司 | 回声及噪声抑制方法、相关装置和介质 |
CN116612778B (zh) * | 2023-07-18 | 2023-11-14 | 腾讯科技(深圳)有限公司 | 回声及噪声抑制方法、相关装置和介质 |
CN117437929A (zh) * | 2023-12-21 | 2024-01-23 | 睿云联(厦门)网络通讯技术有限公司 | 一种基于神经网络的实时回声消除方法 |
CN117437929B (zh) * | 2023-12-21 | 2024-03-08 | 睿云联(厦门)网络通讯技术有限公司 | 一种基于神经网络的实时回声消除方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11894014B2 (en) | Audio-visual speech separation | |
CN113763977A (zh) | 消除回声信号的方法、装置、计算设备和存储介质 | |
CN108198569B (zh) | 一种音频处理方法、装置、设备及可读存储介质 | |
US9704478B1 (en) | Audio output masking for improved automatic speech recognition | |
WO2021196905A1 (zh) | 语音信号去混响处理方法、装置、计算机设备和存储介质 | |
CN103391347B (zh) | 一种自动录音的方法及装置 | |
CN111951819A (zh) | 回声消除方法、装置及存储介质 | |
CN109036460A (zh) | 基于多模型神经网络的语音处理方法和装置 | |
WO2020097828A1 (zh) | 回声消除方法、延时估计方法、装置、存储介质及设备 | |
CN110931028B (zh) | 一种语音处理方法、装置和电子设备 | |
CN111508519A (zh) | 一种音频信号人声增强的方法及装置 | |
WO2022134351A1 (zh) | 单声道语音降噪方法、系统、设备及可读存储介质 | |
US11380312B1 (en) | Residual echo suppression for keyword detection | |
CN104851423B (zh) | 一种声音信息处理方法及装置 | |
CN116705045B (zh) | 回声消除方法、装置、计算机设备和存储介质 | |
Rotili et al. | A real-time speech enhancement framework in noisy and reverberated acoustic scenarios | |
CN114792524B (zh) | 音频数据处理方法、装置、程序产品、计算机设备和介质 | |
CN114333912B (zh) | 语音激活检测方法、装置、电子设备和存储介质 | |
CN114827363A (zh) | 用于通话过程中消除回声的方法、设备和可读存储介质 | |
Principi et al. | A speech-based system for in-home emergency detection and remote assistance | |
CN114758668A (zh) | 语音增强模型的训练方法和语音增强方法 | |
Shankar et al. | Real-time single-channel deep neural network-based speech enhancement on edge devices | |
CN115762546A (zh) | 音频数据处理方法、装置、设备以及介质 | |
CN110580910B (zh) | 一种音频处理方法、装置、设备及可读存储介质 | |
CN113299308A (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 |