掌桥专利:专业的专利平台
掌桥专利
首页

音频处理方法及装置

文献发布时间:2023-06-19 09:26:02


音频处理方法及装置

技术领域

本申请涉及音频技术领域,尤其涉及一种音频处理方法及装置。

背景技术

在音频处理过程(例如,语音识别过程)中,通常需要进行语音端点检测,即从音频信号中将用户的语音信号抽出。

现有技术中,通常可以通过语音活性检测(Voice Activity Detection,VAD)进行语音端点的检测。例如,在语音识别过程中,可以先通过语音活性检测截取音频信号中可能包括语音信号的音频片段,该可能包括语音信号的音频片段即为语音端点检测的结果,然后对该音频片段进行语音识别以获得语音识别结果。

然而,现有技术中,基于语音活性检测所截取的音频片段中通常会包括语音类噪声或者能量较大的非语音类噪声,并由此导致存在音频处理结果不准确的问题。

发明内容

本申请实施例提供一种音频处理方法及装置,用以解决现有技术中基于语音活性检测所截取的音频片段中通常会包括语音类噪声或者能量较大的非语音类噪声,并由此导致存在音频处理结果不准确的问题。

第一方面,本申请实施例提供一种音频处理方法,包括:基于语音活性检测方法从音频信号中截取音频片段;采用滑动窗口方法对所述音频片段进行目标处理,得到所述音频片段的处理结果。

第二方面,本申请实施例提供一种音频处理装置,包括:处理器和存储器;所述存储器,用于存储程序代码;所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:

基于语音活性检测方法从音频信号中截取音频片段;采用滑动窗口方法对所述音频片段进行目标处理,得到所述音频片段的处理结果。

第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行上述第一方面任一项所述的音频处理方法。

第四方面,本申请实施例提供一种计算机程序,当所述计算机程序被计算机执行时,用于实现上述第一方面任一项所述的音频处理方法。

本申请实施例提供一种音频处理方法及装置,通过基于语音活性检测方法从音频信号中截取音频片段,并采用滑动窗口方法对音频片段进行目标处理,得到音频片段的处理结果,由于滑动窗口方法可以在一个或多个窗口中将语音活性检测所截取出的音频片段中包括的噪声排除在外,因此采用滑动窗口方法对音频片段进行目标处理,可以避免音频片段中噪声的影响,从而可以提高音频处理的准确性。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1A为本申请实施例提供的音频处理方法的应用场景示意图一;

图1B为本申请实施例提供的音频处理方法的应用场景示意图二;

图2为本申请一实施例提供的音频处理方法的流程示意图;

图3A-图3C为本申请一实施例提供的音频子片段将音频片段的噪声排除在外的示意图;

图4为本申请实施例提供的语音活性检测方法的流程示意图;

图5为本申请另一实施例提供的音频处理方法的流程示意图;

图6为本申请又一实施例提供的音频处理方法的流程示意图;

图7A-图7D为本申请一实施例提供的截取音频片段的当前子片段的示意图;

图8为本申请又一实施例提供的音频处理方法的流程示意图;

图9为本申请一实施例提供的音频处理装置的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例提供的音频处理方法可以应用于任何需要进行语音端点检测的音频处理过程中,该音频处理方法具体可以由音频处理装置执行。该音频处理装置可以为包括音频采集模块(例如,麦克风)的装置,相应的,本申请实施例提供的音频处理方法的应用场景示意图可以如图1A所示,具体的,该音频处理装置的音频采集模块可以采集用户讲话的语音获得音频信号,音频处理装置的处理器可以对音频采集模块采集的音频信号采用本申请实施例提供的音频处理方法进行处理。需要说明的是,图1A仅为示意图,并不对音频处理装置的结构作限定,例如麦克风与处理器之间还可以连接有放大器,用于对麦克风采集到的音频信号进行放大。又例如,麦克风与处理器之间还可以连接有滤波器,用于对麦克风采集到的音频信号进行滤波。

