Noise suppression in a Mel-filtered spectral domain
View Patent ↗Techniques are described herein that suppress noise in a Mel-filtered spectral domain. For example, a window may be applied to a representation of a speech signal in a time domain. The windowed representation in the time domain may be converted to a subsequent representation of the speech signal in the Mel-filtered spectral domain. A noise suppression operation may be performed with respect to the subsequent representation to provide noise-suppressed Mel coefficients.
1. A method comprising:
applying a window to a first representation of a speech signal in a time domain to provide a windowed representation of the speech signal;
converting the windowed representation of the speech signal in the time domain to a second representation of the speech signal in a frequency domain;
converting the second representation of the speech signal in the frequency domain to a third representation of the speech signal in a filtered spectral domain, wherein the third representation of the speech signal in the filtered spectral domain includes a plurality of Mel coefficients;
performing, by one or more processors, a noise suppression operation with respect to the third representation of the speech signal in the filtered spectral domain to provide a noise-suppressed representation of the speech signal that includes a plurality of noise-suppressed coefficients, wherein the noise suppression operation comprises:
determining a mean frame energy of the third representation of the speech signal, the mean frame energy being equal to a sum of the plurality of Mel coefficients divided by a number of the plurality of Mel coefficients; and
for each Mel coefficient of the plurality of Mel coefficients that is less than a noise floor threshold, setting that Mel coefficient to be equal to the noise floor threshold, the noise floor threshold being equal to the mean frame energy multiplied by a designated constant that is less than one.
2. The method of claim 1 , further comprising:
performing a logarithmic operation with respect to the plurality of noise-suppressed Mel coefficients to provide a plurality of respective revised coefficients;
truncating the plurality of revised coefficients to provide a truncated plurality of coefficients that includes fewer than all of the plurality of revised coefficients to represent the speech signal; and
performing a discrete transform with respect to at least one of the plurality of revised coefficients to de-correlate the plurality of revised coefficients or the truncated plurality of coefficients to de-correlate the truncated plurality of coefficients.
3. The method of claim 2 , further comprising:
applying a low-quefrency bandpass exponential cepstral lifter to each coefficient of the truncated plurality of coefficients to provide a liftered representation of the speech signal.
4. The method of claim 2 , further comprising:
performing a derivative operation with respect to the truncated plurality of coefficients to provide a plurality of respective first-derivative coefficients;
performing another derivative operation with respect to the plurality of first-derivative coefficients to provide a plurality of respective second-derivative coefficients; and
combining the truncated plurality coefficients, the plurality of first-derivative coefficients, and the plurality of second-derivative coefficients to provide a combined plurality of coefficients that represents the speech.
5. The method of claim 1 ,
wherein performing the noise suppression operation comprises:
determining a spectral noise estimate regarding the third representation of the speech signal; and
determining a plurality of signal-to-noise ratios that corresponds to the plurality of respective Mel coefficients, each signal-to-noise ratio representing a relationship between the corresponding Mel coefficient and the spectral noise estimate.
6. The method of claim 5 , wherein determining the spectral noise estimate comprises:
determining the spectral noise estimate based on a running average of an initial subset of the plurality of Mel coefficients.
7. The method of claim 5 , wherein performing the noise suppression operation further comprises:
determining a plurality of gains that corresponds to the plurality of respective Mel coefficients; and
multiplying the plurality of gains and the plurality of respective Mel coefficients to provide a plurality of respective speech estimates that represents the speech;
wherein each gain is substantially equal to a fixed maximum gain if the corresponding signal-to-noise ratio is greater than an upper signal-to-noise threshold;
wherein each gain is substantially equal to a fixed minimum gain if the corresponding signal-to-noise ratio is less than a lower signal-to-noise threshold; and
wherein each gain is based on a polynomial function of the corresponding signal-to-noise ratio if the corresponding signal-to-noise ratio is less than the upper signal-to-noise threshold and greater than the lower signal-to-noise threshold.
8. The method of claim 7 , further comprising:
determining a mean frame energy with respect to the plurality of speech estimates, the mean frame energy being equal to a sum of the plurality of speech estimates divided by a number of the plurality of speech estimates; and
for each speech estimate of the plurality of speech estimates that is less than a noise floor threshold, setting that speech estimate to be equal to the noise floor threshold, the noise floor threshold being equal to the mean frame energy multiplied by a designated constant that is less than one.
9. An automatic speech recognition system comprising:
one or more processors; and
a memory containing program code, which, when executed by at least one of the one or more processors, is configured to perform operations, the operations comprising: applying a window to a first representation of a speech signal in a time domain to provide a windowed representation of the speech signal;
converting the windowed representation of the speech signal in the time domain to a second representation of the speech signal in a frequency domain, the conversion module further configured to convert the second representation of the speech signal in the frequency domain to a third representation of the speech signal in a filtered spectral domain, wherein the third representation of the speech signal in the filtered spectral domain includes a plurality of Mel coefficients;
performing a noise suppression operation with respect to the third representation of the speech signal in the filtered spectral domain to provide a noise-suppressed representation of the speech signal that includes a plurality of noise-suppressed coefficients, wherein the noise suppression operation comprises:
determining a mean frame energy of the third representation of the speech signal, the mean frame energy being equal to a sum of the plurality of Mel coefficients divided by a number of the plurality of Mel coefficients; and
updating each Mel coefficient of the plurality of Mel coefficients that is less than a noise floor threshold to be equal to the noise floor threshold, the noise floor threshold being equal to the mean frame energy multiplied by a designated constant that is less than one.
10. The automatic speech recognition system of claim 9 ,
the operations further comprising:
a spectral noise estimator configured to determine determining a spectral noise estimate regarding the third representation of the speech signal; and
determining a plurality of signal-to-noise ratios that corresponds to the plurality of respective Mel coefficients, each signal-to-noise ratio representing a relationship between the corresponding Mel coefficient and the spectral noise estimate.
11. The automatic speech recognition system of claim 10 , wherein the spectral noise estimate is based on a running average of an initial subset of the plurality of Mel coefficients.
12. The automatic speech recognition system of claim 10 , the operations further comprising:
determining a plurality of gains that corresponds to the plurality of respective Mel coefficients; and
multiplying the plurality of gains and the plurality of respective Mel coefficients to provide a plurality of respective speech estimates that represents the speech;
wherein each gain is substantially equal to a fixed maximum gain if the corresponding signal-to-noise ratio is greater than an upper signal-to-noise threshold;
wherein each gain is substantially equal to a fixed minimum gain if the corresponding signal-to-noise ratio is less than a lower signal-to-noise threshold; and
wherein each gain is based on a polynomial function of the corresponding signal-to-noise ratio if the corresponding signal-to-noise ratio is less than the upper signal-to-noise threshold and greater than the lower signal-to-noise threshold.
13. The automatic speech recognition system of claim 12 , the operations further comprising:
determining a mean frame energy with respect to the plurality of speech estimates, the mean frame energy being equal to a sum of the plurality of speech estimates divided by a number of the plurality of speech estimates; and
updating each speech estimate of the plurality of speech estimates that is less than a noise floor threshold to be equal to the noise floor threshold, the noise floor threshold being equal to the mean frame energy multiplied by a designated constant that is less than one.
14. A computer-readable storage device having computer program logic recorded thereon for enabling a processor-based system to perform noise suppression in a filtered spectral domain, the computer-readable storage device comprising:
a first program logic that enables the processor-based system to apply a window to a first representation of a speech signal in a time domain to provide a windowed representation of the speech signal;
a second program logic that enables the processor-based system to convert the windowed representation of the speech signal in the time domain to a second representation of the speech signal in a frequency domain;
a third program logic that enables the processor-based system to convert the second representation of the speech signal in the frequency domain to a third representation of the speech signal in the filtered spectral domain, wherein the third representation of the speech signal in the filtered spectral domain includes a plurality of Mel coefficients;
a fourth program logic that enables the processor-based system to perform a noise suppression operation with respect to the third representation of the speech signal in the filtered spectral domain to provide a noise-suppressed representation of the speech signal that includes a plurality of noise-suppressed coefficients, wherein the noise suppression operation comprises:
a fifth program logic that enables the processor-based system to determine a mean frame energy of the third representation of the speech signal, the mean frame energy being equal to a sum of the plurality of Mel coefficients divided by a number of the plurality of Mel coefficients; and
a sixth program logic that enables the processor-based system to update each Mel coefficient of the plurality of Mel coefficients that is less than a noise floor threshold to be equal to the noise floor threshold, the noise floor threshold being equal to the mean frame energy multiplied by a designated constant that is less than one.
15. The computer-readable storage device of claim 14 ,
wherein the fourth program logic comprises:
first logic that enables the processor-based system to determine a spectral noise estimate regarding the third representation of the speech signal; and
second logic that enables the processor-based system to determine a plurality of signal-to-noise ratios that corresponds to the plurality of respective Mel coefficients, each signal-to-noise ratio representing a relationship between the corresponding Mel coefficient and the spectral noise estimate.
16. The computer-readable storage device of claim 15 , wherein the spectral noise estimate is based on a running average of an initial subset of the plurality of Mel coefficients.
17. The computer-readable storage device of claim 15 , wherein the fourth program logic further comprises:
third logic that enables the processor-based system to determine a plurality of gains that corresponds to the plurality of respective Mel coefficients; and
fourth logic that enables the processor-based system to multiply the plurality of gains and the plurality of respective Mel coefficients to provide a plurality of respective speech estimates that represents the speech;
wherein each gain is substantially equal to a fixed maximum gain if the corresponding signal-to-noise ratio is greater than an upper signal-to-noise threshold;
wherein each gain is substantially equal to a fixed minimum gain if the corresponding signal-to-noise ratio is less than a lower signal-to-noise threshold; and
wherein each gain is based on a polynomial function of the corresponding signal-to-noise ratio if the corresponding signal-to-noise ratio is less than the upper signal-to-noise threshold and greater than the lower signal-to-noise threshold.
18. The computer-readable storage device of claim 17 , further comprising:
a seventh program logic that enables the processor-based system to determine a mean frame energy with respect to the plurality of speech estimates, the mean frame energy being equal to a sum of the plurality of speech estimates divided by a number of the plurality of speech estimates; and
an eighth program logic that enables the processor-based system to update each speech estimate of the plurality of speech estimates that is less than a noise floor threshold to be equal to the noise floor threshold, the noise floor threshold being equal to the mean frame energy multiplied by a designated constant that is less than one.
19. The automatic speech recognition system of claim 9 , the operations further comprising:
performing a logarithmic operation with respect to the plurality of noise-suppressed coefficients to provide a plurality of respective revised coefficients;
truncating the plurality of revised coefficients to provide a truncated plurality of coefficients that includes fewer than all of the plurality of revised coefficients to represent the speech signal; and
performing a discrete transform with respect to at least one of the plurality of revised coefficients to de-correlate the plurality of revised coefficients or the truncated plurality of coefficients to de-correlate the truncated plurality of coefficients.
20. The computer program storage device of claim 14 , further comprising:
a seventh program logic that enables the processor-based system to perform a logarithmic operation with respect to the plurality of noise-suppressed coefficients to provide a plurality of respective revised coefficients;
a eighth program logic that enables the processor-based system to truncate the plurality of revised coefficients to provide a truncated plurality of coefficients that includes fewer than all of the plurality of revised coefficients to represent the speech signal; and
a ninth program logic that enables the processor-based system to a discrete transform with respect to at least one of the plurality of revised coefficients to de-correlate the plurality of revised coefficients or the truncated plurality of coefficients to de-correlate the truncated plurality of coefficients.