Soft decision signal estimation

A method for signal detection uses a likelihood ratio derived from the received signal to produce an estimate of a speech signal that has been corrupted by noise during transmission. The received signal is input to a receiver filter and a voice-activity detector. The receiver filter filters the received signal to produce a filter output signal. The voice-activity detector generates a likelihood ratio based on the received signal, which is then used to produce a speech-probability estimate indicating the probability that the received signal includes a speech signal. The filter output signal is combined with the speech-probability estimate output from the voice-activity detector to generate a soft estimate of the original speech signal.

FIELD OF THE INVENTION

The present invention relates generally to a method for estimating a speech signal in the presence of noise and, more particularly, to soft decision signal estimation method for generating a soft estimate of a speech signal contained in a received signal.

BACKGROUND OF THE INVENTION

One function of the digital communication system is to transmit a speech signal from a source to a destination. The speech signal is often corrupted by noise which complicates and degrades the performance of coding, detection, and recognition algorithms. This problem is particular severe in mobile communication systems where numerous common sources of noise exist. For example, common noise sources in a mobile communication system include engine noise, background music, environmental noise (such as noise from an open window), and background speech from other persons. The efficiency of coding and recognition algorithms depends on being able to efficiently and accurately estimate both the speech and noise components of a received signal. There are many approaches presented in the literature to solve this problem. Among those, spectral subtraction is one of the most popular techniques because the speech signal is quasi-stationary, and the algorithm can be implemented efficiently using the Fast Fourier Transform (FFT).

The spectral subtraction method for signal estimation is based on the assumption that speech is present. When transmitted over the communication channel, the speech signal is corrupted by noise. The signal observed at the receiving end is the mixture of the speech signal and noise signal. The received signal is filtered in the frequency domain by a filter, such as a matched filter, that attempts to minimize the noise component in the received signal. The output of the matched filter is the estimate of the speech signal based on the assumption that speech was transmitted.

A filter commonly used in a signal detector is a Wiener filter, which minimizes the mean square error between the transmitted speech signal and the signal estimate. The Wiener filter uses the power spectral density (PSD) of the speech signal and noise signal to produce an estimate of the speech signal. Because the speech and noise signals are combined in the received signal, it is generally not possible to calculate the power spectral density of the speech signal and noise signal simultaneously. However, in a voice communication system, such as a mobile communication system, the speech signal is not present at all times. Thus, the power spectral density of the noise signal can be estimated during the time that the speech is absent. Assuming that changes in the noise signal are slow, the power spectral density of the speech signal can be calculated during the time that speech is present by subtracting the power spectral density of the noise signal (calculated when speech was not present) from the power spectral density of the received signal. This technique for calculating the power spectral density of the speech signal assumes that the speech signal and noise signal are independent, which is not always correct.

In order to estimate the power spectral density of the noise signal and speech signal, a voice activity detector (VAD) is used to detect the presence of speech in the received signal. In a conventional VAD, the received signal input to the VAD is filtered, squared, and summed in order to measure the power of the signal during a given time period. The VAD produces an estimate {circumflex over ( )} indicating whether speech is present. In a conventional detector, a hard decision is made, meaning that {circumflex over ( )} takes on a value of 1 when speech is present and a value of 0 when speech is not present. The output of the Wiener filter is multiplied by {circumflex over ( )}. Consequently, a final estimate of the speech signal (k) is output only when {circumflex over ( )} equals one. This method of signal estimation is known as hard decision estimation.

In hard decision signal estimation, errors made by the voice activity detector can result in significant error in final estimate of the speech signal. For example, assume that a signal containing speech is received but is not detected by the voice activity detector. In this case, the speech signal will not be output from the signal detector.

Soft decision signal estimation was explored in R J McAulay and M L Loupes, S PEECH E NHANCEMENT U SING A S OFT D ECISION N OISE S UPPRESSION F ILTER, IEEE. Trans. in Acoustics Speech and Signal Processing, ASSB-28:137-145, 1980. This article describes a signal estimation technique where the estimate {circumflex over ( )} is not restricted to 1 or 0, but can be any number in the range 0 to 1. However, the soft decision signal estimation technique described in the article is based on the assumption that the speech signal is a deterministic signal with unknown magnitude and phase. In fact, speech is a random process so the model to estimate the speech signal is not appropriate. Therefore, the signal estimation technique described in the article is not optimal for detection of a speech signal.

SUMMARY OF THE INVENTION

The present invention is a soft decision signal estimation algorithm for generating an estimate of a speech signal from a received signal containing both speech and noise components. The received signal is converted to the frequency domain by a Fast Fourier Transform (FFT). In the frequency domain, the received signal is filtered by a Wiener filter to eliminate, as much as possible, the noise component of the signal. The output signal from the Wiener filter is converted back to the time domain by an inverse FFT. The output signal from the Wiener filter is then combined in the time domain with a speech probability estimate generated by a voice activity detector (VAD) to obtain a soft estimate of the speech signal.