或者,该音频处理装置也可以为不包括音频采集模块的装置,相应的,本申请实施例提供的音频处理方法的应用场景示意图可以如图1B所示,具体的,该音频处理装置的通信接口可以接收其他装置或设备采集的音频信号,音频处理装置的处理器可以对接收到的音频信号采用本申请实施例提供的音频处理方法进行处理。需要说明的是,图1B仅为示意图,并不对音频处理装置的结构以及音频处理装置与其他装置或设备之间的连接方式作限定,例如音频处理装置中通信接口可以替换为收发器。

需要说明的是,对于包括该音频处理装置的设备的类型,本申请实施例可以不做限定,该设备例如可以为智能音响、智能照明设备、智能机器人、手机、平板电脑等。

本申请实施例提供的音频处理方法通过将语音活性检测与滑动窗口方法结合,可以提高音频处理结果的准确性。具体的,在语音活性检测截取音频片段之后,采用滑动窗口方法对该音频片段进行进一步处理,由于滑动窗口方法可以在一个或多个窗口中将音频片段所包括的噪声排除在外,因此采用滑动窗口方法对音频片段进行目标处理,可以避免音频片段中噪声的影响,从而可以提高音频处理的准确性。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

图2为本申请一实施例提供的音频处理方法的流程示意图,本实施例的执行主体可以为音频处理装置,具体可以为音频处理装置的处理器。如图2所示,本实施例的方法可以包括:

步骤201,基于语音活性检测方法从音频信号中截取音频片段。

本步骤中,对于基于语音活性检测方法从音频信号中截取音频片段所采用的具体算法,本申请可以不做限定,例如可以采用能量与过零率双门限算法、噪声-语音分类模型算法、方差法、谱距离法、谱熵法中的一种或多种。以采用能量与过零率双门限算法为例,如图4所示,步骤201例如可以包括如下步骤401至步骤404。

步骤401,首先对音频信号进行分帧,然后逐帧计算各帧的短时平均能量,得到短时能量包络。

其中,可以以一个固定时长对音频信号进行分帧,以固定时长为1秒为例,则可以将音频信号第0秒至第1秒分为一帧,第1秒至第2秒分为一帧,第3秒至第4秒分为一帧,……,从而完成对音频信号的分帧。一帧的短时平均能量即为该帧的平均能量,对能量包络进行连线即可得到短时能量包络。

步骤402,选择一个较高的阈值T1,标记T1与短时能量包络的首尾交点为C和D。

其中,高于阈值T1的部分被认为是语音的概率较高。

步骤403,选取一个较低的阈值T2,其与短时能量包络的交点B位于C的左边,交点E位于D的右边。

其中,T2小于T1。

步骤404,计算各帧的短时平均过零率,选取阈值T3,其与短时平均过零率线的交点A位于B的左边,交点F位于E的右边。

其中,一帧的短时平均过零率即为该帧的平均过零率。

至此,交点A和F即为基于语音活性检测方法所确定的该音频信号的两个端点,交点A至交点F的音频片段即为基于语音活性检测方法从音频信号中所截取音频片段。

需要说明的是,步骤401至步骤404以从一段音频信号中只截取出一个音频片段为例,可以理解的是,从一段音频信号中也可以截取出多个音频片段,本申请对此可以不做限定。

步骤202,采用滑动窗口方法对所述音频片段进行目标处理,得到所述音频片段的处理结果。

本步骤中,采用滑动窗口方法对一个音频片段进行目标处理,具体可以是指采用滑动窗口方法截取该音频片段中的音频子片段,并对音频子片段进行目标处理。由于滑动窗口方法可以在一个或多个窗口中将语音活性检测所截取出的音频片段中包括的噪声排除在外。例如,如图3A所示,假设音频片段的开始部分包括噪声,则音频子片段X1可以将该噪声排除在外。再例如,如图3B所示,假设音频片段的中间部分包括噪声,则音频子片段X2可以将该噪声排除在外。又例如,如图3C所示,假设音频片段的结束部分包括噪声,则音频子片段X3可以将该噪声排除在外。需要说明的是,图3A至图3C中网线填充的部分用于表示噪声。

可以理解的是,在步骤202中一个音频片段的处理结果具体可以为对于该音频片段中的一个音频子片段进行目标处理所得到的处理结果。

