Speech Detection Method Based on Doubly Linked Circular Lists
By employing a speech detection method based on a bidirectional circular linked list, audio signals are acquired in real time and adaptive power spectral density is calculated. Combined with median filtering and dual thresholding techniques, the accuracy and reliability issues of speech activity detection in far-field environments are resolved, and the completeness and reliability of speech segments are achieved in the output.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-15
- Publication Date
- 2026-03-10
AI Technical Summary
Existing speech activity detection methods are sensitive to noise interference in far-field environments, resulting in poor accuracy and reliability of speech signal recognition. In particular, the energy attenuation of far-field speech signals leads to weak signal strength in the initial frame, making it difficult to accurately extract speech features.
A speech detection method based on a bidirectional circular linked list is adopted. The audio signal is acquired in real time, processed in frames and the adaptive power spectral density is calculated. The speech activity state is determined by combining median filtering and dual threshold technology, and speech segments are stored and retrieved in the bidirectional circular linked list.
It improves the accuracy and reliability of speech activity detection, avoids the problem of incomplete speech signals caused by insufficient signal strength in the starting frame, and ensures the complete output of speech segments.
Smart Images

Figure CN115798521B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of speech recognition technology, and more specifically to a speech detection method based on a doubly linked circular list. Background Technology
[0002] With the development of smart hardware and technology, voice-based intelligent interaction technologies such as speech recognition, speech detection, and speech enhancement have been gradually and maturely applied in various fields. Speech recognition technology holds an irreplaceable position in human-computer interaction. Current speech recognition technology has achieved commercially viable accuracy for ideal speech signals, but for noisy signals or far-field signals, the accuracy often decreases to some extent.
[0003] In far-field speech recognition, speech energy attenuates with increasing distance, while environmental noise persists, leading to a decrease in the efficiency of auditory feature extraction. Furthermore, when voice commands are sent in a room, they are reflected multiple times on the walls, making it difficult for speech activity detection to accurately extract auditory features, thus affecting the recognition rate.
[0004] To address far-field speech recognition, Voice Activity Detection (VAD) requires accurate extraction of speech signals based on auditory features. Existing VAD methods based on the G.729 standard calculate signal energy and then classify each frame of the signal using a threshold. This approach suffers from two main problems: first, environmental noise, such as that from air conditioners or fans, makes it difficult for VAD to accurately distinguish between noise and speech signals, resulting in poor reliability; second, due to the attenuation of far-field speech signal energy, the initial frame of a speech segment typically has weak signal strength, leading to an incomplete output speech signal and making it difficult to activate VAD. Summary of the Invention
[0005] This invention aims to address the problem of poor accuracy and reliability of existing speech activity detection methods by proposing a speech detection method based on a bidirectional circular linked list.
[0006] The technical solution adopted by the present invention to solve the above-mentioned technical problems is as follows:
[0007] The speech detection method based on doubly linked circular lists includes the following steps:
[0008] Step 1: Acquire audio signals in real time;
[0009] Step 2: Perform frame segmentation on the audio signal according to the preset frame length, store each frame of audio signal into the corresponding node in the doubly linked circular list in sequence, and calculate the adaptive power spectral density of each frame of audio signal.
[0010] Step 3: Perform sliding window processing on the audio signal according to the preset number of frames, and determine the smooth energy spectral density of each window according to the adaptive power spectral density of the audio signal of the corresponding frame.
[0011] Step 4: Determine the speech activity state of the audio signal in each window based on the smoothed energy spectral density. The speech activity state includes at least an active state and an inactive state.
[0012] Step 5: Count the number of windows that are continuously active and continuously inactive. When the number of windows that are continuously inactive is greater than the first threshold and the number of windows that are continuously active is greater than the second threshold, output the audio signal of the corresponding node in the doubly linked circular list based on the windows that are continuously active.
[0013] To calculate the adaptive power spectral density of each frame of audio signal, step 2 specifically includes the following methods for calculating the adaptive power spectral density of each frame of audio signal:
[0014] Perform a short-time Fourier transform on each frame of audio signal;
[0015] The power spectral density of the corresponding frame audio signal is calculated based on the short-time Fourier transform results and the preset frequency range.
[0016] The adaptive power spectral density of the corresponding frame audio signal is calculated based on the power spectral density.
[0017] Furthermore, in order to calculate the power spectral density of each frame of audio signal, the short-time Fourier transform formula is as follows:
[0018]
[0019] In the formula, X(l,k) represents the frequency domain signal of the l-frame audio signal at scale k, x(n) represents the time domain signal at scale n, and L represents the frame length;
[0020] The preset frequency range is 250-3000Hz, and the formula for calculating the power spectral density is as follows:
[0021]
[0022] In the formula, Φ sum (l) represents the power spectral density of the l-frame audio signal, Φ(l,k) represents the power spectral density of the l-frame audio signal at scale k, and Φ(l,k) = abs[X(l,k)]. 2 ], abs[] represents the magnitude function, d f Indicates frequency resolution.
[0023] Furthermore, in order to calculate the adaptive power spectral density of each frame of audio signal, the formula for calculating the adaptive power spectral density is as follows:
[0024]
[0025]
[0026] In the formula, H(l,k) represents the adaptive power spectral density of the l-frame audio signal at scale k. sum (l) represents the adaptive power spectral density of the l-frame audio signal.
[0027] Furthermore, to avoid interference from impulse noise, step 3 specifically includes the following method for determining the smoothed energy spectral density of each window:
[0028] After sorting the audio signals of each frame corresponding to each window according to the magnitude of the adaptive power spectral density, the adaptive power spectral density corresponding to the median value is used as the smoothed energy spectral density of the corresponding window.
[0029] Furthermore, in order to achieve voice activity state detection, step 4, specifically includes the following method for determining the voice activity state of the audio signals in each window:
[0030] If the smoothed energy spectral density is greater than or equal to the third threshold, the speech activity state of the corresponding window audio signal is determined to be active; if the smoothed energy spectral density is less than the third threshold, the speech activity state of the corresponding window audio signal is determined to be inactive.
[0031] Furthermore, to enable further judgment of the activity status, the method also includes:
[0032] If the smoothed energy spectral density is greater than or equal to the third threshold and less than or equal to the fourth threshold, the speech activity state of the corresponding window audio signal is determined to be a weak activity state. If the smoothed energy spectral density is greater than the fourth threshold, the speech activity state of the corresponding window audio signal is determined to be a strong activity state. The fourth threshold is greater than the third threshold.
[0033] Furthermore, to further improve the accuracy of voice activity detection, the third and fourth thresholds are calculated using the following formulas:
[0034] T3 = Th1 * H ave +(1-Th1)*H max ;
[0035] T4 = Th2 * H ave +(1-Th2)*H max ;
[0036] In the formula, T3 represents the third threshold, T4 represents the fourth threshold, Th1 and Th2 represent threshold factors, Th1 < Th2, and H ave H represents the average adaptive power spectral density in each frame of the audio signal. max This represents the maximum value of the adaptive power spectral density in each frame of the audio signal.
[0037] Furthermore, in order to accurately determine speech segments, step 5 specifically includes:
[0038] Set a counter `asr_count` for the active state and a counter `quite_count` for the inactive state. If the audio activity state of the current window's audio data is active, increment `asr_count` by 1, set `quite_count` to 0, and proceed to determine the audio activity state of the next window's audio data. If the audio activity state of the current window's audio data is inactive, check if `asr_count` is greater than 0. If not, proceed to determine the audio activity state of the next window's audio data. If yes, increment `quite_count` by 1, and check if `quite_count` is greater than a first threshold. If not, proceed to determine the audio activity state of the next window's audio data. If yes, check if `asr_count` is greater than a second threshold. If not, proceed to determine the audio activity state of the next window's audio data. If yes, output the audio signal of the corresponding node in the doubly linked circular list based on the windows that are continuously active.
[0039] Furthermore, to further ensure the integrity of the audio segments, step 5, which involves outputting the audio signals of the corresponding nodes in the doubly linked circular list based on continuously active windows, specifically includes:
[0040] Based on the first frame of audio signal from the continuously active window, the system retrieves audio signal frames within a preset time period by reversing the pointer to the corresponding position in the doubly linked circular list, and uses this frame as the starting point of the speech segment. The system then uses the last frame of audio signal from the continuously active window as the ending point of the speech segment, and outputs the audio signal corresponding to the speech segment.
[0041] The beneficial effects of this invention are as follows: The speech detection method based on a doubly linked circular list described in this invention calculates the adaptive power spectral density of each frame of audio signal acquired in real time, uses median filtering to determine the smooth energy spectral density of each window, and performs speech activity detection based on this smooth energy spectral density. Since only the power spectral density of the human voice frequency range is calculated, and the adaptive power spectral density is calculated based on this power spectral density, while median filtering is used to filter impulse noise, the accuracy and reliability of speech activity detection are improved. Furthermore, during speech activity detection, a dual-threshold approach further improves the accuracy and reliability of speech activity state judgment. By storing each frame of audio signal sequentially into the corresponding node in the doubly linked circular list, and when a speech segment is detected, retrieving the audio signal in reverse order from the doubly linked circular list using a pointer, and outputting the audio signal as the starting point of the speech segment, the problem of incomplete audio signals caused by weak initial frame signal strength is avoided, thus improving the completeness of speech activity detection. Attached Figure Description
[0042] Figure 1 This is a flowchart illustrating the speech detection method based on a doubly linked circular list according to an embodiment of the present invention.
[0043] Figure 2 This is a schematic diagram of the adaptive power spectral density calculation process according to an embodiment of the present invention;
[0044] Figure 3 This is a schematic diagram of the median filtering process described in an embodiment of the present invention;
[0045] Figure 4 This is a schematic diagram of the dual-threshold speech activity detection process according to an embodiment of the present invention;
[0046] Figure 5 This is a schematic diagram of the speech segment extraction process based on a doubly linked circular list as described in an embodiment of the present invention;
[0047] Figure 6 This is a schematic diagram of the speech segment judgment process according to an embodiment of the present invention. Detailed Implementation
[0048] The embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0049] This invention aims to propose a speech detection method based on a bidirectional circular linked list to improve the accuracy, reliability, and completeness of speech activity detection. The main technical solution includes: real-time acquisition of audio signals; segmenting the audio signals into frames according to a preset frame length, storing each frame of audio signal sequentially into the corresponding node of the bidirectional circular linked list, and calculating the adaptive power spectral density of each frame; performing sliding window processing on the audio signals according to a preset number of frames, and determining the smoothed energy spectral density of each window based on the adaptive power spectral density of the corresponding frame; determining the speech activity state of the audio signals in each window based on the smoothed energy spectral density, wherein the speech activity state includes at least an active state and an inactive state; counting the number of windows continuously in an active state and continuously in an inactive state; when the number of windows continuously in an inactive state is greater than a first threshold and the number of windows continuously in an active state is greater than a second threshold, outputting the audio signal of the corresponding node in the bidirectional circular linked list based on the continuously active windows.
[0050] This invention acquires audio signals in real time through a voice acquisition module, detects voice activity based on the audio signals, and outputs the detected voice segments. Specifically, the acquired audio signal is first segmented into frames according to a preset frame length, and each frame is stored in the corresponding node of a doubly linked circular list in chronological order. Simultaneously, the adaptive power spectral density (EPS) of each frame is calculated. In practical applications, after acquiring an audio frame, it is immediately stored in the corresponding node of the doubly linked circular list, and its EPS is calculated. Then, a sliding window process is applied to the audio signal based on a preset number of frames. This means that the preset number of audio frames is treated as a window, and the smoothed power spectral density and speech activity state of each window are determined. That is, after acquiring the preset number of audio frames, the smoothed power spectral density of the current window is determined, and the speech activity state of the current window (e.g., active or inactive) is determined based on this smoothed power spectral density. Next, by counting the number of consecutive active and inactive windows, it is determined whether a speech segment exists in the audio signal. If so, the audio signal is retrieved in reverse order in the doubly linked circular list using a pointer, and this segment is used as the starting point of the speech segment, thus ensuring the integrity of the speech segment.
[0051] Example
[0052] Please see Figure 1 The speech detection method based on a doubly linked circular list according to embodiments of the present invention includes the following steps:
[0053] Step 1: Acquire audio signals in real time;
[0054] In this embodiment, audio signals can be acquired in real time through a voice acquisition module, such as a microphone or pickup.
[0055] Step 2: Perform frame segmentation on the audio signal according to the preset frame length, store each frame of audio signal into the corresponding node in the doubly linked circular list in sequence, and calculate the adaptive power spectral density of each frame of audio signal.
[0056] In practical applications, after acquiring the audio signal, the audio signal can be divided into frames according to the preset frame length. After obtaining each frame of audio signal, it is stored as the current frame audio signal in the corresponding node of the doubly linked circular list, and the adaptive power spectral density of the current frame audio signal is calculated.
[0057] Please see Figure 2 In this embodiment, the method for calculating the adaptive power spectral density of each frame of audio signal specifically includes:
[0058] Step 21: Perform a short-time Fourier transform on each frame of audio signal. The formula for the short-time Fourier transform is as follows:
[0059]
[0060] In the formula, X(l,k) represents the frequency domain signal of the l-frame audio signal at scale k, x(n) represents the time domain signal at scale n, and L represents the frame length, which is generally taken as 2. q ;
[0061] Step 22: Calculate the power spectral density of the corresponding frame audio signal based on the short-time Fourier transform result and the preset frequency range;
[0062] Since the frequency range of human voice is mainly concentrated between 250-3000Hz, this embodiment uses a preset frequency range of 250-3000Hz to further improve the accuracy of voice activity detection. The formula for calculating the power spectral density is as follows:
[0063]
[0064] In the formula, Φ sum (l) represents the power spectral density of the l-frame audio signal, Φ(l,k) represents the power spectral density of the l-frame audio signal at scale k, and Φ(l,k) = abs[X(l,k)]. 2 ], abs[] represents the magnitude function, d f Indicates frequency resolution.
[0065] Step 33: Calculate the adaptive power spectral density of the corresponding frame audio signal based on the power spectral density.
[0066] In practical applications, audio signals often contain environmental noise in addition to speech signals. This environmental noise is usually a single-frequency signal or a narrowband signal. Therefore, to avoid the influence of environmental noise on the calculation of signal energy, this embodiment uses a logarithmic function to adaptively process the signal energy. The formula for calculating the adaptive power spectral density is as follows:
[0067]
[0068]
[0069] In the formula, H(l,k) represents the adaptive power spectral density of the l-frame audio signal at scale k. sum (l) represents the adaptive power spectral density of the l-frame audio signal.
[0070] Step 3: Perform sliding window processing on the audio signal according to the preset number of frames, and determine the smooth energy spectral density of each window according to the adaptive power spectral density of the audio signal of the corresponding frame.
[0071] In this embodiment, the method for determining the smooth energy spectral density of each window specifically includes: sorting the audio signal of each frame corresponding to each window according to the magnitude of the adaptive power spectral density, and taking the adaptive power spectral density corresponding to the median value as the smooth energy spectral density of the corresponding window.
[0072] It is understood that this embodiment uses median filtering to determine the smoothed energy spectral density of each window. Median filtering is a non-linear smoothing technique that effectively filters out impulse noise, preserves signal edges, and avoids blurring of the speech signal. Specifically, the two-dimensional median filtering function first performs sliding window processing on the audio signal using a fixed number of frames or a fixed length. Please refer to [link to relevant documentation]. Figure 3 Assuming each window has a length of 2m+1, meaning each window contains 2m+1 frames of audio signal, median filtering works by sorting the samples and taking the median. Specifically, suppose that in the current l-th frame, there is impulse noise, such as a cough or the sound of something falling. At this moment, the power spectral density will suddenly be higher than in the (l-1), l+1, ..., l+m, lm frames. However, unlike impulse noise, the power spectral density of speech signals often exists across several frames, so for H... sum (Lm),H sum (L-m+1),...H sum (L),...H sum Sort (L+m) and take the median value to obtain the smoothed energy spectral density H of the current window after median filtering. mid (L), thereby avoiding interference from impulse noise such as coughing or the sound of objects falling to the ground on speech activity detection.
[0073] Step 4: Determine the speech activity state of the audio signal in each window based on the smoothed energy spectral density. The speech activity state includes at least an active state and an inactive state.
[0074] In this embodiment, the speech activity state of the audio signal in each window can be determined by the relationship between the smoothed energy spectral density and the threshold. Specifically, if the smoothed energy spectral density H... mid If (L) is greater than or equal to the third threshold T3, then the speech activity state of the corresponding window audio signal is determined to be active. If the smoothed energy spectral density H mid If (L) is less than the third threshold T3, then the voice activity state of the corresponding window audio signal is determined to be inactive.
[0075] For a more accurate assessment, please refer to [link / reference]. Figure 4 In this embodiment, a fourth threshold can also be set. The specific judgment method is as follows: if the smoothed energy spectral density H mid If (L) is greater than or equal to the third threshold T3 and less than or equal to the fourth threshold T4, then the speech activity state of the corresponding window audio signal is determined to be a weak activity state. If the smoothed energy spectral density H mid If (L) is greater than the fourth threshold T4, then the voice activity state of the corresponding window audio signal is determined to be a strong activity state, wherein the fourth threshold T4 is greater than the third threshold T3.
[0076] In practical applications, a voice activity detection is performed on the current window, specifically: when H... mid When T4 > T4, it indicates the presence of a strong speech signal. At this point, the speech activity state of the current window's audio signal is determined to be a strong activity state, and the speech activity detection result is state 2. When T4 ≥ H... mid When T3 is greater than or equal to T3, it indicates the presence of a weak speech signal. In this case, the speech activity state of the current window's audio signal is determined to be weak, and the speech activity detection result is state 1. When H... mid When <T3, it indicates that there is no speech signal. At this time, the speech activity state of the current window audio signal is determined to be inactive, and the speech activity detection result is state 0.
[0077] Using a dual-threshold approach for speech activity detection allows for a more flexible determination of the presence and strength of speech signals.
[0078] Since the intensity of sound and noise signals varies in different environments during practical applications, the third and fourth thresholds should also differ under different environments. In order to accurately determine the third and fourth thresholds suitable for the current environment, in this embodiment, the third and fourth thresholds are calculated using the following formulas:
[0079] T3 = Th1 * H ave+(1-Th1)*H max ;
[0080] T4 = Th2 * H ave +(1-Th2)*H max ;
[0081] In the formula, T4 > T3, T3 represents the third threshold, T4 represents the fourth threshold, Th1 and Th2 represent threshold factors, Th1 < Th2, and H ave H represents the average adaptive power spectral density in each frame of the audio signal. max This represents the maximum value of the adaptive power spectral density in each frame of the audio signal.
[0082] Specifically, H ave H represents the average adaptive power spectral density corresponding to each window among all the acquired audio signals. max This represents the maximum adaptive power spectral density for each window among all the acquired audio signals. As audio signals are continuously acquired, H... ave and H max The values will become increasingly stable, making the third threshold T3 and the fourth threshold T4 more adaptable to the current environment, thereby further improving the accuracy and reliability of speech activity detection.
[0083] Step 5: Count the number of windows that are continuously active and continuously inactive. When the number of windows that are continuously inactive is greater than the first threshold and the number of windows that are continuously active is greater than the second threshold, output the audio signal of the corresponding node in the doubly linked circular list based on the windows that are continuously active.
[0084] Specifically, by executing steps 1-4 above, speech activity detection is achieved for the audio signal corresponding to each window. A non-zero speech activity detection result indicates the presence of a speech signal. Therefore, if the speech activity detection result for a continuous signal is non-zero, this signal can be considered a speech signal. However, in actual speech, the energy signal is weak at the beginning of the frame and cannot reach the threshold for speech activity detection, resulting in a false positive of 0 and thus loss of the speech signal. When speech activity is detected to exist in the current frame, the speech has often already existed for several frames. Using the triggering of speech activity detection as the starting point of a speech segment can easily lead to the loss of the first few frames of speech data. To avoid the above problems, this embodiment pre-stores data that has not yet been triggered for speech activity detection and uses a doubly linked circular list to store the speech data before performing speech activity detection, overwriting the original data that has not yet been triggered for speech activity detection. In addition to pre-storing the data, it is also necessary to index the stored speech data backward when speech activity detection is triggered.
[0085] Please see Figure 5 After obtaining the frame-processed audio signal, it is stored in the doubly linked list at the address of the current pointer, and the pointer is then set to the address where the next data is stored. Then, voice activity detection is performed on the audio signal corresponding to the current window. If the requirements of a voice segment are met, the audio signal frames within a preset time period are retrieved backwards from the corresponding position in the doubly linked list based on the first frame of the continuously active window (generally retrieving the frame number corresponding to 0.5 seconds forward). This frame is used as the starting point of the voice segment, and the last frame of the continuously active window is used as the ending point. The audio signal corresponding to the voice segment is then output.
[0086] Please see Figure 6 The specific steps for determining whether the voice segment requirements are met in this embodiment include: setting a count asr_count for the active state and a count quite_count for the inactive state; if the voice activity state of the current window audio data is active, incrementing asr_count by 1, setting quite_count to 0, and proceeding to determine the voice activity state of the next window audio data; if the voice activity state of the current window audio data is inactive, determining whether asr_count is greater than 0; if not, proceeding to determine the voice activity state of the next window audio data; if yes, incrementing quite_count by 1, determining whether quite_count is greater than the first threshold T1; if not, proceeding to determine the voice activity state of the next window audio data; if yes, determining whether asr_count is greater than the second threshold T2; if not, proceeding to determine the voice activity state of the next window audio data; if yes, outputting the audio signal of the corresponding node in the doubly linked circular list based on the windows that are continuously active.
[0087] Specifically, after each completion of voice activity detection in the current window, it is determined whether a voice segment exists, including:
[0088] First, if the voice activity detection result of the current window is state 2 or state 1, it means that there is a sound signal at this moment. The activity state count asr_count is incremented by 1, and the inactive state count quite_count is set to 0. Then continue to the first step of voice activity detection. If the voice activity detection result is state 0, it means that there is no sound signal in the current window, and proceed to the second step.
[0089] The second step involves two scenarios when the voice activity detection result is state 0: if asr_count = 0, it means there is no sound signal and the voice activity detection result remains state 0, then return to the first step to continue voice activity detection; if asr_count > 0, it means that a sound signal was collected before the current quiet window, then quite_count is incremented by 1, and the process proceeds to the third step.
[0090] The third step is to check if quite_count > T1, which means that the quiet environment lasted for T1 times after the sound signal was collected. This can be considered as a complete sound signal being collected. If so, proceed to the fourth step. Otherwise, continue with the first step of voice activity detection.
[0091] Fourth step: If asr_count > T2, it means that a sound signal lasting for T2 times was collected before the environment became quiet, which can be considered as a complete speech signal, and the audio signal of the corresponding node in the doubly linked circular list is output; otherwise, it is considered as a noise signal, asr_count = 0, and speech activity detection continues.
[0092] In summary, the speech detection method based on a doubly linked circular list described in this embodiment calculates the adaptive power spectral density of each frame of audio signal acquired in real time, uses median filtering to determine the smooth energy spectral density of each window, and performs speech activity detection based on this smooth energy spectral density. Since only the power spectral density of the human voice frequency range is calculated, and the adaptive power spectral density is calculated based on this power spectral density, while median filtering is used to filter impulse noise, the accuracy and reliability of speech activity detection are improved. Furthermore, a dual-threshold approach further enhances the accuracy and reliability of speech activity state judgment during speech activity detection. By storing each frame of audio signal sequentially into the corresponding node in the doubly linked circular list, and when a speech segment is detected, retrieving the audio signal in reverse order from the doubly linked circular list using a pointer, and outputting the signal as the starting point of the speech segment, the problem of incomplete audio signals caused by weak initial frame signal strength is avoided, thus improving the completeness of speech activity detection.
Claims
1. A voice detection method based on a bidirectional circular linked list, characterized by, The method comprises the following steps: Step 1, acquiring audio signals in real time; Step 2, performing frame processing on the audio signals according to a preset frame length, sequentially storing each frame of audio signals in corresponding nodes in a double-linked circular list, and calculating the adaptive power spectral density of each frame of audio signals; Step 3, performing sliding window processing on the audio signals according to a preset number of frames, and determining the smooth energy spectral density of each window according to the adaptive power spectral density of the corresponding frame of audio signals; Step 4, judging the voice activity state of each window of audio signals according to the smooth energy spectral density, wherein the voice activity state at least comprises an active state and an inactive state; Step 5, counting the number of windows continuously in the active state and the number of windows continuously in the inactive state, and outputting the audio signals of the corresponding nodes in the double-linked circular list according to the windows continuously in the active state when the number of windows continuously in the inactive state is greater than a first threshold value and the number of windows continuously in the active state is greater than a second threshold value; The step 5 specifically comprises: setting a count asr_count for the active state and a count quite_count for the inactive state, if the voice activity state of the current window of audio data is the active state, then asr_count is increased by 1, quite_count is set to 0, and the voice activity state of the next window of audio data is judged, if the voice activity state of the current window of audio data is the inactive state, then whether asr_count is greater than 0 is judged, if not, then the voice activity state of the next window of audio data is judged, if yes, then quite_count is increased by 1, whether quite_count is greater than the first threshold value is judged, if not, then the voice activity state of the next window of audio data is judged, if yes, then whether asr_count is greater than the second threshold value is judged, if not, then the voice activity state of the next window of audio data is judged, if yes, then the audio signals of the corresponding nodes in the double-linked circular list are outputted according to the windows continuously in the active state; The number of windows continuously in the active state is the count asr_count, and the number of windows continuously in the inactive state is the count quite_count of the inactive state; The audio signals of the corresponding nodes in the double-linked circular list outputted according to the windows continuously in the active state specifically comprise: the first frame of audio signals of the windows continuously in the active state is used to reversely search the audio signal frames in a preset time period through a pointer at the corresponding position in the double-linked circular list, and the first frame of audio signals of the windows continuously in the active state is used as the end point of the voice paragraph, and the audio signals corresponding to the voice paragraph are outputted.
2. The voice detection method based on a bidirectional circular linked list according to claim 1, wherein, In step 2, the calculation method of the adaptive power spectral density of each frame of audio signals specifically comprises: performing short-time Fourier transform on each frame of audio signals; calculating the power spectral density of the corresponding frame of audio signals according to the short-time Fourier transform result and a preset frequency range; calculating the adaptive power spectral density of the corresponding frame of audio signals according to the power spectral density.
3. The voice detection method based on a bidirectional circular linked list according to claim 2, wherein, The short-time Fourier transform formula is as follows: ; wherein denotes frame audio signal scaled frequency domain signal, denotes scaled time domain signal, denotes frame length; The preset frequency range is 250-3000 Hz, and a calculation formula of the power spectrum density is as follows: ; wherein denotes the power spectral density of the frame audio signal, denotes the frame audio signal the scaled power spectral density, , denotes the amplitude function, denotes the frequency resolution.
4. The voice detection method based on a bidirectional circular linked list according to claim 3, wherein, A calculation formula of the adaptive power spectrum density is as follows: ; ; wherein denotes frame audio signal the scaled adaptive power spectral density, denotes the adaptive power spectral density of the frame audio signal.
5. The voice detection method based on a bidirectional circular linked list according to claim 1, wherein, In step 3, the determination method of the smooth energy spectrum density of each window specifically comprises: After sorting each frame of audio signals corresponding to each window according to the size of the adaptive power spectrum density, the adaptive power spectrum density corresponding to the middle value is taken as the smooth energy spectrum density of the corresponding window.
6. The voice detection method based on a bidirectional circular linked list according to claim 1, wherein, In step 4, the judgment method of the voice activity state of each window audio signal specifically comprises: If the smooth energy spectrum density is greater than or equal to a third threshold value, it is determined that the voice activity state of the audio signal of the corresponding window is an active state, and if the smooth energy spectrum density is less than the third threshold value, it is determined that the voice activity state of the audio signal of the corresponding window is an inactive state.
7. The voice detection method based on a bidirectional circular linked list according to claim 6, wherein, The method further comprises: If the smooth energy spectrum density is greater than or equal to a third threshold value and less than or equal to a fourth threshold value, it is determined that the voice activity state of the audio signal of the corresponding window is a weak active state, and if the smooth energy spectrum density is greater than the fourth threshold value, it is determined that the voice activity state of the audio signal of the corresponding window is a strong active state, and the fourth threshold value is greater than the third threshold value.
8. The voice detection method based on a bidirectional circular linked list according to claim 7, wherein, The third threshold value and the fourth threshold value are calculated by the following formula: ; ; wherein denotes a third threshold value, denotes a fourth threshold value, and denotes a threshold factor, , denotes an average of the adaptive power spectral densities in the respective frame of the audio signal, denotes a maximum of the adaptive power spectral densities in the respective frame of the audio signal.
Citation Information
Patent Citations
End-point detecting method applied to speech identification system
CN101308653A
Voice activity detection method and device, and readable storage medium
CN111292758A