Voice Activity Detection in the Presence of Non-Stationary Background Noise
Total Page:16
File Type:pdf, Size:1020Kb
Voice Activity Detection in the presence of Non-stationary Background Noise A PROJECT REPORT submitted in partial fulfillment for the SUMMER INTERNSHIP PROGRAM by Sunil Srinivasa (EE00124) IIT Madras under the guidance of Dr. N. Rama Murthy Scientist ’F’ Signal Processing Group (SPG) Centre for Artificial Intelligence and Robotics(CAIR) June 2003 CERTIFICATE This is to certify that, the report titled ”Voice Activity Detection in the presence of Non-stationary Background Noise” is a bona fide record of the work done by Sunil Srinivasa, EE00124, Department of Electrical Engineering, Indian Institute of Technology, Madras, under my guidance and supervision, in partial fulfillment of the requirements for the Summer Internship Program. Dr. N. Rama Murthy Scientist ’F’ , Signal Processing Group (SPG) Center for Artificial Intelligence And Robotics (CAIR) Bangalore Date: June 20, 2003 Place: Bangalore Acknowledgments I express my sincere gratitude to my mentor and adviser, Dr. N. Rama Murthy for his guidance, patience and encouragement throughout the development of this project. He was always available for stimulating discussions and provided the best support I could have desired. I am also indebted to him for the encouragement and the freedom I enjoyed throughout. I also acknowledge the invaluable assistance offered by Mr. Sanjeev Gupta. His cheerful and helping manner aided me in the project. I would also like to thank all my professors in the Electrical Engineering Depart- ment at IIT Madras. I also take this opportunity to thank my parents and my brother, Sudhir. Their help never wavered. Miscellaneous Information This document was written in LaTeX, using MikTeX 2.2.7 (www.miktek.org) and TeXnicCenter (www.toolscenter.org). Simulation code was written in Matlab 6.1, with the DSP and Communications Toolboxes. The Matlab code in the m and html formats; and this document, in the pdf, ps and tex formats are available for download from www.geocities.com/suniliitm. 2 Contents 1 Overview 7 1.1 The Voice Activity Detector . 8 1.2 Advantages of VAD . 8 1.3 Applications of VAD . 9 1.4 Objectives of this project work . 10 2 Voice Activity Detection Algorithms 11 2.1 Desirable aspects of VAD algorithms . 11 2.2 VAD algorithms implemented : . 12 2.3 VAD implementation . 13 3 The Variance-based Detector 15 3.1 Introduction . 15 3.2 The Variance-based algorithm . 15 3.3 Merits of the Variance-based Detector . 16 3.4 Drawbacks of the Variance-based Detector . 16 3.5 Experimental Results . 17 4 The Linear Energy-based Detector 18 4.1 Introduction . 18 4.2 The LED algorithm . 18 4.3 Merits of the LED . 21 4.4 Drawbacks of the LED . 21 4.5 Experimental Results . 22 5 The Adaptive Linear Energy-based Detector 23 5.1 Introduction . 23 5.2 The ALED algorithm . 23 5.3 Merits of the ALED . 26 5.4 Drawbacks of the ALED . 26 5.5 Experimental Results . 27 6 The Zero Crossing Detector 28 6.1 Introduction . 28 6.2 The ZCD algorithm . 28 6.3 Merits of the ZCD . 29 6.4 Drawbacks of the ZCD . 29 6.5 Experimental Results . 30 7 The Least Square Periodicity Estimator-based VAD 31 7.1 Introduction . 31 7.2 The normalized periodicity measure . 31 7.3 LSPE processing . 33 7.4 Merits of the LSPE-based VAD . 33 7.5 Drawbacks of the LSPE-based VAD . 34 7.6 Experimental Results . 35 4 8 The Adaptive Linear Sub-band Energy-based Detector 36 8.1 Introduction . 36 8.2 The ALSED algorithm . 36 8.3 Merits of the ALSED . 38 8.4 Drawbacks of the ALSED . 38 8.5 Experimental Results . 39 9 The Spectral Flatness Detector 40 9.1 Introduction . 40 9.2 The SFD algorithm . 40 9.3 Merits of the SFD . 41 9.4 Drawbacks of the SFD . 41 9.5 Experimental Results . 42 10 The Cepstral Detector 43 10.1 Introduction . 43 10.2 Cepstrum: . 43 10.3 Properties of cepstrum: . 44 10.4 Linear prediction analysis: . 44 10.5 Conversion of linear prediction to cepstral coefficients . 45 10.6 The Cepstral algorithm . 46 10.7 Merits of the Cepstral Detector . 47 10.8 Drawbacks of the Cepstral Detector . 47 10.9 Experimental Results . 48 11 Comparison of the VAD Algorithms 49 5 11.1 Results of the project work on VAD . 49 12 Other VAD Algorithms 52 13 Noise Reduction Techniques 53 14 Speech Enhancement using a MMSE-LSAE 55 14.1 Introduction . 55 14.2 The MMSE-LSAE . 55 14.3 The denoising process . 57 14.4 Performance Evaluation . 58 15 Speech Enhancement by Adaptive Wavelet Packet 59 15.1 Introduction . 59 15.2 Denoising by wavelet thresholding . 59 15.3 Noise estimation based on spectral entropy using histogram of intensity 60 15.4 The denoising process . 62 15.5 Performance Evaluation . 63 6 Chapter 1 Overview Voice is the basic mode of communication that conveys the content of speech and helps to identify the production source. With the growth of technology in the field of electronics and communications, we have moved from a world of telephones to an era of mobile technology and the Internet. In the present day, use of mobile phones/cellular handsets has increased significantly. The set up and applications of these ingenious gadgets entails the thorough exploitation of the knowledge and the underlying concepts of voice communications. Hence voice communications forms an inseparable part of our daily lives. The widespread use of cellular/wireless sets has significantly increased the use of communication systems in high-noise environments. Impairments to the generated speech could occur due to the presence of high background noise or noise picked up in the channel. This noise pick-up results in degradation of the quality or intelligibility of speech, thus deteriorating the performance of many existing signal processing algo- rithms such as those used in speech coding, speech recognition, speaker identification, channel coding, echo cancellation, etc. Detection of voice segments in the presence of noise becomes imperative to these systems. Voice activity detection is the first step in all the above mentioned speech process- ing techniques. Detected voice segments can be further processed to offer accurate 7 results in these systems. However, voice activity detection works well only in en- vironments where the signal-to-noise ratio(SNR) is high. Since most vocoders and voice recognition units require high SNR, low SNR automatically degrades their per- formance. With the development of hands-free and voice-activated cellular phones, noise reduction techniques are necessary to improve voice quality in noisy environ- ments. To ameliorate the quality and intelligibility of the detected speech signal, speech enhancement is carried out. 1.1 The Voice Activity Detector Voice activity detector(VAD), as the name suggests detects voice activity. It carries out the process of identifying the boundaries(beginning and end points) of speech and silence in a conversation. In other words, the VAD finds the beginning and ending of voice spurts. The VAD works based on some set of rules incorporated in the voice activity detection algorithms. 1.2 Advantages of VAD • Detection of voice activity helps to implement noise cancellation algorithms to specified speech segments only and thus saves the processing time in canceling noise from speech. • Identifying and rejecting transmission of noise-only periods helps reduce Inter- net traffic. • A reliable VAD detects only the voiced fragments and discards the high fre- quency noise samples. Hence a great deal of bandwidth reduction is achieved, while still maintaining the voice quality. Keeping bandwidth low is of prime importance in voice over packet networks. 8 • VAD also allows for multi-data transmission. Since voice activity is present only during a small part in conversational speech, the silence periods could be used to transmit additional data, thus improving the bit rate of the channel. 1.3 Applications of VAD VAD is required in some communication applications such as speech recognition, speech coding, hands-free telephony, audio conferencing, echo cancellation, etc. It forms an integral part of transmission Systems today. Voice over IP systems nec- essarily require the incorporation of a VAD for providing toll grade voice quality. Specific applications like digital cordless telephone systems, cellular networks and the Pan-European digital cellular mobile telephone service entail the employment of a VAD. As it is well known, a VAD achieves silence compression, which is very important in both fixed and mobile telecommunication systems. In communication systems based on variable bit-rate speech coders(eg. in multimedia or VoIP applications), it represents the most important block, reducing the average bit-rate. In a cellular radio system using the discontinuous transmission(DTX) mode(eg. GSM or UMTS systems), a VAD is able to increase the number of users as well as reduce the average power consumption in portable equipment. The recently proposed multiple access schemes, such as CDMA and enhanced TDMA for cellular and PCS systems use some form of VAD. 9 1.4 Objectives of this project work • Study of several methods for VAD proposed in the literature. • Implementation of some of the VAD algorithms using the software MATLAB. • Performance studies of the implemented VAD algorithms using standard speech databases. • Study of some speech enhancement techniques that employ VAD. • Software coding of the speech enhancement procedures learnt. • Application of these coded algorithms to some sample noisy speeches. 10 Chapter 2 Voice Activity Detection Algorithms VAD algorithms take recourse to some form of speech pattern classification to dif- ferentiate between voice and silence(in general, noisy) periods. They usually extract features, specific to voice, that are highly unlikely to be found in noisy segments. They then cut off parts of the speech signal based on a calculated(or assumed) threshold quantity.