目标处理具体可以为在基于语音活性检测方法进行语音端点检测之后进一步可以进行的任意类型的处理。可选的,目标处理可以包括下述中的任意一种:语音识别处理、语音匹配处理或语音端点检测处理。其中,语音识别处理可以是指识别出音频片段中语音信号对应的文字;语音匹配处理可以是指确定与音频片段匹配的目标语音。

可选的,对步骤201所截取的音频片段,可以根据实际需求,均通过步骤202的方式得到音频片段的处理结果,或者有选择的通过步骤202的方式得到音频片段的处理结果。其中,该实际需求例如可以为节省运算资源需求、功能实现需求、简化设计需求等。

例如,当目标处理为语音端点检测处理时,为了提高语音端点检测结果准确性(即为功能实现需求),对于步骤201所截取的音频片段,可以均通过步骤202的方式确定音频片段更准确的语音端点检测结果。

又例如,由于滑动窗口方法对于运算资源消耗较大,当目标处理为语音识别处理或语音匹配处理时,为了节省运算资源(即为节省运算资源需求),对于步骤201所截取的音频片段可以进行预设处理,并根据预设处理得到的结果,判断是否执行步骤202。其中,预设处理例如可以为时长确定处理,进一步的可以根据所确定的音频片段的时长判断是否执行步骤202;或者,预设处理例如可以为特征提取处理,进一步的可以根据所提取的音频特征判断是否执行步骤202。

又例如,当目标处理为语音识别处理或语音匹配处理时,为了简化设计(即为简化实现需求)在能满足功能需求且不考虑节省运算资源的情况下,对于步骤201所截取的音频片段,可以均通过步骤202的方式确定音频片段更准确的语音端点检测结果。

可选的,步骤202在采用滑动窗口方法对音频片段进行目标处理时,可以根据实现需求对该音频片段的所有音频子片段均进行目标处理,或者根据当前正在处理的音频子片段(即,当前子片段)的处理结果决定是否对当前子片段的下一个音频子片段进行目标处理。

例如,以语音识别为例,假设实现需求为识别出音频片段中的文字,一个音频片段通过滑动窗口方法可以截取6个音频子片段,且第1个音频子片段至第6个音频子片段分别的语音识别结果分别为噪声、“开”、“开启”、“启照”、“照明”和噪声,则该音频片段的语音识别结果可以为“开启照明”。其中,语音识别结果为噪声可以表示未成功识别出语音。

又例如,以语音识别为例,假设实现需求为匹配预设关键词,一个音频片段通过滑动窗口方法可以截取6个音频子片段,且第1个音频子片段的语音识别结果为噪声则对第2个音频子片段进行语音识别处理,进一步假设第2个音频子片段的语音识别结果为“请开”且与预设关键词不匹配,则进一步对第3个音频子片段进行语音识别处理,进一步假设第3个音频子片段的语音识别结果为“开启”且与预设关键词匹配,则可以将第3个音频子片段的语音识别结果作为该音频片段的识别结果,且不再对第4-6个音频子片段进行语音识别处理。其中,语音识别结果为噪声可以表示未成功识别出语音。

本实施例中,通过基于语音活性检测方法从音频信号中截取音频片段,并采用滑动窗口方法对音频片段进行目标处理,得到音频片段的处理结果,由于滑动窗口方法可以在一个或多个窗口中将语音活性检测所截取出的音频片段中包括的噪声排除在外,因此采用滑动窗口方法对音频片段进行目标处理,可以避免音频片段中噪声的影响,从而可以提高音频处理的准确性

另外,本实施例提供的方法,由于通过语音活性检测方法已经去掉音频信号中不包括语音信号的子片段,且语音活性检测方法较滑动窗口方法对于运算资源的消耗要小很多,因此在语音活性检测方法之后进一步基于滑动窗口方法进行处理,与直接采用滑动窗口方法对音频信号进行处理相比,可以减小运算资源的消耗。

图5为本申请另一实施例提供的音频处理方法的流程示意图。本实施例在图2所示实施例的基础上,以预设处理为所述目标处理为例,对音频处理方法进行具体描述。如图5所示,本实施例的方法可以包括:

步骤501,基于语音活性检测方法从音频信号中截取音频片段。

需要说明的是,步骤501与步骤201类似,在此不再赘述。

步骤502,以所述音频片段为处理单元,对所述音频片段进行目标处理,得到所述音频片段的处理结果。