A voice activity detector is used to compute the speech probability estimate. In conventional signal estimation, the VAD detects whether the received signal contains a speech component and outputs a hard decision (i.e. 0 or 1). In the present invention, the VAD generates a soft estimate of the probability of speech, called the speech probability estimate, that is combined with the output of the Wiener filter to obtain a soft estimate of the speech signal. To compute the speech probability estimate, the VAD computes a likelihood ratio based on the received signal. The likelihood ratio and the a priori probability of speech are used to compute the speech probability estimate. The likelihood ratio is also used to determine when to update the frequency response of the Wiener filter and VAD filter.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a block diagram illustrating a model of a voice communication system. A voice signal s(k) is transmitted from a transmitting station 12 over a communication channel 14 to a receiving station 16 . The channel 14 is assumed to corrupt the signal by the addition of Gaussian noise, n(k). The system is assumed to be linear. Therefore, the observed signal x(k) at the receiving station 16 is a linear combination of the voice signal s(k) and the noise signal n(k). Since speech is not present at all times during a transmission, the observed signal x(k) can be modeled as follows:

where indicates the presence of the signal s(k), and has a value of 1 if speech is present and a value of 0 if speech is not present.

FIG. 2 is a block diagram of a conventional signal detector for estimating the signal S(k) based on the received signal x(k). As shown in FIG. 2 , a conventional signal detector 18 includes a matched filter 20 and voice activity detector (VAD) 22 . The received signal x(k) is passed through the matched filter 20 . The output of the matched filter 20 is the signal estimate (k) based on the assumption that the speech signal s(k) is present. The frequency response of the matched filter 20 is chosen based on some predetermined error criteria, which is well known in the art. For example, if it is designed to minimize the mean square error between the transmitted signal x(k) and the estimated signal (k), then the matched filter 20 corresponds to a Wiener filter having a frequency response H( ) given by the following equation: H ( ) = H WF ( ) = s ( ) s ( ) + n ( ) , Eq . ( 2 )

where s ( ) and n ( ) are respectively the power spectral density of s(k) and n(k). In order to calculate the frequency response H( ), it is necessary to calculate s ( ) and n ( ). In general, s ( ) and n ( ) cannot be calculated simultaneously since only the combined signal x(k) is available. However, since the speech signal s(k) is not present at all times, n ( ) can be estimated during the time that speech is absent. Therefore, s ( ) can be calculated during the time that speech is present by subtracting the power spectral density n ( ) of the noise signal from the power spectral density x ( ) of the received signal x(k). When speech is present, the power spectral density x ( ) of the observed signal x(k) is calculated and the power spectral density s ( ) of the speech signal s(k) is obtained by the following equation:

The output of the filter 20 is input to a mixer 24 . The output of the filter 20 is combined at the mixer 24 with a random variable output from the voice activity detector 22 , where indicates the presence of speech.

FIG. 3 is a block diagram showing a voice activity detector used in a conventional signal detector. As shown in FIG. 3 , the received signal x(k) is filtered by a VAD filter 30 with frequency response H VAD ( ). The filter output y(t) is then squared and summed to obtain a measure of the energy at a time interval 0 ,T of interest. The power of the signal is obtained by the following equation: U VAD = O T y 2 ( t ) t Eq . ( 4 )

If U VAD exceeds a predetermined threshold U TH , then a value of 1 is assigned to the speech probability estimate {circumflex over ( )}. Conversely, if the value of U VAD is less than the predetermined threshold U TH , a value of 0 is assigned to the speech probability estimate {circumflex over ( )}. According to the conventional approach, one can see that the speech probability estimate {circumflex over ( )} has only two values: 0 and 1.

As a final step in the signal estimation process, the output of the filter 20 is multiplied by the speech probability estimate {circumflex over ( )} to obtain the estimate (k) of the speech signal. Since {circumflex over ( )} has only two values, an estimate (k) of the speech signal is obtained only when the speech probability estimate {circumflex over ( )} has a value of 1. When {circumflex over ( )} is equal to 0, no signal is output from the detector 18 .

On the present invention, the speech probability estimate {circumflex over ( )} can take arbitrary values between 0 and 1. According to the present invention, a priori knowledge of the probability of speech is used to obtain a soft estimate (k) of the speech signal s(k). The optimal estimate (k) for the signal s(k) is given by the following equation:

s p ( s x ) ds s p ( s ,x ) p ( x ) d ds p ( 1 x ) s p ( s 1, x ) ds Eq.(5)

The first term in Equation 5 (p( 1 x)) is the optimal estimate of the random variable (in the sense of mean square criterion). This is referred to herein as the speech probability estimate {circumflex over ( )} and is given by the following equation:

