语音端点检测方法、装置、设备及计算机可读存储介质与流程
本发明涉及语音信号处理技术领域,尤其涉及一种语音端点检测方法、装置、设备及计算机可读存储介质。
背景技术:
语音端点检测作为前端处理手段,要求其计算量小并能实时输出语音段落。现有方法主要分为两种:基于信号统计特性的方法,及基于深度网络的方法。前者参数量较少,可解释度更高;后者在某种程度上可以解决非平稳噪声下的语音段检测,但是算法性能高度依赖训练集,需要大量的数据进行训练,泛化性较差。实时系统中大多采用统计方法,主要基于信号的子带能量、过零率、以及谱特征等。但是都需要提前设置检测阈值等参数,而真实环境中语音信号动态变化,固定阈值效果不佳,容易出现虚警率高的问题,无法准确地检测语音信号的语音端点。
技术实现要素:
本发明的主要目的在于提供一种语音端点检测方法、装置、设备及计算机可读存储介质,旨在解决如何提高语音端点检测的准确性的技术问题。
为实现上述目的,本发明提供一种语音端点检测方法,所述语音端点检测方法包括:
提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;
依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;
检测所述短时能熵比是否大于所述语音信号的初始检测阈值;
若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
可选地,根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点的步骤,包括:
检测所述语音帧缓冲器中的所有数据帧的数量是否等于第一预设值;
若等于第一预设值,则将所述语音帧缓冲器中第一个数据帧作为所述语音信号的语音段落端点。
可选地,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比的步骤,包括:
根据所述当前频域谱信号计算所述当前数据帧所有频率分量的密度函数,并根据预设的短时谱熵计算公式和各所述密度函数计算所述当前数据帧的短时谱熵;
获取所述当前数据帧的短时能量,根据所述短时能量和所述短时谱熵计算所述当前数据帧的短时能熵比。
可选地,获取所述当前数据帧的短时能量的步骤,包括:
根据所述当前数据帧的时域信号确定所述当前数据帧的帧移和帧长,并根据所述帧移和所述帧长计算所述当前数据帧的短时能量。
可选地,检测所述短时能熵比是否大于所述语音信号的初始检测阈值的步骤之前,包括:
获取预设的静音帧数量,基于所述静音帧数量计算所有静音帧对应的短时能熵比,并根据所述所有静音帧对应的短时能熵比计算短时能熵比均值;
根据所述短时能熵比均值和预设的调节因子计算所述语音信号的初始检测阈值。
可选地,根据所述短时能熵比均值和预设的调节因子计算所述语音信号的初始检测阈值的步骤,包括:
确定各所述静音帧对应的短时能熵比中的最大短时能熵比,计算所述最大短时能熵比和所述短时能熵比均值之间的差值;
计算所述短时能熵比均值和预设的调节因子之间的乘积,并将所述乘积和所述差值之间的和值作为所述语音信号的初始检测阈值。
可选地,检测所述短时能熵比是否大于所述语音信号的初始检测阈值的步骤之后,包括:
若所述短时能熵比小于或等于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的噪音帧缓冲器,并根据所述燥音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
此外,为实现上述目的,本发明还提供一种语音端点检测装置,所述语音端点检测装置包括:
提取模块,用于提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;
计算模块,用于依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;
检测模块,用于检测所述短时能熵比是否大于所述语音信号的初始检测阈值;
确定模块,用于若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
此外,为实现上述目的,本发明还提供一种语音端点检测设备;
所述语音端点检测设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如上所述的语音端点检测方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质;
所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的语音端点检测方法的步骤。
本发明通过提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;检测所述短时能熵比是否大于所述语音信号的初始检测阈值;若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。通过将实时采集的语音信号中所有数据帧的时域信号转换为频域谱信号,并根据遍历的当前数据帧的当前频域谱信号计算短时能熵比,在短时能熵比大一初始检测阈值时,将当前数据帧移动至语音帧缓冲器,以确定语音信号的语音段落端点,从而避免了现有技术中由于真实缓冲中语音信号动态变化,无法准确进行检测的现象发生,提高了语音端点检测的准确性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的语音端点检测设备结构示意图;
图2为本发明语音端点检测方法第一实施例的流程示意图;
图3为本发明语音端点检测装置的功能模块示意图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的语音端点检测设备结构示意图。
如图1所示,该语音端点检测设备可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,语音端点检测设备还可以包括摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度。当然,语音端点检测设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的语音端点检测设备结构并不构成对语音端点检测设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及语音端点检测程序。
在图1所示的语音端点检测设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的语音端点检测程序,并执行本发明实施例提供的语音端点检测方法。
参照图2,本发明提供一种语音端点检测方法,在语音端点检测方法一实施例中,语音端点检测方法包括以下步骤:
步骤s10,提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;
在本实施例中,通过实时计算语音信号的短时能熵比,确定检测阈值,并根据检测阈值准确地检测出语音段落的起止位置,从而便于后续的语音分割和语音识别任务。因此可以通过语音采集装置,如麦克风进行实时采集语音信号,并对实时采集的语音信号进行逐帧提取时域信号x(n),即采集各个数据帧的时域信号。并且为了平滑信号,会设置帧移小于帧长,以便进行计算每个数据帧的短时能量ei,其中,i表示第i帧的时域数据。并且在获取到所有数据帧的时域信号后,会对所有数据帧的时域信号进行短时离散傅立叶变换,以获取各个数据帧的频域谱信号yi。其中,对时域信号进行短时离散傅立叶变换的方式采用常规的方式,在此不做阐述。
步骤s20,依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;
当获取到语音信号的各个数据帧的频域谱信号后,需要对所有数据帧采用相同的操作,以确定语音段落。因此可以依次遍历各个数据帧,并确定遍历的数据帧,即当前数据帧对应的频域谱信号,将其作为当前频域谱信号。再根据当前频域谱信号计算当前数据帧的短时能熵比。由于对于一个数据帧,逐频带计算谱能量,计算第i帧数据的第k频率分量的归一化谱概率密度函数为pi(k)=yi(k)/σmyi(m),其中,m=1,2,...,nfft/2,其中,nfft为快速傅立叶变换长度。
因此在计算当前数据帧的短时能熵比时,可以采用归一化谱概率密度函数为pi(k)=yi(k)/σmyi(m)先计算当前数据帧的所有密度函数,再通过这些密度函数来计算当前数据帧的短时谱熵,即通过公式hi=—σkpi(k)log(pi(k))来计算当前数据帧的短时谱熵。再根据当前数据帧的短时能量ei来计算。因此在计算当前数据帧的短时能熵比时,可以根据短时能熵比的计算公式计算得到当前数据帧的短时能熵比。短时能熵比的计算公式可以是
并且在本提案中,当获取到语音信号的各个数据帧的频域谱信号后,还可以加入经验约束,即由于语音频谱主要存在于[100hz,3500hz]区间,而噪声频谱存在于全频带。因此为了更好地区分语音和噪音,可以在逐频带计算谱能量时,只计算[100hz,3500hz]区间部分的数据。也就是对每个数据帧只计算[100hz,3500hz]之间的数据。
其中,获取短时能量的方式可以是先设时域信号为x(n),加窗函数w(n),分帧处理后得到的第i帧语音信号为yi(n),则yi(n)满足:
yi(n)=w(n)*x((i-1)*inc+n),
1≤n≤l,1≤i≤fn
其中,w(n)为窗函数,一般为矩形窗或汉明窗,y(i)是一帧的数值,n=1,2...l,i=1,2,...,fn,l为帧长,inc为帧移的长度;fn为分帧后的总帧数。则第i帧语音信号yi(n)的短时能量公式为:
在获取到帧移和帧长后,就可以根据上述短时能量公式来计算当前数据帧的短时能量。
步骤s30,检测所述短时能熵比是否大于所述语音信号的初始检测阈值;
在计算得到当前数据帧的短时能熵比后,可以根据短时能熵比值对当前帧进行判定,根据信号特性,语音的短时能熵比大于噪音的能熵比,以此确定当前帧是属于噪音还是语音。因此还需要获取语音信号的初始检测阈值,以便检测当前数据帧的短时能熵比是否大于初始检测值,并根据不同的检测结果执行不同的操作。因此需要提前设置语音信号的初始检测域值,而初始检测阈值可以是通过t0=α*μ+φ计算公式计算得到,其中,α为调节因子,μ为静音帧的短时能熵比均值,φ=max(eh1-n)—μ,t0为初始检测阈值,n为静音帧的数量。
提前获取语音信号的初始检测阈值的方式可以是先获取提前设置的静音帧的数量,即静音帧数量,再根据静音帧数据和上述的短时能熵比计算公式计算所有静音帧对应的短时能熵比,并对各个短时能熵比进行均值计算,以获取短时能熵比均值。
同时将各个静音帧对应的短时能熵比进行对比,以获取最大的短时能熵比,即最大短时能熵比,计算最大短时能熵比和短时能熵比均值之间的差值;再计算短时能熵比均值和用户提前设置的调节因子之间的乘积,计算该乘积和差值之间的和值,并将此和值作为语音信号的初始检测阈值。也就是计算初始检测阈值为t0=α*μ+φ,其中α为调节因子,μ为静音帧的短时能熵比均值,φ=max(eh1-n)—μ。
当经过判断发现短时能熵比小于或等于语音信号的初始检测阈值时,则可以将当前数据帧移动至提前设置的噪音帧缓冲器,并继续对下一个数据帧进行相同的检测,以确定是否移动至噪音帧缓冲器,直至语音信号的各个数据帧检测完成。并且当噪音帧缓冲器中的数据帧数量大于噪音帧缓冲器中预设的值(即第二预设值),如l0时,则可以确定语音信号中存在噪音,并且可以判定语音信号中语音段落结束进入噪音段落。而且语音段落的起始点为噪音缓冲器中的第一帧。
步骤s40,若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
当经过判断发现短时能熵比大于语音信号的初始检测阈值时,则可以将当前数据帧移动至提前设置的语音帧缓冲器,并继续对下一个数据帧进行相同的检测,以确定是否移动至语音帧缓冲器,直至语音信号的各个数据帧检测完成。并且在本实施例中,为了消除实际环境中的突发噪音,因此可以设置两个缓冲器,即语音帧缓冲器和噪音帧缓冲器,并且设置语音帧缓冲器的长度为l1,噪音帧缓冲器的长度为l0,其中,l0>n,n是静音帧的数量。
并且当语音帧缓冲器中的数据帧数量大于语音帧缓冲器中预设的值(即第一预设值),如l1时,则可以确定语音信号中存在语音,并且可以判定语音信号中语音段落的起始位置为语音缓冲器中的第一帧。若短时能熵比小于或等于初始检测阈值,则将当前数据帧移动至预设的噪音帧缓冲器,并在噪音帧缓冲器满时,将语音段落的终止点设置为噪音缓冲器的第一帧,即可以确定语音信号的语音段落端点为语音缓冲器中的第一帧(第一个数据帧)和噪音缓冲器的第一帧(第一个数据帧)。
在本实施例中,通过提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;检测所述短时能熵比是否大于所述语音信号的初始检测阈值;若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。通过将实时采集的语音信号中所有数据帧的时域信号转换为频域谱信号,并根据遍历的当前数据帧的当前频域谱信号计算短时能熵比,在短时能熵比大一初始检测阈值时,将当前数据帧移动至语音帧缓冲器,以确定语音信号的语音段落端点,从而避免了现有技术中由于真实缓冲中语音信号动态变化,无法准确进行检测的现象发生,提高了语音端点检测的准确性。
进一步地,在本发明第一实施例的基础上,提出了本发明语音端点检测方法的第二实施例,本实施例是本发明第一实施例的步骤s30,根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点的步骤,包括:
步骤m,检测所述语音帧缓冲器中的所有数据帧的数量是否等于第一预设值;
在本实施例中,在将当前数据帧移动至语音帧缓冲器后,会对语音缓冲器中已有的数据帧进行检测,即检测语音帧缓冲器中的所有数据帧的数量是否等于提前设置的第一预设值,并根据不同的检测结果执行不同的操作。其中,第一预设值可以是提前设置的语音帧缓冲器的长度
步骤n,若等于第一预设值,则将所述语音帧缓冲器中第一个数据帧作为所述语音信号的语音段落端点。
当经过判断发现语音帧缓冲器中的所有数据帧的数量等于第一预设值,则可以将语音帧缓冲器中的第一个数据帧作为语音信号的语音段落端点,也就是语音段落的起始位置。若语音帧缓冲器中的所有数据帧的数量小于第一预设值,则继续遍历下一个数据帧。
在本实施例中,通过在语音帧缓冲器中所有数据帧的数量等于第一预设值时,将语音帧缓冲器中第一个数据帧作为语音信号的语音段落端点,从而保障了计算得到的语音段落端点的准确性。
进一步地,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比的步骤的步骤,包括:
步骤a,根据所述当前频域谱信号计算所述当前数据帧所有频率分量的密度函数,并根据预设的短时谱熵计算公式和各所述密度函数计算所述当前数据帧的短时谱熵;
在本实施例中,当计算当前数据帧的短时能熵比时,可以先根据当前频域谱信号计算当前数据帧中所有频率分量的密度函数,如计算第i帧数据的第k频率分量的归一化谱概率密度函数(即密度函数)为pi(k)=yi(k)/σmyi(m),其中m=1,2,...,nfft/2,其中nfft为快速傅里叶变换长度。并在计算得到所有频率分量的密度函数后,可以根据预设的短时谱熵计算公式和各个密度函数计算当前数据帧的短时谱熵。其中,预设的短时谱熵计算公式可以是hi=—σkpi(k)log(pi(k))。
步骤b,获取所述当前数据帧的短时能量,根据所述短时能量和所述短时谱熵计算所述当前数据帧的短时能熵比。
在计算得到短时谱熵后,还需要获取当前数据帧的短时能量ei,再将短时能量ei和短时谱熵输入到公式
在本实施例中,通过根据当前频域谱信号确定所有密度函数,并根据预设的短时谱熵计算公式和各个密度函数计算当前数据帧的短时谱熵,再根据短时谱熵和短时能量计算当前数据帧的短时能熵比,从而保障了计算得到的短时能熵比的准确性。
具体地,获取所述当前数据帧的短时能量的步骤,包括:
步骤c,根据所述当前数据帧的时域信号确定所述当前数据帧的帧移和帧长,并根据所述帧移和所述帧长计算所述当前数据帧的短时能量。
在本实施例中,获取短时能量的方式可以是先设时域信号为x(n),加窗函数w(n),分帧处理后得到的第i帧语音信号为yi(n),则yi(n)满足:
yi(n)=w(n)*x((i-1)*inc+n),
1≤n≤l,1≤i≤fn
其中,w(n)为窗函数,一般为矩形窗或汉明窗,y(i)是一帧的数值,n=1,2...l,i=1,2,...,fn,l为帧长,inc为帧移的长度;fn为分帧后的总帧数。则第i帧语音信号yi(n)的短时能量公式为:
在获取到帧移和帧长后,就可以根据上述短时能量公式来计算当前数据帧的短时能量。
在本实施例中,通过根据当前数据帧的时域信号确定当前数据帧的帧移和帧长,以便计算当前数据帧的短时能量,从而保障了计算得到的短时能量的准确性。
进一步地,检测所述短时能熵比是否大于所述语音信号的初始检测阈值的步骤之前,包括:
步骤d,获取预设的静音帧数量,基于所述静音帧数量计算所有静音帧对应的短时能熵比,并根据所述所有静音帧对应的短时能熵比计算短时能熵比均值;
在本实施例中,需要获取提前设置的静音帧的数量,即静音帧数量,再根据静音帧数据和上述的短时能熵比计算公式计算所有静音帧对应的短时能熵比,并对各个短时能熵比进行均值计算,以获取短时能熵比均值。
步骤e,根据所述短时能熵比均值和预设的调节因子计算所述语音信号的初始检测阈值。
同时将各个静音帧对应的短时能熵比进行对比,以获取最大的短时能熵比,即最大短时能熵比,计算最大短时能熵比和短时能熵比均值之间的差值;再计算短时能熵比均值和用户提前设置的调节因子之间的乘积,计算该乘积和差值之间的和值,并将此和值作为语音信号的初始检测阈值。也就是计算初始检测阈值为t0=α*μ+φ,其中α为调节因子,μ为静音帧的短时能熵比均值,φ=max(eh1-n)—μ。
在本实施例中,通过根据预设的静音帧数量计算短时能熵比均值,再根据预设的调节因子和短时能熵比均值计算语音信号的初始检测阈值,从而保障了计算得到的初始检测阈值的准确性。
进一步地,根据所述短时能熵比均值和预设的调节因子计算所述语音信号的初始检测阈值的步骤,包括:
步骤f,确定各所述静音帧对应的短时能熵比中的最大短时能熵比,计算所述最大短时能熵比和所述短时能熵比均值之间的差值;
在本实施例中,计算初始检测域值时,需要依次将各个静音帧对应的短时能熵比进行比较,根据比较结果获取数值最大的最大短时能熵比,再将最大短时能熵比减去短时能熵比均值,以获取最大短时能熵比和短时能熵比均值之间的差值。
步骤g,计算所述短时能熵比均值和预设的调节因子之间的乘积,并将所述乘积和所述差值之间的和值作为所述语音信号的初始检测阈值。
获取用户提前设置的调节因子,并将短时能熵比均值和调节因子进行相乘,以获取两者之间的乘积,再计算该乘积和上述计算得到的最大短时能熵比和短时能熵比均值之间的差值进行相加,以获取其和值,并将此和值作为语音信号的初始检测阈值。也就是计算初始检测阈值为t0=α*μ+φ,其中α为调节因子,μ为静音帧的短时能熵比均值,φ=max(eh1-n)—μ。
在本实施例中,通过计算各个静音帧对应的最大短时能熵比和短时能熵比均值的差值,并计算短时能熵比均值和调节因子的乘积,将乘积和差值之间的和值作为初始检测阈值,从而保障了计算得到的初始检测阈值的准确性。
进一步地,检测所述短时能熵比是否大于所述语音信号的初始检测阈值的步骤之后,包括:
步骤h,若所述短时能熵比小于或等于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的噪音帧缓冲器,并根据所述燥音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
当经过判断发现短时能熵比小于或等于语音信号的初始检测阈值时,则可以将当前数据帧移动至提前设置的噪音帧缓冲器,并继续对下一个数据帧进行相同的检测,以确定是否移动至噪音帧缓冲器,直至语音信号的各个数据帧检测完成。并且当噪音帧缓冲器中的数据帧数量大于噪音帧缓冲器中预设的值(即第二预设值),如
在本实施例中,通过在确定短时能熵比小于或等于初始检测阈值时,将当前数据帧移动至噪音帧缓冲器,根据噪音帧缓冲器中的所有数据帧确定语音段落端点,从而保障了计算得到的语音段落端点的准确性。
此外,参照图3,本发明实施例还提出一种语音端点检测装置,所述语音端点检测装置包括:
提取模块a10,用于提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;
计算模块a20,用于依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;
检测模块a30,用于检测所述短时能熵比是否大于所述语音信号的初始检测阈值;
确定模块a40,用于若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
可选地,确定模块a40,还用于:
检测所述语音帧缓冲器中的所有数据帧的数量是否等于第一预设值;
若等于第一预设值,则将所述语音帧缓冲器中第一个数据帧作为所述语音信号的语音段落端点。
可选地,计算模块a20,用于:
根据所述当前频域谱信号计算所述当前数据帧所有频率分量的密度函数,并根据预设的短时谱熵计算公式和各所述密度函数计算所述当前数据帧的短时谱熵;
获取所述当前数据帧的短时能量,根据所述短时能量和所述短时谱熵计算所述当前数据帧的短时能熵比。
可选地,计算模块a20,用于:
根据所述当前数据帧的时域信号确定所述当前数据帧的帧移和帧长,并根据所述帧移和所述帧长计算所述当前数据帧的短时能量。
可选地,检测模块a30,还用于:
获取预设的静音帧数量,基于所述静音帧数量计算所有静音帧对应的短时能熵比,并根据所述所有静音帧对应的短时能熵比计算短时能熵比均值;
根据所述短时能熵比均值和预设的调节因子计算所述语音信号的初始检测阈值。
可选地,检测模块a30,还用于:
确定各所述静音帧对应的短时能熵比中的最大短时能熵比,计算所述最大短时能熵比和所述短时能熵比均值之间的差值;
计算所述短时能熵比均值和预设的调节因子之间的乘积,并将所述乘积和所述差值之间的和值作为所述语音信号的初始检测阈值。
可选地,检测模块a30,还用于:
若所述短时能熵比小于或等于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的噪音帧缓冲器,并根据所述燥音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
其中,语音端点检测装置的各个功能模块实现的步骤可参照本发明语音端点检测方法的各个实施例,此处不再赘述。
本发明还提供一种语音端点检测设备,所述语音端点检测设备包括:存储器、处理器及存储在所述存储器上的语音端点检测程序;所述处理器用于执行所述语音端点检测程序,以实现以下步骤:
提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;
依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;
检测所述短时能熵比是否大于所述语音信号的初始检测阈值;
若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现如下步骤:
提取实时采集的语音信号中所有数据帧的时域信号,将各所述时域信号转换为频域谱信号;
依次遍历各所述频域谱信号,确定遍历的当前数据帧对应的当前频域谱信号,根据所述当前频域谱信号计算所述当前数据帧的短时能熵比;
检测所述短时能熵比是否大于所述语音信号的初始检测阈值;
若所述短时能熵比大于所述语音信号的初始检测阈值,则将所述当前数据帧移动至预设的语音帧缓冲器,并根据所述语音帧缓冲器中的所有数据帧确定所述语音信号的语音段落端点。
本发明计算机可读存储介质具体实施方式与上述语音端点检测方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除