本步骤中,以音频片段为处理单元可以是指将音频片段整个作为一个待处理对象进行目标处理。所述目标处理可以包括提取所述音频片段的音频特征,并对所述语音特征利用预先训练的模型进行解码,其中,解码用于得到音频片段的处理结果,例如可以为维特比(Viterbi)解码。

需要说明的是,对于所述音频特征的具体类型,本申请可以不做限定,可选的,音频特征可以包括梅尔频率倒谱系数(Mel Frequency Cepstrum Coefficient,MFCC)特征、线性预测系数(Linear Prediction Coefficients,LPC)LPC特征、滤波器组(Filter bank,Fbank)特征中的一种或多种。

对于所述模型的具体类型,本申请可以不做限定,可选的,所述模型包括高斯混合模型-隐马尔科夫模型(Gaussian Mixed Model-Hidden Markov Model,GMM-HMM模型)、深度神经网络(Deep Neural Networks,DNN)模型、长短期记忆模型(long-short termmemory,LSTM)模型、卷积神经网络(Convolutional Neural Networks,CNN)模型中的一种或多种。

步骤503,判断所述音频片段的处理结果是否满足结果条件。

本步骤中,结果条件的作用可以与对音频片段进行的目标处理的目的相关。可选的,以目标处理包括语音识别处理,且目标处理的目的是为了确定出与关键词匹配的音频片段为例,则所述结果条件可以用于判断音频片段是否与关键词匹配,音频片段的处理结果满足结果条件表征所述音频片段与关键词匹配,音频片段的处理结果不满足结果条件表征所述音频片段不与关键词匹配。可以理解的是,在目标处理是语音识别处理时,相应的,处理结果可以为语音识别结果,具体可以根据语音识别结果的特点实现结果条件。例如,假设上述模型是用于识别出音频片段中的文字,即如果音频片段中存在文字则尽量识别出文字,如果识别不出文字则认为是噪声,则结果条件例如可以为包括在关键词集合中,在处理结果包括在关键词集合中时可以认为是满足结果条件,在处理结果未包括在关键词集合中时可以认为是不满足结果条件。又例如,假设上述模型是用于识别出音频片段中的关键词,即如果音频片段中存在关键词则尽量识别出关键词,如果识别不出关键词则认为是噪声,则结果条件例如可以为处理结果不是噪声,具体的在处理结果不是噪声时可以认为是满足结果条件,在处理结果是噪声时可以认为是不满足结果条件。

可选的,以目标处理包括语音识别处理,且目标处理的目的是为了确定符合特定句式(例如,主谓宾句式)的音频片段,则所述结果条件可以用于判断音频片段是否符合特定句式,音频片段的处理结果满足结果条件表征所述音频片段符合主谓宾句式,音频片段的处理结果不满足结果条件表征所述音频片段不符合特定句式。类似的,可以根据语音识别结果的特点实现结果条件。例如,假设上述模型是用于识别出音频片段中的文字,即如果音频片段中存在文字则尽量识别出文字,如果识别不出文字则认为是噪声,则结果条件例如可以为特定句式条件。又例如,假设上述模型是用于识别出符合特定句式的音频片段,即如果音频片段符合特定句式则尽量识别出特定句式,如果识别不出特定句式则认为是噪声,则结果条件例如可以为处理结果不是噪声。

或者,可选的,以目标处理包括语音匹配处理,且目标处理的目的是为了确定出与目标语音匹配的音频片段为例,所述目标处理包括语音匹配处理,所述结果条件用于判断音频片段是否与目标语音匹配,音频片段的处理结果满足结果条件表征所述音频片段与目标语音匹配,音频片段的处理结果不满足结果条件表征所述音频片段不与目标语音匹配。可以理解的是,在目标处理是语音匹配处理时,相应的,处理结果可以为语音匹配结果,具体可以根据语音匹配结果的特点实现结果条件。例如,假设上述模型是用于确定出音频片段与目标语音的匹配度,则结果条件例如可以为大于或等于匹配度阈值,在处理结果大于或等于匹配度阈值时可以认为是满足结果条件,在处理结果小于匹配度阈值时可以认为是不满足结果条件。又例如,假设上述模型是用于确定出音频片段是否与目标语音匹配,即处理结果可以为是或否两个中的任意一个,则结果条件具体可以为处理结果为是,具体的在处理结果为是时可以认为是满足结果条件,在处理结果为否时可以认为是不满足结果条件。

