Voice Activity Detection Using Cross-Correlation Periodicity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing voice activity detectors face challenges in accurately distinguishing voice and silence regions, especially in low signal-to-noise ratios, leading to misclassification and high computational complexity, which affects applications like karaoke pitch detection.
Innovation Solution
A method that determines whether a data frame corresponds to voice or noise by calculating cross-correlation, periodicity, and variance, using predetermined values to differentiate between speech and noise, and adaptively adjusts energy thresholds based on initial frames and average speech energy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If simple energy thresholds are used for voice activity detection, then the detection process is simple and fast, but the accuracy deteriorates in low signal-to-noise ratio conditions
Solution Approach 1:
The patent changes the detection parameter from simple energy threshold to cross-correlation coefficient. By computing the cross-correlation between the current frame and previous frames, and using the periodicity and variance of the cross-correlation sequence, the system achieves more accurate voice activity detection in low SNR conditions while maintaining reasonable computational complexity
Solution Approach 2:
The patent substitutes the mechanical energy threshold comparison with a statistical cross-correlation analysis. Instead of relying on absolute energy values that are sensitive to noise, the system uses the temporal correlation structure of the signal, which is more robust to noise and provides better voice/silence discrimination
2Measurement precision
If dynamic noise level adjustment is implemented, then the voice detection accuracy improves, but the computational complexity increases
Solution Approach 1:
The patent performs preliminary computation of cross-correlation sequences and their periodicity/variance characteristics during normal operation. These pre-computed statistical features are then used for quick voice activity determination, avoiding the need for complex real-time noise modeling and adaptation
Solution Approach 2:
The patent uses cross-correlation with previous frames as a proxy for noise modeling. Instead of directly estimating and adapting noise parameters, the system copies the temporal structure information from previous frames through cross-correlation, which provides noise-robust voice detection without complex noise adaptation algorithms
3Measurement precision
If high computational complexity algorithms are used, then the voice activity detection accuracy improves, but the processing speed deteriorates
Solution Approach 1:
The patent segments the voice activity determination into distinct computational steps: computing cross-correlation with previous frames, analyzing periodicity of the cross-correlation sequence, and evaluating variance. This segmentation allows each step to be optimized independently and enables parallel processing where applicable, maintaining speed while improving accuracy
Solution Approach 2:
The patent applies partial action by computing cross-correlation only with a limited number of previous frames (not all historical frames), and by using simplified periodicity detection methods. This partial approach achieves sufficient accuracy for voice activity detection without the excessive computational cost of complete spectral analysis or full historical processing
Data Source
AI summary
A system and method is provided for determining whether a data frame of a coded speech signal corresponds to voice or to noise. In one embodiment, a voice activity detector determines a cross-correlation of data. If the cross-correlation is lower than a predetermined cross-correlation value, then the data frame corresponds to noise. If not, then the voice activity detector determines a periodicity of the cross-correlation and a variance of the periodicity. If the variance is less than a predetermined variance value, then the data frame corresponds to voice. In another embodiment, a method determines energy of the data frame and an average energy of the coded speech signal. If the data frame is one of a predetermined number of initial data frames, then a comparison between the average energy to the energy of the data frame is used to determine whether the data frame is noise or voice.


