CN115798521A - 基于双向循环链表的语音检测方法 - Google Patents
基于双向循环链表的语音检测方法 Download PDFInfo
- Publication number
- CN115798521A CN115798521A CN202211423268.7A CN202211423268A CN115798521A CN 115798521 A CN115798521 A CN 115798521A CN 202211423268 A CN202211423268 A CN 202211423268A CN 115798521 A CN115798521 A CN 115798521A
- Authority
- CN
- China
- Prior art keywords
- audio signal
- window
- spectral density
- frame
- linked list
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 66
- 230000002457 bidirectional effect Effects 0.000 title claims abstract description 35
- 230000005236 sound signal Effects 0.000 claims abstract description 162
- 230000000694 effects Effects 0.000 claims abstract description 113
- 230000003595 spectral effect Effects 0.000 claims abstract description 76
- 238000001228 spectrum Methods 0.000 claims abstract description 25
- 230000003044 adaptive effect Effects 0.000 claims description 35
- 238000000034 method Methods 0.000 claims description 21
- 238000009432 framing Methods 0.000 claims description 5
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000001914 filtration Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 206010011224 Cough Diseases 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)
Abstract
本发明涉及语音识别技术领域,公开了一种基于双向循环链表的语音检测方法,旨在解决现有语音活动检测方法存在语音信号的准确性和可靠性较差的问题,方案主要包括:实时获取音频信号;对音频信号进行分帧处理,按顺序将每帧音频信号存入双向循环链表中的对应节点,并计算每帧音频信号的自适应功率谱密度;根据预设帧数对音频信号进行滑动窗口处理,确定各窗口的平滑能量谱密度;判断各窗口音频信号的语音活动状态;统计连续处于活动状态和非活动状态的窗口数,当连续处于非活动状态的窗口数大于第一阈值,并且连续处于活动状态的窗口数大于第二阈值时,输出双向循环链表中对应节点的音频信号。本发明提高了语音活动检测的准确性和完整性。
Description
技术领域
本发明涉及语音识别技术领域,具体来说涉及一种基于双向循环链表的语音检测方法。
背景技术
随着智能硬件和技术的发展,语音识别、语音检测、语音增强等语音智能交互技术已经逐渐成熟的应用到各个领域。语音识别技术在人机交互中有着不可替代的地位。目前的语音识别技术对理想语音信号已经达到了商用的准确率,但是对于一些含噪信号、远场信号,语音识别的准确率往往会有一定幅度的下降。
在远场语音识别时,语音的能量会随着距离增加而衰减,而环境的干扰噪声依然存在,会导致听觉特征提取效率下降。除此之外,在房间中发送语音指令时会在墙壁上被多次反射,使得语音活动检测不能准确提取听觉特征,从而影响识别率。
为了解决远场的语音识别,语音活动检测(Voice Activity Detection,VAD)需要根据听觉特征准确的提取出语音信号。现有基于G.729标准的VAD方法通过计算信号的能量,然后设定门限对信号的每一帧进行简单的分类,这种方式主要存在以下两个问题:一是对于环境噪声的干扰,比如空调、风扇等噪声,使得语音活动检测无法准确的区分噪声信号和语音信号,可靠性较差;二是由于远场语音信号能量的衰减,通常一段语音的起始帧信号强度较弱,使得输出的语音信号并不完整,很难激活语音活动检测。
发明内容
本发明旨在解决现有语音活动检测方法存在语音信号的准确性和可靠性较差的问题,提出一种基于双向循环链表的语音检测方法。
本发明解决上述技术问题所采用的技术方案是:
基于双向循环链表的语音检测方法,包括以下步骤:
步骤1、实时获取音频信号;
步骤2、根据预设帧长对所述音频信号进行分帧处理,按顺序将每帧音频信号存入双向循环链表中的对应节点,并计算每帧音频信号的自适应功率谱密度;
步骤3、根据预设帧数对所述音频信号进行滑动窗口处理,根据对应帧音频信号的自适应功率谱密度确定各窗口的平滑能量谱密度;
步骤4、根据所述平滑能量谱密度判断各窗口音频信号的语音活动状态,所述语音活动状态至少包括活动状态和非活动状态;
步骤5、统计连续处于活动状态和连续处于非活动状态的窗口数,当连续处于非活动状态的窗口数大于第一阈值,并且连续处于活动状态的窗口数大于第二阈值时,根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
为了计算得到每帧音频信号的自适应功率谱密度,步骤2中,所述每帧音频信号的自适应功率谱密度的计算方法具体包括:
对每帧音频信号进行短时傅里叶变换;
根据短时傅里叶变换结果以及预设频率范围计算对应帧音频信号的功率谱密度;
根据所述功率谱密度计算对应帧音频信号的自适应功率谱密度。
进一步地,为了计算得到每帧音频信号的功率谱密度,所述短时傅里叶变换公式如下:
式中,X(l,k)表示l帧音频信号k刻度的频域信号,x(n)表示n刻度的时域信号,L表示帧长;
所述预设频率范围为250-3000Hz,所述功率谱密度的计算公式如下:
式中,Φsum(l)表示l帧音频信号的功率谱密度,Φ(l,k)表示l帧音频信号k刻度的功率谱密度,Φ(l,k)=abs[X(l,k)2],abs[]表示幅值函数,df表示频率分辨率。
进一步地,为了计算得到每帧音频信号的自适应功率谱密度,所述自适应功率谱密度的计算公式如下:
式中,H(l,k)表示l帧音频信号k刻度的自适应功率谱密度,Hsum(l)表示l帧音频信号的自适应功率谱密度。
进一步地,为了避免脉冲噪声的干扰,步骤3中,所述各窗口的平滑能量谱密度的确定方法具体包括:
根据自适应功率谱密度的大小对各窗口对应的每帧音频信号进行排序后,将中间值对应的自适应功率谱密度作为对应窗口的平滑能量谱密度。
进一步地,为了实现语音活动状态检测,步骤4中,所述各窗口音频信号的语音活动状态的判断方法具体包括:
若所述平滑能量谱密度大于或等于第三阈值,则判定对应窗口音频信号的语音活动状态为活动状态,若所述平滑能量谱密度小于第三阈值,则判定对应窗口音频信号的语音活动状态为非活动状态。
进一步地,为了实现对活动状态的进一步判断,所述方法还包括:
若所述平滑能量谱密度大于或等于第三阈值,并且小于或等于第四阈值,则判定对应窗口音频信号的语音活动状态为弱活动状态,若所述平滑能量谱密度大于第四阈值,则判定对应窗口音频信号的语音活动状态为强活动状态,所述第四阈值大于第三阈值。
进一步地,为了进一步提高语音活动检测的准确性,所述第三阈值和第四阈值通过以下公式计算得到:
T3=Th1*Have+(1-Th1)*Hmax;
T4=Th2*Have+(1-Th2)*Hmax;
式中,T3表示第三阈值,T4表示第四阈值,Th1和Th2表示阈值因子,Th1<Th2,Have表示各帧音频信号中自适应功率谱密度的平均值,Hmax表示各帧音频信号中自适应功率谱密度的最大值。
进一步地,为了实现语音段落的准确判断,所述步骤5具体包括:
设置用于活动状态的计数asr_count以及用于非活动状态的计数quite_count,若当前窗口音频数据的语音活动状态为活动状态,则将asr_count加1,将quite_count置为0,并进入下一窗口音频数据的语音活动状态的判断,若当前窗口音频数据的语音活动状态为非活动状态,则判断asr_count是否大于0,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则将quite_count加1后,判断quite_count是否大于第一阈值,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则判断asr_coun是否大于第二阈值,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
进一步地,为了进一步保证语音段落的完整性,步骤5中,所述根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号,具体包括:
根据连续处于活动状态的窗口的第一帧音频信号,通过指针在双向循环链表中的对应位置反向检索预设时间段内的音频信号帧,并将其作为语音段落的起点,将连续处于活动状态的窗口的最后一帧音频信号作为语音段落的终点,输出语音段落对应的音频信号。
本发明的有益效果是:本发明所述的基于双向循环链表的语音检测方法,通过计算实时获取的每帧音频信号的自适应功率谱密度,采用中值滤波技术确定每个窗口的平滑能量谱密度,并基于该平滑能量谱密度进行语音活动检测,由于只计算了人的声音频率范围的功率谱密度,并基于功率谱密度计算自适应功率谱密度,同时采用了中值滤波技术过滤脉冲噪声,进而提高了语音活动检测的准确性和可靠性。同时在语音活动检测时,通过双阈值方式进一步提高了语音活动状态判断的准确性和可靠性。通过将每帧音频信号按顺序存储至双向循环链表中的对应节点,并在语音活动检测到语音段落时,在双向循环链表中通过指针反向检索音频信号,并将其作为语音段落的起点输出音频信号,避免了起始帧信号强度较弱导致的音频信号不完整的问题,提高了语音活动检测的完整性。
附图说明
图1为本发明实施例所述的基于双向循环链表的语音检测方法的流程示意图;
图2为本发明实施例所述的自适应功率谱密度计算的流程示意图;
图3为本发明实施例所述的中值滤波处理流程示意图;
图4为本发明实施例所述的双阈值语音活动检测的流程示意图;
图5为本发明实施例所述的基于双向循环链表的语音段落提取流程示意图;
图6为本发明实施例所述的语音段落判断流程示意图。
具体实施方式
下面将结合附图对本发明的实施方式进行详细描述。
本发明旨在提出一种基于双向循环链表的语音检测方法,以提高语音活动检测的准确性、可靠性和完整性,其主要的技术方案包括:实时获取音频信号;根据预设帧长对所述音频信号进行分帧处理,按顺序将每帧音频信号存入双向循环链表中的对应节点,并计算每帧音频信号的自适应功率谱密度;根据预设帧数对所述音频信号进行滑动窗口处理,根据对应帧音频信号的自适应功率谱密度确定各窗口的平滑能量谱密度;根据所述平滑能量谱密度判断各窗口音频信号的语音活动状态,所述语音活动状态至少包括活动状态和非活动状态;统计连续处于活动状态和连续处于非活动状态的窗口数,当连续处于非活动状态的窗口数大于第一阈值,并且连续处于活动状态的窗口数大于第二阈值时,根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
本发明通过语音采集模块实时采集音频信号,根据音频信号进行语音活动检测,并输出检测到的语音段落。具体地,首先将采集的音频信号根据预设帧长进行分帧处理,并按时间顺序将每帧音频信号存放至双向循环链表中的对应节点,同时针对每帧音频信号,计算其对应的自适应功率谱密度,在具体应用时,获取到一帧音频信号后,即将其存放至双向循环链表中的对应节,同时计算其对应的自适应功率谱密度;然后根据预设帧数对音频信号进行滑动窗口处理,即将预设帧数的音频信号作为一个窗口,分别确定每个窗口的平滑能量谱密度,并确定每个窗口的语音活动状态,即获取到预设帧数的音频信号后,即确定当前窗口的平滑能量谱密度,并根据平滑能量谱密度确定当前窗口的语音活动状态,例如,处于活动状态或非活动状态;再然后,通过统计连续处于活动状态以及非活动状态的窗口数量,来判断音频信号中是否存在语音段落,若是,则在双向循环链表中通过指针反向检索音频信号,并将其作为语音段落的起点输出音频信号,进而保证语音段落的完整性。
实施例
请参阅图1,本发明实施例所述的基于双向循环链表的语音检测方法,包括以下步骤:
步骤1、实时获取音频信号;
本实施例中,可以通过语音采集模块实时采集音频信号,例如麦克风、拾音器等。
步骤2、根据预设帧长对所述音频信号进行分帧处理,按顺序将每帧音频信号存入双向循环链表中的对应节点,并计算每帧音频信号的自适应功率谱密度;
在实际应用时,可以在获取音频信号后,根据预设帧长对音频信号进行分帧处理,在得到每一帧音频信号后,均将其作为当前帧音频信号存入双向循环链表中的对应节点,同时计算当前帧音频信号的自适应功率谱密度。
请参阅图2,本实施例中,所述每帧音频信号的自适应功率谱密度的计算方法具体包括:
步骤21、对每帧音频信号进行短时傅里叶变换,所述短时傅里叶变换公式如下:
式中,X(l,k)表示l帧音频信号k刻度的频域信号,x(n)表示n刻度的时域信号,L表示帧长,一般L取2q;
步骤22、根据短时傅里叶变换结果以及预设频率范围计算对应帧音频信号的功率谱密度;
由于人的声音频率主要集中在250-3000Hz,因此本实施例中预设频率范围取250-3000Hz,能够进一步提高语音活动检测的准确性,所述功率谱密度的计算公式如下:
式中,Φsum(l)表示l帧音频信号的功率谱密度,Φ(l,k)表示l帧音频信号k刻度的功率谱密度,Φ(l,k)=abs[X(l,k)2],abs[]表示幅值函数,df表示频率分辨率。
步骤33、根据所述功率谱密度计算对应帧音频信号的自适应功率谱密度。
在实际应用时,音频信号中除了语音信号外往往存在环境噪声,这类环境噪声通常为单频率信号或者窄带信号。因此为了避免环境噪声对信号能量的计算,本实施例利用对数函数自适应处理信号能量,所述自适应功率谱密度的计算公式如下:
式中,H(l,k)表示l帧音频信号k刻度的自适应功率谱密度,Hsum(l)表示l帧音频信号的自适应功率谱密度。
步骤3、根据预设帧数对所述音频信号进行滑动窗口处理,根据对应帧音频信号的自适应功率谱密度确定各窗口的平滑能量谱密度;
本实施例中,所述各窗口的平滑能量谱密度的确定方法具体包括:根据自适应功率谱密度的大小对各窗口对应的每帧音频信号进行排序后,将中间值对应的自适应功率谱密度作为对应窗口的平滑能量谱密度。
可以理解,本实施例通过中值滤波技术确定各窗口的平滑能量谱密度,中值滤波是一种非线性的平滑技术,对于脉冲噪声有良好的滤除作用,能够保护信号的边缘,避免语音信号的模糊处理。具体地,首先二维的中值滤波函数利用固定帧数或固定长度对音频信号进行滑动窗口处理,请参阅图3,假设各窗口长度为2m+1,即每个窗口包含2m+1帧的音频信号,那么中值滤波通过对样本进行排序并取中值。具体地,假设当前为第l帧时刚好存在某脉冲噪声,比如咳嗽声,物品落地声,此时的功率谱密度会突然高于第l-1,l+1,...l+m,l-m。而语音信号不同于脉冲噪声,功率谱密度的数值往往会存在数帧,所以对Hsum(L-m),Hsum(L-m+1),...Hsum(L),...Hsum(L+m)进行排序处理,取中间值得到当前窗口经中值滤波后的平滑能量谱密度Hmid(L),进而避免脉冲噪声如咳嗽声,物品落地声等对语音活动检测的干扰。
步骤4、根据所述平滑能量谱密度判断各窗口音频信号的语音活动状态,所述语音活动状态至少包括活动状态和非活动状态;
本实施例中,可以通过平滑能量谱密度与阈值的大小关系来判断各窗口音频信号的语音活动状态,具体地,若所述平滑能量谱密度Hmid(L)大于或等于第三阈值T3,则判定对应窗口音频信号的语音活动状态为活动状态,若所述平滑能量谱密度Hmid(L)小于第三阈值T3,则判定对应窗口音频信号的语音活动状态为非活动状态。
为了进一步准确判断,请参阅图4,本实施例还可以设置第四阈值,具体判断方法为:若所述平滑能量谱密度Hmid(L)大于或等于第三阈值T3,并且小于或等于第四阈值T4,则判定对应窗口音频信号的语音活动状态为弱活动状态,若所述平滑能量谱密度Hmid(L)大于第四阈值T4,则判定对应窗口音频信号的语音活动状态为强活动状态,所述第四阈值T4大于第三阈值T3。
在实际应用时,针对当前窗口进行一次语音活动检测,具体为:当Hmid>T4时,表示存在强语音信号,此时判定当前窗口音频信号的语音活动状态为强活动状态,语音活动检测结果为状态2,当T4≥Hmid≥T3时,表示存在弱语音信号,此时判定当前窗口音频信号的语音活动状态为弱活动状态,语音活动检测结果为状态1,当Hmid<T3时,表示不存在语音信号,此时判定当前窗口音频信号的语音活动状态为非活动状态,语音活动检测结果为状态0。
通过双阈值的方式进行语音活动检测,能够更加灵活地判断是否存在语音信号以及存在的语音信号的强弱。
由于实际应用中不同环境的声音信号和噪声信号的强度是不同的,因此在不同环境下的第三阈值和第四阈值应当也有所差异,为了准确确定适合当前环境的第三阈值和第四阈值,本实施例中,所述第三阈值和第四阈值通过以下公式计算得到:
T3=Th1*Have+(1-Th1)*Hmax;
T4=Th2*Have+(1-Th2)*Hmax;
式中,T4>T3,T3表示第三阈值,T4表示第四阈值,Th1和Th2表示阈值因子,Th1<Th2,Have表示各帧音频信号中自适应功率谱密度的平均值,Hmax表示各帧音频信号中自适应功率谱密度的最大值。
具体而言,Have表示已经采集到的所有音频信号中,各窗口对应自适应功率谱密度的平均值,Hmax表示已经采集到的所有音频信号中,各窗口对应自适应功率谱密度的最大值,随着音频信号的持续采集,Have和Hmax数值会越来越趋于稳定,使得第三阈值T3和第四阈值T4更加适应当前环境,从而进一步提高语音活动检测的准确性和可靠性。
步骤5、统计连续处于活动状态和连续处于非活动状态的窗口数,当连续处于非活动状态的窗口数大于第一阈值,并且连续处于活动状态的窗口数大于第二阈值时,根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
具体而言,通过执行上述步骤1-4,实现了对每个窗口对应的音频信号的语音活动检测,当语音活动检测结果为非0时表明有语音信号的存在,所以对于一段连续信号的语音活动检测结果为非0时,这段信号可以认为是语音信号。但是实际的一段语音,在起始帧的时候能量信号较弱,并不能达到语音活动检测的阈值,结果会误判为0,从而造成语音信号的丢失。当语音活动检测到当前帧存在语音段落时,语音往往已经存在数帧。以触发语音活动检测作为语音段落的起点时很容易丢失语音的前几帧数据。为了避免上述问题,本实施例通过提前存储还未触发语音活动检测的数据,并利用双向循环链表提前存放语音数据后再进行语音活动检测,并且会覆盖原有的未触发语音活动检测的数据。除了提前存放数据外,还需要在检测到语音活动检测触发时往前索引存放的语音数据。
请参阅图5,在得到分帧处理的音频信号之后,在双向循环链表中将其存入目前指针所在的链表地址,并将指针指向下一个数据存放的地址。然后对当前窗口对应的音频信号进行语音活动检测,若满足语音段落的要求,则根据连续处于活动状态的窗口的第一帧音频信号,通过指针在双向循环链表中的对应位置反向检索预设时间段内的音频信号帧(一般向前检索0.5s对应的帧数),并将其作为语音段落的起点,将连续处于活动状态的窗口的最后一帧音频信号作为语音段落的终点,输出语音段落对应的音频信号。
请参阅图6,本实施例判断是否满足语音段落要求的步骤具体包括:设置用于活动状态的计数asr_count以及用于非活动状态的计数quite_count,若当前窗口音频数据的语音活动状态为活动状态,则将asr_count加1,将quite_count置为0,并进入下一窗口音频数据的语音活动状态的判断,若当前窗口音频数据的语音活动状态为非活动状态,则判断asr_count是否大于0,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则将quite_count加1后,判断quite_count是否大于第一阈值T1,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则判断asr_coun是否大于第二阈值T2,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
具体而言,在每次完成当前窗口的语音活动检测后,均会判断是否存在语音段落,具体包括:
第一步,若当前窗口的语音活动检测结果为状态2或状态1,说明此刻存在声音信号,活动状态计数asr_count加1,非活动状态计数quite_count置0,然后继续进行第一步语音活动检测;若语音活动检测结果为状态0,说明当前窗口无声音信号,进入第二步。
第二步,当语音活动检测结果为状态0时,有两种情况:若asr_count=0,说明一直无声音信号,语音活动检测结果持续为状态0,则回到第一步继续进行语音活动检测,若asr_count>0,说明在当前的安静窗口之前,有采集到声音信号,则quite_count加1,进入第三步。
第三步,若quite_count>T1,说明在采集到声音信号后,安静环境持续了T1次,可以看作已经采集到了一段完整的声音信号,则继续进行判断进入第四步,反之继续进行第一步的语音活动检测。
第四步,若asr_count计数>T2,说明在环境安静前有采集到持续了T2次的声音信号,可认为是一段完整的语音信号,输出双向循环链表中对应节点的音频信号;反之,则看作是噪声信号,asr_count=0,继续进行语音活动检测。
综上所述,本实施例所述的基于双向循环链表的语音检测方法,通过计算实时获取的每帧音频信号的自适应功率谱密度,采用中值滤波技术确定每个窗口的平滑能量谱密度,并基于该平滑能量谱密度进行语音活动检测,由于只计算了人的声音频率范围的功率谱密度,并基于功率谱密度计算自适应功率谱密度,同时采用了中值滤波技术过滤脉冲噪声,进而提高了语音活动检测的准确性和可靠性。同时在语音活动检测时,通过双阈值方式进一步提高了语音活动状态判断的准确性和可靠性。通过将每帧音频信号按顺序存储至双向循环链表中的对应节点,并在语音活动检测到语音段落时,在双向循环链表中通过指针反向检索音频信号,并将其作为语音段落的起点输出音频信号,避免了起始帧信号强度较弱导致的音频信号不完整的问题,提高了语音活动检测的完整性。
Claims (10)
1.基于双向循环链表的语音检测方法,其特征在于,包括以下步骤:
步骤1、实时获取音频信号;
步骤2、根据预设帧长对所述音频信号进行分帧处理,按顺序将每帧音频信号存入双向循环链表中的对应节点,并计算每帧音频信号的自适应功率谱密度;
步骤3、根据预设帧数对所述音频信号进行滑动窗口处理,根据对应帧音频信号的自适应功率谱密度确定各窗口的平滑能量谱密度;
步骤4、根据所述平滑能量谱密度判断各窗口音频信号的语音活动状态,所述语音活动状态至少包括活动状态和非活动状态;
步骤5、统计连续处于活动状态和连续处于非活动状态的窗口数,当连续处于非活动状态的窗口数大于第一阈值,并且连续处于活动状态的窗口数大于第二阈值时,根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
2.如权利要求1所述的基于双向循环链表的语音检测方法,其特征在于,步骤2中,所述每帧音频信号的自适应功率谱密度的计算方法具体包括:
对每帧音频信号进行短时傅里叶变换;
根据短时傅里叶变换结果以及预设频率范围计算对应帧音频信号的功率谱密度;
根据所述功率谱密度计算对应帧音频信号的自适应功率谱密度。
5.如权利要求1所述的基于双向循环链表的语音检测方法,其特征在于,步骤3中,所述各窗口的平滑能量谱密度的确定方法具体包括:
根据自适应功率谱密度的大小对各窗口对应的每帧音频信号进行排序后,将中间值对应的自适应功率谱密度作为对应窗口的平滑能量谱密度。
6.如权利要求1所述的基于双向循环链表的语音检测方法,其特征在于,步骤4中,所述各窗口音频信号的语音活动状态的判断方法具体包括:
若所述平滑能量谱密度大于或等于第三阈值,则判定对应窗口音频信号的语音活动状态为活动状态,若所述平滑能量谱密度小于第三阈值,则判定对应窗口音频信号的语音活动状态为非活动状态。
7.如权利要求6所述的基于双向循环链表的语音检测方法,其特征在于,所述方法还包括:
若所述平滑能量谱密度大于或等于第三阈值,并且小于或等于第四阈值,则判定对应窗口音频信号的语音活动状态为弱活动状态,若所述平滑能量谱密度大于第四阈值,则判定对应窗口音频信号的语音活动状态为强活动状态,所述第四阈值大于第三阈值。
8.如权利要求7所述的基于双向循环链表的语音检测方法,其特征在于,所述第三阈值和第四阈值通过以下公式计算得到:
T3=Th1*Have+(1-Th1)*Hmax;
T4=Th2*Have+(1-Th2)*Hmax;
式中,T3表示第三阈值,T4表示第四阈值,Th1和Th2表示阈值因子,Th1<Th2,Have表示各帧音频信号中自适应功率谱密度的平均值,Hmax表示各帧音频信号中自适应功率谱密度的最大值。
9.如权利要求1所述的基于双向循环链表的语音检测方法,其特征在于,所述步骤5具体包括:
设置用于活动状态的计数asr_count以及用于非活动状态的计数quite_count,若当前窗口音频数据的语音活动状态为活动状态,则将asr_count加1,将quite_count置为0,并进入下一窗口音频数据的语音活动状态的判断,若当前窗口音频数据的语音活动状态为非活动状态,则判断asr_count是否大于0,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则将quite_count加1后,判断quite_count是否大于第一阈值,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则判断asr_coun是否大于第二阈值,若否,则进入下一窗口音频数据的语音活动状态的判断,若是,则根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号。
10.如权利要求1所述的基于双向循环链表的语音检测方法,其特征在于,步骤5中,所述根据连续处于活动状态的窗口输出双向循环链表中对应节点的音频信号,具体包括:
根据连续处于活动状态的窗口的第一帧音频信号,通过指针在双向循环链表中的对应位置反向检索预设时间段内的音频信号帧,并将其作为语音段落的起点,将连续处于活动状态的窗口的最后一帧音频信号作为语音段落的终点,输出语音段落对应的音频信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211423268.7A CN115798521A (zh) | 2022-11-15 | 2022-11-15 | 基于双向循环链表的语音检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211423268.7A CN115798521A (zh) | 2022-11-15 | 2022-11-15 | 基于双向循环链表的语音检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115798521A true CN115798521A (zh) | 2023-03-14 |
Family
ID=85437542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211423268.7A Pending CN115798521A (zh) | 2022-11-15 | 2022-11-15 | 基于双向循环链表的语音检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115798521A (zh) |
-
2022
- 2022-11-15 CN CN202211423268.7A patent/CN115798521A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3703052B1 (en) | Echo cancellation method and apparatus based on time delay estimation | |
CN109410977B (zh) | 一种基于EMD-Wavelet的MFCC相似度的语音段检测方法 | |
JP5668553B2 (ja) | 音声誤検出判別装置、音声誤検出判別方法、およびプログラム | |
CN111149370B (zh) | 会议系统中的啸叫检测 | |
CN110880329B (zh) | 一种音频识别方法及设备、存储介质 | |
CN104637489B (zh) | 声音信号处理的方法和装置 | |
CN110232933B (zh) | 音频检测方法、装置、存储介质及电子设备 | |
EP2905780A1 (en) | Voiced sound pattern detection | |
WO2014153800A1 (zh) | 语音识别系统 | |
CN111540342B (zh) | 一种能量阈值调整方法、装置、设备及介质 | |
CN105590630B (zh) | 基于指定带宽的定向噪音抑制方法 | |
Jaafar et al. | Automatic syllables segmentation for frog identification system | |
Couvreur et al. | Automatic noise recognition in urban environments based on artificial neural networks and hidden markov models | |
CN113593604A (zh) | 检测音频质量方法、装置及存储介质 | |
CN111755025B (zh) | 一种基于音频特征的状态检测方法、装置及设备 | |
CN115798521A (zh) | 基于双向循环链表的语音检测方法 | |
CN115206341B (zh) | 设备异常声音检测方法、装置和巡检机器人 | |
CN113724692B (zh) | 一种基于声纹特征的电话场景音频获取与抗干扰处理方法 | |
Zhang et al. | Automatic recognition of porcine abnormalities based on a sound detection and recognition system | |
CN102256201A (zh) | 用于助听器的自动环境识别方法 | |
CN111755028A (zh) | 一种基于基音特征的近场遥控器语音端点检测方法及系统 | |
Lim et al. | Acoustic blur kernel with sliding window for blind estimation of reverberation time | |
CN115376548B (zh) | 一种音频信号有声段端点检测方法及系统 | |
US12118987B2 (en) | Dialog detector | |
CN115798514B (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 |