步骤504,若所述音频片段的处理结果不满足所述结果条件,则采用滑动窗口方法对所述音频片段进行目标处理。

本步骤中,所述目标处理与步骤504中的目标处理可以理解为相同处理,例如均为语音识别处理。与步骤503类似,本步骤中的目标处理可以包括提取所述音频片段的音频特征,并对所述语音特征利用预先训练的模型进行解码。为了避免由于除音频片段中噪声之外的其他因素导致音频片段为处理单元进行目标处理和采用滑动窗口方法进行目标处理所得到的处理结果的不一致的问题,步骤503中以音频片段为处理单元进行目标处理和本步骤中采用滑动窗口方法进行目标处理利用的模型相同。需要说明的是,本申请中音频片段中的噪声与进行处理结果描述的噪声,两者的含义不同,前者具体可以是指音频信号中待采集语音信号之外的能量,后者的含义可以见前述描述。

在步骤503中对于音频片段的处理结果不满足结果条件时,有两种可能,一种是音频片段中未包括满足结果条件的语音信号,另一种是音频片段中包括满足结果条件的音频信号但是由于音频片段中还包括噪声导致步骤503中对于音频片段的处理结果不满足结果条件。为了避免由于音频片段中噪声的影响导致处理结果不准确,因此,可以进一步的采用滑动窗口方法对音频片段进行目标处理。

需要说明的是,在音频片段的处理结果满足结果时,该处理结果即为该音频片段进行目标处理的最终处理结果。在音频片段的处理结果不满足结果时,该处理结果可能为该音频片段进行目标处理的最终处理结果,也可能不是最终处理结果,需要采用滑动窗口方法对音频片段进行目标处理从而进一步确定。

可选的,为了减小运算量,步骤504具体可以为:若所述音频片段的处理结果不满足所述结果条件且所述音频片段满足时长条件,则采用滑动窗口方法对所述音频片段进行目标处理。其中,所述时长条件用于描述满足结果条件的音频片段的可能时长。可选的,考虑到人无法在极短时间内说话,所述时长条件可以包括时长大于或等于时长阈值。

为了进一步简化运算量,可选的,所述时长阈值与满足所述结果条件的音频片段的最短音频长度正相关。例如,时长阈值可以等于满足结果条件的音频片段的最短音频长度,或者时长阈值可以等于满足结果条件的音频片段的最短音频长度与偏移量之和。时长阈值例如可以为0.3秒。

可以理解的是,也可以根据设计需求对时长条件进行其他限制,例如限制音频片段的时长不能过长。这样可以在少影响甚至不影响最终处理效果的前提下,进一步降低处理所需运算资源。

需要说明的是,对于判断音频片段的处理结果是否满足结果条件以及判断音频片段是否满足时长条件两者之间的先后顺序,本申请可以不做限定。以判断是否满足结果条件在前,判断是否满足时长条件在后为例,在确定音频片段满足结果条件之后,进一步可以判断音频片段是否满足时长条件,并在满足时长条件之后采用滑动窗口方法对音频片段进行目标处理。

本实施例中,通过先以音频片段为处理单元,对音频片段进行目标处理,得到所述音频片段的处理结果,然后当所述音频片段的处理结果不满足所述结果条件时,进一步采用滑动窗口方法对所述音频片段进行目标处理,实现了仅对以音频片段为处理单元进行目标处理所得到的处理结果不满足结果条件时,再采用占用运算资源更多的滑动窗口方法对音频片段进行处理,从而在能够提高音频处理的准确性的基础上,进一步减小了运算资源的消耗。

需要说明的是,图5所示实施例中步骤501目标处理的范围,可以较图2所示实施例中目标处理的范围小。示例性的,图2所示实施例中目标处理可以包括语音端点检测处理,图5所示实施例中的目标处理可以不包括语音端点检测处理。

