一种自适应端点检测的语音识别方法与系统、智能设备与流程
本发明涉及人工智能领域,特别是涉及一种自适应端点检测的语音识别方法与系统、智能设备。
背景技术:
随着语音识别技术的不断发展,语音识别技术在越来越多的场景中得到了应用。比如,在银行、通信运营商营业厅、行政服务大厅、商场等的网点/场所内,或者电话会议系统等场景下,需要根据音频信息,来进行相应的操控,例如,排队取号、办理具体业务、确定发言人等等。
在进行语音识别时,对于采集得到的音频数据,一般需要先进行端点检测,以识别出说话的片段,再交给处理器或者语音识别引擎进行语音识别。如此,可以避免无效声音数据对存储空间、处理器等资源的占用,避免了资源的浪费,降低了系统开销。
传统的语音端点检测技术,主要是基于特征提取的方案,首先从音频信号中提取一个特征参数,比如短时能量值、过零率等时域/频域上的相关特征参数;然后与预设设置的阈值进行比较,如果超过阈值,则判断为语音。
这些特征参数的阈值一般会被设定为固定值。如果特征参数的阈值设置得过低,就可能会有很多无效的音频数据被用于后续的语音识别,影响语音识别效率、准确率;并且,因为处理了额外的、无效的音频数据,增大了系统开销。如果特征参数的阈值设置得过高,可能会滤除部分有效的音频数据,降低了语音识别准确率。
因此,现有端点检测的方案,不能有效的匹配录音设备所在的环境,导致在不同环境噪音下的语音识别结果相差比较大,语音识别的准确率不稳定,尤其是在非平稳和复杂噪音环境下,语音识别准确率较低。
技术实现要素:
基于此,有必要针对现有端点检测方案存在的不同环境噪音下的语音识别结果相差比较大,语音识别的准确率不稳定的问题,提供一种自适应端点检测的语音识别方法与系统、智能设备。
本申请一实施例提供了一种自适应端点检测的语音识别方法,包括:
构建不同强度等级的环境声音;
在每个强度等级的环境声音下,播放测试声源,采集得到测试音频数据,每个测试音频数据对应一个强度等级的环境声音,每个测试音频数据包括定向增强角度下采集的定向音频数据和非定向增强角度下采集的非定向音频数据;
对每个测试音频数据进行端点检测,得到该测试音频数据的端点检测阈值-端点检测结果的曲线;
获取端点检测结果的参考值,根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果的参考值,确定对应强度等级的环境声音下的端点检测阈值;
汇总所有强度等级的环境声音下的端点检测值,得到环境声音强度与端点检测阈值的映射表;
获取环境声音强度;
根据获取的环境声音强度,从环境声音强度与端点检测阈值的映射表中,得到对应的端点检测阈值;
获取音频数据,利用得到的端点检测阈值,对音频数据进行端点检测;
对端点检测后的音频数据,进行语音识别。
在一些实施例中,所述获取端点检测结果的参考值,根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果的参考值,确定对应强度等级的环境声音下的端点检测阈值步骤,具体包括:
获取端点检测结果的参考值,根据端点检测结果的参考值,构建端点检测结果参考区域;
根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果参考区域的交叉区域,确定对应强度等级的环境声音下的端点检测阈值。
在一些实施例中,所述获取环境声音强度步骤,具体包括:定时获取预设时间段内的环境声音强度;对预设时间段内的环境声音强度进行统计,得到环境声音强度。
在一些实施例中,所述端点检测结果的参考值通过测试确定,具体为:采集慢速、正常语速和快速三种语速下的对话音频;统计其中无对话内容的时间段,并按照正态分布的形式,计算出3倍标准差位置的时间段的最小值,根据该时间段的最小值与端点检测的最小时间间隔的比值,确定端点检测结果的参考值。
在一些实施例中,在所述获取环境声音强度步骤之前,还包括:判断是否有用户,当判断有用户时,才获取环境声音强度。
在一些实施例中,所述端点检测阈值为音量阈值。
本申请另一实施例提供了一种自适应端点检测的语音识别系统,包括:
环境声音构建模块,用于构建不同强度等级的环境声音;
测试音频数据获取模块,用于在每个强度等级的环境声音下,播放测试声源,采集得到测试音频数据,每个测试音频数据对应一个强度等级的环境声音,每个测试音频数据包括定向增强角度下采集的定向音频数据和非定向增强角度下采集的非定向音频数据;
第一端点检测模块,用于对每个测试音频数据进行端点检测,得到该测试音频数据的端点检测阈值-端点检测结果的曲线;
阈值计算模块,用于获取端点检测结果的参考值,根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果的参考值,确定对应强度等级的环境声音下的端点检测阈值;
阈值映射表模块,用于汇总所有强度等级的环境声音下的端点检测值,得到环境声音强度与端点检测阈值的映射表;
环境声音检测模块,用于获取环境声音强度;
端点检测阈值确定模块,用于根据获取的环境声音强度,从环境声音强度与端点检测阈值的映射表中,得到对应的端点检测阈值;
第二端点检测模块,用于获取音频数据,利用得到的端点检测阈值,对音频数据进行端点检测;
语音识别模块,用于对端点检测后的音频数据,进行语音识别。
在一些实施例中,还可以包括用户检测模块,用于判断是否有用户,当判断有用户时,触发环境声音检测模块获取环境声音强度。
本申请一实施例还提供了一种智能设备,包含前述任一项实施例所述的自适应端点检测的语音识别系统。
本申请另一实施例还提供了一种机器可读存储介质,其上存储有计算机程序,所述计算机程序在由处理器执行时实现前述任一项实施例所述的自适应端点检测的语音识别方法。
本申请实施例提供的自适应端点检测的语音识别方案,可以根据当前的环境声音强度,自动匹配出对应的端点检测阈值,由此可以较好的适应当前的环境噪声,使得端点检测更加准确,语音识别的准确率较高且不受环境噪声的影响,即使在非平稳和复杂噪音环境下也可以得到相同准确率的语音识别结果。
附图说明
图1为本申请一实施例的语音识别方法的流程示意图;
图2为本申请另一实施例的语音识别方法的流程示意图;
图3为本申请一实施例中一个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果参考区域的示意图;
图4本申请一实施例的语音识别系统的框架结构示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施方式及实施方式中的特征可以相互组合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。
如图1所示,本申请一实施例公开了一种自适应端点检测的语音识别方法,包括:
步骤s110,构建不同强度等级的环境声音;
本实施例中的语音识别方法,可以语音识别系统来执行,也可以采用其他职能设备来执行。下面以语音识别系统作为执行主体为例,对语音识别方法进行说明。
在不同的语音识别的使用场景中,可能会存在不同强度等级的环境声音——即环境噪音。可以根据环境声音的强度,划分多个环境声音的强度等级。在构建不同强度等级的环境声音,可以采集一段环境声音,然后,通过调节增益大小的方式,得到多个强度等级的环境声音。
示例的,可以分贝值来表征环境声音的强度。以环境声音的强度覆盖0-120分贝为例,可以划分为7个强度等级:0-40、40-50、50-60、60-70、70-80、80-90、90-120分贝。在确定每个强度等级的环境声音的增益大小时,可以以强度等级范围的中值,为增益值。比如说,对于60-70的强度等级,对应的增益值可以取为65。
可以理解的是,根据实际需要,环境声音的强度等级,也可以有其他的划分。每个强度等级对应的增益,也可以采用强度等级范围内的其他数值。
可以理解的是,在构建不同强度等级的环境声音时,对不同强度等级,也可以采用不同的环境声音。
步骤s120,在每个强度等级的环境声音下,播放测试声源,采集得到测试音频数据,每个测试音频数据对应一个强度等级的环境声音,每个测试音频数据包括定向增强角度下采集的定向音频数据和非定向增强角度下采集的非定向音频数据;
在每个强度等级的环境声音下,播放测试声源。可以利用麦克风、麦克风阵列、咪头等拾音设备,来采集声音。根据拾音设备与测试声源播放设备之间的相对位置关系,可以形成有定向增强角度和非定向增强角度两个区域。在定向增强角度内采集得到的声音,即为定向音频数据;在非定向增强角度内采集得到的声音,即为非定向音频数据,二者共同组成一个测试音频数据。
每个测试音频数据对应一个强度等级的环境声音。当有多个强度等级的环境声音时,需要在每个强度等级的环境声音下,重复进行测试音频数据的采集,得到对应数量的测试音频数据。
通过同时采集定向增强角度下采集的定向音频数据和非定向增强角度下采集的非定向音频数据,在确定端点检测阈值时就考虑了非定向增强方向的音频,可以方便过滤非定向增强方向的语音,提升语音识别效果。
步骤130,对每个测试音频数据进行端点检测,得到该测试音频数据的端点检测阈值-端点检测结果的曲线;
端点检测可以使用常见的基于阈值的特征判断的方案,比如音量、短时能量值、过零率等时域/频域上的特征参数的阈值判断。端点检测阈值,与选用的特征参数相对应。
示例的,下面以端点检测采用音量阈值的判断方案为例,来进行方案的描述。端点检测时,如果音频超过音量阈值的,就判断为有声音,反之则判断为无声音。此时,端点检测阈值,就是音量阈值。
对每个测试音频数据进行端点检测时,采用多个不同的端点检测阈值,对测试音频数据进行端点检测。对于一个测试音频数据,采用不同的端点检测阈值,可以得到一个端点检测结果,比如检测出来的端点个数。
因为每个测试音频数据,包括定向音频数据和非定向音频数据,因此,需要对定向音频数据和非定向音频数据分别进行端点检测,并以端点检测阈值作为横坐标,端点检测结果作为纵坐标,绘制、得到定向音频数据的端点检测阈值-端点检测结果的曲线、非定向音频数据的端点检测阈值-端点检测结果的曲线,汇总二者,即可得到该测试音频数据的端点检测阈值-端点检测结果的曲线,如图3所示。
步骤s140,获取端点检测结果的参考值,根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果的参考值,确定对应强度等级的环境声音下的端点检测阈值;
端点检测结果的参考值可以根据经验进行设置,也可以通过测试确定。示例的,端点检测结果的参考值可以通过测试来确定。可以让人朗读对话内容,或者若干人进行对话,对话的语速分为慢速、正常语速和快速三类,采集三种语速下的对话音频;统计其中无对话内容的时间段,并按照正态分布的形式,计算出3σ(σ为该正态分布的标准差)位置的时间段的最小值,根据该时间段的最小值与端点检测的最小时间间隔的比值,即可得到端点检测结果的参考值。
在一些实施例中,在步骤s140中,根据端点检测结果的参考值,可以构建一条纵坐标值等于端点检测结果的参考值的横线——即端点检测结果的参考线;然后确定每个测试音频数据中,定向音频数据的端点检测阈值-端点检测结果的曲线、非定向音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果的参考线的交叉点,将多个交叉点的中心点对应的端点检测阈值,作为对应强度等级的环境声音下的端点检测阈值。
在一些实施例中,步骤s140可以具体包括:
获取端点检测结果的参考值,根据端点检测结果的参考值,构建端点检测结果参考区域;
根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果参考区域的交叉区域,确定对应强度等级的环境声音下的端点检测阈值。
在构建端点检测结果参考区域时,可以设置端点检测结果的参考值的波动区间。示例的,如图3所示,以端点检测结果的参考值为12为例,可以将波动区间设置为±3。也就是说,端点检测结果参考区域可以是,端点检测结果波动下限为6,上限为15围设的区域。
然后,确定每个测试音频数据中,定向音频数据的端点检测阈值-端点检测结果的曲线、非定向音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果参考区域的交叉区域,计算交叉区域的中心点对应的端点检测阈值,作为对应强度等级的环境声音下的端点检测阈值。
步骤s150,汇总所有强度等级的环境声音下的端点检测值,得到环境声音强度与端点检测阈值的映射表;
示例的,环境声音强度与端点检测阈值的映射表,可以如下表1所示。
表1环境声音强度与端点检测阈值的映射表
步骤s200,获取环境声音强度;
环境声音强度的获取,可以是实时的,也可以定时进行的。在语音识别系统中,可以设置一个声音传感器,来采集环境声音强度。声音传感器,可以实时采集环境声音强度,还可以将采集到的环境声音强度存储在存储器或者缓存中。根据需要,步骤s200中的环境声音强度,可以是实时采集的环境声音强度,也可以根据预设时间段内的环境声音强度来确定的。
在一些实施例中,在步骤s200中,环境声音强度根据预设时间段内的环境声音强度来确定。一般来讲,可能在某个具体时刻会有突然增大的环境噪声,但是环境噪声的整体趋势变化,是缓慢的。这种突变的环境噪声,一般对端点检测的影响有限。利用预设时间段内的环境声音强度来确定环境声音强度,可以让后续获得的端点检测阈值比较平稳,避免了语音识别准确率的波动。
步骤s200可以具体为:定时获取预设时间段内的环境声音强度;对预设时间段内的环境声音强度进行统计,得到环境声音强度。示例的,步骤s200可以每分钟执行一次,预设时间段可以设置为执行时刻的前5分钟。执行步骤s200时,首先获取前5分钟内的所有环境声音强度;然后,计算获取的环境声音强度的平均值,作为环境声音强度。对预设时间段内的环境声音强度进行统计,既可以是前述的求取平均值,也可以是确定中位数,还可以是确定众数或者众数的平均值、中位数。
可以理解的是,定时的时间间隔、预设时间段的长度,可以根据实际需要自由确定。
步骤s300,根据获取的环境声音强度,从环境声音强度与端点检测阈值的映射表中,得到对应的端点检测阈值;
步骤s400,获取音频数据,利用得到的端点检测阈值,对音频数据进行端点检测;
步骤s500,对端点检测后的音频数据,进行语音识别。
可以利用麦克风、麦克风阵列、咪头等拾音设备,来获取音频数据。
端点检测可以使用常见的基于阈值的特征判断的方案,比如音量、短时能量值、过零率等时域/频域上的特征参数的阈值判断。端点检测阈值,与选用的特征参数相对应。在一些实施例中,端点检测采用音量阈值的判断方案,超过音量阈值的,就判断为有声音,反之则判断为无声音。此时,端点检测阈值,就是音量阈值。
本申请实施例提供的自适应端点检测的语音识别方法,可以根据当前的环境声音强度,自动匹配出对应的端点检测阈值,由此可以较好的适应当前的环境噪声,使得端点检测更加准确,语音识别的准确率较高且不受环境噪声的影响,即使在非平稳和复杂噪音环境下也可以得到相同准确率的语音识别结果。
在一些实施例中,如图2所示,在步骤s200之前,还可以包括:
步骤s205,判断是否有用户,当判断有用户时,才进入步骤s200,获取环境声音强度;反之,则继续判断是否用户。
可以在语音识别系统中设置红外传感器,用以判断语音识别系统的附近是否有用户。如果判断没有用户,就不需要执行语音识别。如此,仅在有用户在附近时,才会触发语音识别的动作,可以有效降低能耗,更加节能环保。
在一些实施例中,在步骤s200之后,还可以包括:
当判断环境声音强度超过提醒阈值时,可以对用户进行提示,比如,提示用户当前环境比较嘈杂,请大声说话,或者正对拾音设备说话。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
如图4所示,本申请一实施例公开了一种自适应端点检测的语音识别系统,包括:
环境声音构建模块110,用于构建不同强度等级的环境声音;
测试音频数据获取模块120,用于在每个强度等级的环境声音下,播放测试声源,采集得到测试音频数据,每个测试音频数据对应一个强度等级的环境声音,每个测试音频数据包括定向增强角度下采集的定向音频数据和非定向增强角度下采集的非定向音频数据;
第一端点检测模块130,用于对每个测试音频数据进行端点检测,得到该测试音频数据的端点检测阈值-端点检测结果的曲线;
阈值计算模块140,用于获取端点检测结果的参考值,根据每个测试音频数据的端点检测阈值-端点检测结果的曲线与端点检测结果的参考值,确定对应强度等级的环境声音下的端点检测阈值;
阈值映射表模块150,用于汇总所有强度等级的环境声音下的端点检测值,得到环境声音强度与端点检测阈值的映射表;
环境声音检测模块200,用于获取环境声音强度;
端点检测阈值确定模块300,用于根据获取的环境声音强度,从环境声音强度与端点检测阈值的映射表中,得到对应的端点检测阈值;
第二端点检测模块400,用于获取音频数据,利用得到的端点检测阈值,对音频数据进行端点检测;
语音识别模块500,用于对端点检测后的音频数据,进行语音识别。
在一些实施例中,还可以包括用户检测模块205,用于判断是否有用户,当判断有用户时,触发环境声音检测模块200获取环境声音强度。
在一些实施例中,还可以包括警示模块,用于当判断环境声音强度超过提醒阈值时,可以对用户进行提示,比如,提示用户当前环境比较嘈杂,请大声说话,或者正对拾音设备说话。
环境声音构建模块110、测试音频数据获取模块120、第一端点检测模块130、阈值计算模块140、阈值映射表模块150、环境声音检测模块200、端点检测阈值确定模块300、第二端点检测模块400、语音识别模块500、用户检测模块205以及警示模块的具体工作方式,可以参见前面方法实施例中的描述,在此不再赘述。
本申请实施例提供的自适应端点检测的语音识别方案,可以根据当前的环境声音强度,自动匹配出对应的端点检测阈值,由此可以较好的适应当前的环境噪声,使得端点检测更加准确,语音识别的准确率较高且不受环境噪声的影响,即使在非平稳和复杂噪音环境下也可以得到相同准确率的语音识别结果。
本申请一实施例还提供一种智能设备,可以包括有前述自适应端点检测的语音识别系统,或者执行前述自适应端点检测的语音识别方法。
本申请一实施例提供一种机器可读存储介质,其上存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一实施例所述的自适应端点检测的语音识别方法。
所述系统/计算机装置集成的部件/模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施方式方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,所述计算机程序在被处理器执行时,可实现上述各个方法实施方式的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在本发明所提供的几个具体实施方式中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施方式仅仅是示意性的,例如,所述部件的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
另外,在本发明各个实施例中的各功能模块/部件可以集成在相同处理模块/部件中,也可以是各个模块/部件单独物理存在,也可以两个或两个以上模块/部件集成在相同模块/部件中。上述集成的模块/部件既可以采用硬件的形式实现,也可以采用硬件加软件功能模块/部件的形式实现。
对于本领域技术人员而言,显然本发明实施例不限于上述示范性实施例的细节,而且在不背离本发明实施例的精神或基本特征的情况下,能够以其他的具体形式实现本发明实施例。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明实施例的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明实施例内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统、装置或终端权利要求中陈述的多个单元、模块或装置也可以由同一个单元、模块或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除