The second term in Equation 5 ( s p ( s 1, x ) ds ) is the Wiener estimate of s(k), which is denoted herein as WF (k). The Wiener estimate of s(k) is given by the following equation:

Substituting Equations 6 and 7 into Equation 5, the equation for the estimated speech signal (k) can be written as follows:

where is a likelihood ratio describing the structure of the optimal voice activity detector, and p j p( j) is the a priori probability for the speech variable . The likelihood ratio is defined as: ( x ) = p ( x = 1 ) p ( x = 0 ) Eq . ( 10 )

It is known that for Gaussian signal and noise, the likelihood ratio has a form:

where U VAD is the power of the received signal and U TH is a predetermined threshold. The U VAD is given by Equation 4 where y(t) is the output of the VAD filter with the frequency response given by: H VAD ( ) 2 = s ( ) n ( ) [ s ( ) + n ( ) ] = : H opt ( ) 2 Eq . ( 12 )

The optimal VAD filter requires the power spectral density functions of both the speech signal and noise signal. However, this computation can be simplified by assuming that the signal to noise ratio (SNR) is high. Based on this assumption, Equation 12 becomes: H opt ( j ) 2 1 n ( ) Eq . ( 13 )

It is noted that Equation 13 corresponds to a whitening filter and requires only the computation of n ( ). Using Equation 13, only the power spectral density of noise is needed in order to calculate the VAD filter which can be assumed to be available for two reasons: 1) the noise does not change quickly from frame to frame compared to speech, and 2) there are a large number of speech-free frames especially at the beginning when the system is turned on. Further, the mean variance, and thus the threshold function, is a constant given by the following equation: U TH = 2 fT [ 1 + - 1 ( 1 - P f ) fT ] , Eq . ( 14 )

where f is the effective band width, T is the time duration of one frame, is the error function, and P f is the false alarm probability.

FIG. 4 is a block diagram illustrating the soft decision signal detector, which is indicated generally by the numeral 100 . The signal detector 100 includes a Fast Fourier Transform function (FFT) to convert the received signal x(k) to the frequency domain. The received signal x(k) is input to both a Wiener filter 102 and voice activity detector (VAD) 110 . The power spectral density values for the received signal and noise signal are input to the Wiener filter. In the preferred embodiment of the invention, the power spectral density values are computed and updated by the voice activity detector 110 as described in more detail below. The frequency response of the Wiener filter is calculated according to Equation 2 based on the power spectral density values input from the VAD 110 .

The output of the Wiener filter (denoted WF (k)) is input to an inverse Fast Fourier Transform (IFFT) function 106 which converts the signal back to the time domain. The signal is then input to a mixer 108 . The other input to the mixer 108 is the output of the voice activity detector 110 .

The voice activity detector 110 includes a VAD filter 112 , which in the preferred embodiment is a whitening filter with a frequency response given by Equation 13. The received signal is input to the VAD filter 112 . The output of the VAD filter 112 is fed to the input of a power detector 115 which consists of a squarer 114 and summer 116 . The power detector 115 estimates the power U VAD of the signal output from the VAD filter 112 according to Equation 4. The power estimate U VAD is input to a likelihood estimator 118 that calculates the likelihood ratio according to Equation 10. The likelihood ratio is input to the speech estimator 122 which generates the speech probability estimate {circumflex over ( )}. The speech probability estimate {circumflex over ( )} from the speech probability estimator 122 is input to the mixer 108 . The output of the mixer 108 , which is determined by Equation 8 is the estimated signal (k).

The likelihood ratio is also input to a power density calculator 120 which calculates the power spectral density of the received signal x(t) and noise signal n(t) based on the received signal, The power density calculator uses the likelihood function to determine whether to update the power spectral density functions. If the likelihood ratio is greater than a predetermined threshold, denoted TH , then the power spectral density function x (k) for the received signal x(k) is updated. On the other hand, if the likelihood ratio is less than or equal to the threshold TH , the power spectral density function n (k) of the noise signal n(k) is updated. The power spectral density functions of the received signal and noise signal are used to calculate the Wiener filter 104 . The power spectral density function of the noise signal is also to calculate the VAD filter 112 .

FIG. 5 is a graph comparing the performance of the signal estimation system of the present invention to a conventional hard decision signal estimation system. In the comparison, two VAD filters, the high-complexity optimal filter and the whitening filter, are used for hard decision estimation while, in the soft decision approach, only the whitening filter is used. As shown in the graph, the soft decision signal estimation system 100 with whitening filter outperforms the hard decision approach even when the VAD filter is optimal. At low signal to noise ratios, the soft decision system improves the output results significantly, while at high signal to noise ratios, the results are very close to each other. It is important to note that VAD filter 112 for the soft decision signal estimation system is relatively simple which is much simpler to implement that the optimal VAD filter used in the conventional hard decision signal estimation system.