图5所示实施例中以通过步骤501采用语音活性检测方法从音频信号中所截取的音频片段的个数为一个进行说明,可选的,本实施例中步骤501从音频信号中所截取的音频片段的个数也可以为多个。相应的,步骤502具体可以为从多个所述音频片段中选择一个音频片段,并以所述音频片段为处理单元对所述音频片段进行所述目标处理,得到所述音频片段的处理结果;步骤504采用滑动窗口方法对所述音频片段进行目标处理之后,还包括:返回从步骤502执行,直至满足完成条件。

需要说明的是,对于从多个音频片段中选择一个音频片段的顺序,本申请可以不做限定。可选的,可以依据多个所述音频片段在所述音频信号中的时序依次选择一个音频片段;或者,可以依据时长由大至小的顺序从多个所述音频片段中选择一个音频片段;或者,可以依据平均能量由大至小的顺序从多个音频片段中选择一个音频片段;或者,可以从多个所述音频片段中随机选择一个音频片段。

需要说明的是,完成条件可以根据需求灵活设计,本申请可以不做限定。可选的,所述完成条件包括下述中的任意一种:得到目标数量个满足所述结果条件的处理结果、进行预设次数的目标处理、对于预设数量的音频片段进行目标处理、对于所有音频片段进行目标处理。

图6为本申请又一实施例提供的音频处理方法的流程示意图。本实施例在图2、图5所述实施例的基础上,主要描述了采用滑动窗口方法对所述音频片段进行目标处理的一种可选的实现方式。如图6所示,本实施例的方法可以包括:

步骤601,根据窗口的长度以及位置截取所述音频片段的当前子片段。

本步骤中,如图7A所示,首先可以令窗口的位置可以为位于音频片段的起始端,此时当前子片段即为图7A中的当前子片段F1;然后,在图7A所示窗口的位置下,将窗口滑动一个步长后,窗口的位置可以如图7B所示,此时当前子片段即为图7B中的当前子片段F2;之后,在图7B所示窗口的位置下,将窗口滑动一个步长后,窗口的位置可以如图7C所示,此时当前子片段即为图7C中的当前子片段F3;……。

对窗口长度的确定方式,本申请可以不做限定,例如可以由用户输入确定,或者可以为预设值等。示例性的,窗口的长度可以与结果条件相关,可选的,所述窗口的长度可以与满足所述结果条件的音频片段的最长音频长度正相关。其中,正相关只是表示满足结果条件的音频片段的最长音频长度越长则窗口的长度越大这样一种变化趋势,两者具体满足何种公式可以灵活设计,例如窗口的长度可以等于满足结果条件的音频片段的最长音频长度。窗口的长度例如可以为0.75秒、0.8秒、1秒等。

需要说明的是,当目标处理为非语音端点检测处理,例如语音识别处理时,关于结果条件的具体说明可以参见图5所示实施例。当目标处理为语音端点检测处理时,结果条件具体可以为能够用于确定音频片段中较语音活性检测更准确的语音端点的条件。例如,结果条件可以为窗口的总声音能量大于背景噪声能量和语音开始点信噪比的乘积。

步骤602,对所述当前子片段进行目标处理。

步骤603,若所述当前子片段的处理结果满足结果条件,则将所述当前子片段的处理结果作为所述音频片段的处理结果。

可选的,在执行完步骤603之后,可以直接结束;或者,在执行完步骤603之后,可以与执行完步骤604类似,返回至步骤601直至满足结束条件后结束,即一个音频片段的处理结果可以为多个。

步骤604,若所述当前子片段的处理结果不满足所述结果条件,则将窗口滑动一个步长。

其中,在执行完步骤604之后返回步骤601执行,直至满足结束条件,以完成对所述音频片段的所述目标处理。

示例性的,所述结束条件包括:窗口移动到音频片段的结束端,和/或,窗口滑动次数达到最大滑动次数。以结束条件包括窗口移动到音频片段的结束端为例,可以在窗口移动到如图7D所示的位置时结束。以结束条件包括窗口滑动次数达到最大滑动次数,且最大滑动次数为2为例,可以在窗口移动到如图7C所示的位置时结束。

对最大滑动次数以及步长的确定方式,本申请可以不做限定,例如可以由用户输入确定,或者可以为预设值等,最大滑动次数与步长的确定方式可以不同。可选的,可以根据期望的处理精度确定最大滑动次数和/或步长。示例性的,最大滑动次数与期望的处理精度正相关;和/或,所述步长与期望的处理精度负相关。其中,正相关只是表示期望的处理精度越高则最大滑动次数越大这样一种变化趋势,两者具体满足何种公式可以灵活设计,例如最大滑动次数可以等于100与期望的处理精度(例如,0.9)的乘积。类似的,负相关只是表示步长与期望的处理精度负相关可以表示期望的处理精度越高则步长越小这样一种变化趋势,两者具体满足何种公式可以灵活设计。

上述步长例如可以为0.01秒、0.03秒、0.05秒等。最大滑动次数例如可以为10次、15次、30次等。

其中,期望的处理精度可以是指采用滑动窗口方法对音频片段进行目标处理能够得到正确的处理结果的精度。

需要说明的是,图7A至图7D中以窗口从音频片段的起始端开始滑动为例,可以理解的是窗口也可以从音频片段的其他位置开始滑动,例如可以从音频片段的结束端开始滑动,本申请对此可以不做限定。

本实施例中,通过根据窗口的长度以及位置截取音频片段的当前子片段,对当前子片段进行目标处理,若当前子片段的处理结果满足结果条件,则将当前子片段的处理结果作为音频片段的处理结果,若当前子片段的处理结果不满足结果条件,则将窗口滑动一个步长并返回根据窗口的长度以及位置截取音频片段的当前子片段的步骤执行,直至满足结束条件,实现了采用滑动窗口方法对音频片段进行目标处理。

在上述实施例的基础上,在得到满足结果条件音频片段的处理结果时,可以基于该处理结果进行进一步的处理。具体的,本申请实施例还可以包括如下步骤:当所述音频片段的处理结果满足所述结果条件时,进行后续处理。对于后续处理的具体处理内容本申请可以不做限定,具体可以为在获得目标处理的处理结果之后可以进一步进行的任意处理。

示例性的,所述音频片段的处理结果满足结果条件表征所述音频片段与关键词匹配;所述当所述音频片段的处理结果满足所述结果条件时,进行后续处理,包括:当所述音频片段的处理结果与关键词匹配,则执行与所述关键词对应的后续处理。可选的,关键词具体可以理解为指令词,相应的,后续处理可以理解为对于指令词的响应处理。

本申请实施例中,通过当音频片段的处理结果满足结果条件时,进行后续处理,由于通过滑动窗口方法提高了音频片段处理结果的准确性,从而可以提高后续处理的准确性。

以目标处理为语音识别处理,后续处理为人机交互处理为例,如图8所示,本申请又一实施例提供的音频处理方法可以包括如下步骤:

步骤801,基于语音活性检测方法从音频信号中截取音频片段。

步骤802,提取该音频片段的音频特征,并利用预先训练的模型进行解码,输出该音频片段的语音识别结果。

具体的,可以通过该音频片段的音频特征输入该模型,得到该音频片段的语音识别结果。

步骤803,判断该音频片段的语音识别结果是否为指令词。

本步骤中,若该音频片段的语音识别结果是否为指令词,则执行步骤804。若该音频片段的语音识别结果不为指令词,则执行步骤805。

其中,若该音频片段的语音识别结果为指令词,可以表示已成功识别出从音频信号中所截取的音频片段中的语音,进一步可以根据语音识别结果进行后续处理,本实施例中该后续处理具体可以为人机交互处理。若该音频片段的语音识别结果不为指令词(例如语音识别结果为噪声),可以表示未成功识别出从音频信号中所截取的音频片段中的语音,进一步可以采用滑动窗口方法进行识别。

步骤804,进行人机交互处理。

本步骤中,对于人机交互处理的具体处理内容,本申请可以不做限定,例如,对于智能照明设备,当指令词为“开灯”时,则开启智能照明设备的照明装置,对于智能机器人,当指令词为“前进”时,则控制智能机器人向前移动,等等。

步骤805,从该音频片段起始端开始截取窗口中的音频子片段1,提取该音频子片段1的音频特征,并利用该模型进行解码,输出音频子片段1的语音识别结果。

本步骤中,所使用的模型可以与步骤802相同。具体的,可以通过将音频子片段1的音频特征输入该模型,得到音频子片段1的语音识别结果。

步骤806,判断该音频子片段1的语音识别结果是否为指令词。

本步骤中,若该音频子片段1的语音识别结果是否为指令词,则执行步骤804。若该音频子片段1的语音识别结果不为指令词,则执行步骤807。

其中,若该音频子片段1的语音识别结果为指令词,可以表示通过对音频片段中的音频子片段1进行语音识别已成功识别出音频片段中的语音,进一步可以根据语音识别结果进行后续处理。若该音频子片段1的语音识别结果不为指令词,可以表示通过对音频片段中的音频子片段1进行语音识别未成功识别出音频片段中的语音,进一步可以对音频子片段1的下一个音频子片段进行识别以识别出音频片段中的语音。

步骤807,将窗口向右移动一个步长,截取此时窗口中的音频子片段2,提取该音频子片段2的音频特征,并利用该模型进行解码,输出音频子片段2的语音识别结果。

本步骤中,所使用的模型可以与步骤802相同。具体的,可以通过将音频子片段2的音频特征输入该模型,得到音频子片段2的语音识别结果。

步骤808,判断该音频子片段2的语音识别结果是否为指令词。

本步骤中,若该音频子片段2的语音识别结果是否为指令词,则执行步骤804。若该音频子片段2的语音识别结果不为指令词,则执行步骤809。

其中,若该音频子片段2的语音识别结果为指令词,可以表示通过对音频片段中的音频子片段2进行语音识别已成功识别出音频片段中的语音,进一步可以根据语音识别结果进行后续处理。若该音频子片段2的语音识别结果不为指令词,可以表示通过对音频片段中的音频子片段2进行语音识别未成功识别出音频片段中的语音,进一步可以对音频子片段2的下一个音频子片段进行识别以识别出音频片段中的语音。

步骤809,将窗口向右移动一个步长,截取此时窗口中的音频子片段3,提取该音频子片段3的音频特征,并利用该模型进行解码,输出音频子片段3的语音识别结果。

本步骤中,所使用的模型可以与步骤802相同。具体的,可以通过将音频子片段3的音频特征输入该模型,得到音频子片段3的语音识别结果。

……,如此循环对滑动窗口中的音频子片段进行语音识别,中间若语音识别结果为指令词,则结束采用滑动窗口方法对该音频片段的处理,进入人机交互处理。若在满足结束条件时仍未识别为指令词,则认为该音频片段确实不包含指令词的语音,结束采用滑动窗口方法对该音频片段的处理。

本实施例中,通过基于语音活性检测方法从音频信号中截取音频片段,提取该音频片段的音频特征,并利用预先训练的模型进行解码,输出该音频片段的语音识别结果,若该音频片段的语音识别结果为指令词,则进一步进行人机交互处理,若该音频片段的语音识别结果不为指令词,则采用滑动窗口方法对语音片段进行语音识别,实现了在根据音频片段的音频特征无法成功识别出音频片段中的语音时,再采用滑动窗口方法根据音频片段中音频子片段的音频特征识别音频片段中的语音,由于根据音频片段的音频特征进行语音识别的处理速度比采用滑动窗口方法根据音频片段中音频子片段的音频特征识别音频片段中的语音要快很多,因此既能够避免噪音降低识别准确率,又能够缩短处理时长。

另外,图8所示实施例的音频处理方法,较现有技术中如下方式1的准确率高,较现有技术中如下方式2的处理速度快。方式1,基于语音活性检测方法截取音频信号中的音频片段,直接对音频片段进行语音识别,并根据语音识别结果进行人机交互处理。方式2,采用滑动窗口方式对音频信号进行语音识别,并根据语音识别结果进行人机交互处理。

图9为本申请一实施例提供的音频处理装置的结构示意图,如图9所示,该装置900可以包括:处理器901和存储器902。

所述存储器902,用于存储程序代码;

所述处理器901,调用所述程序代码,当程序代码被执行时,用于执行以下操作:

基于语音活性检测方法从音频信号中截取音频片段;

采用滑动窗口方法对所述音频片段进行目标处理,得到所述音频片段的处理结果。

本实施例提供的音频处理装置,可以用于执行前述方法实施例的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

技术分类

06120112160258