Method and system for speech recognition without noise interference

Abstract: In a speech recognition system for deciding an input pattern as one of a number of reference patterns, dissimilarities between the input pattern and the reference patterns are determined (28), and the minumum one of the dissimilarities is selected and is then compared with a reject value, to decide which particular reference pattern produces the minimum dissimilarity. In order to reduce the effect of noise accompanying an input speech pattern, the noise level (Z) is detected (22) from an input pattern before the input speech pattern is detected and the reject value is produced (25) in dependence upon the noise level. The minumum dissimilarity is normalised and the normalised value is compared (30) with the reject value (r(Z)).

Description: Background of the Invention: The present invention relates to speech recognition for recognizing a speech uttered as one of reference patterns registered and, in particular, to a speech recognition method and a system having reduction of interference by noise accompanying the speech uttered. In a known speech recognition system, a speech uttered is converted into an input speech signal by an electromechanical transducer such as a microphone. The input speech signal is analyzed by a pattern analyzer and is converted into a digital input pattern signal. The input pattern signal is memorized in an input memory as a memorized pattern. The memorized pattern is compared with each of reference patterns registered in a reference memory and a dissimilarity is produced therebetween. When a particular one of the reference patterns provides the minimum dissimilarity, the speech uttered is recognized as the particular reference pattern. Alternatively, when a specific one of the reference patterns provides a specific dissimilarity smaller than a predetermined threshold value, the speech uttered is recognized as the specific reference pattern. In actual recognition operation, the input speech signal is accompanied with noise due to presence of background sound. The input speech signal and the noise are collectively referred to as an input sound signal. Accordingly, the input pattern signal includes a noise component. This results in a failure of the speech recognition. Document US-A-4 239 936 discloses a speech recognition system in which ambient noise is measured by a separate microphone and a rejection unit responsive to the intensity of the measured noise. Summary of the Invention: It is an object of the present invention to provide a method and a system for recognizing a speech without interference by noise included in the input speech signal. The present invention is directed to a method for recognizing a speech uttered as one of a number of reference patterns B1 through BN, each of the reference patterns comprising a time sequence of referenoe feature vectors Bn = b1n, ..., bjn, ..., bJn. The method comprises: (a) producing an input sound signal comprising an input speech signal representative of the speech uttered and a noise accompanying the input speech signal; (b) analyzing the input sound signal to produce an input pattern representative of a pattern of the input sound signal; (c) observing the input pattern to detect a start and an end of the input speech and to produce a noise level z from a portion of the input pattern before the start is detected; (d) calculating a reject value r(z) dependent on the noise level z; (e) deriving another portion of the input pattern as an input speech pattern after the start is detected, the input speech pattern A comprising a time sequence of input feature vectors A = al, ..., ai, ..., aI; (f) calculating inter-vector distances dn(i, j) between one of input feature vectors ai and each of reference feature vectors bjn for i = 1 to I and j = 1 to J; (g) calculating from those dn(i, j) the following asymptotic equation (1): gn(i, j) = dn(i, j) - min{gn(i-1, j-p)}, where p = 0, 1, 2, ..., and gmin{gn(i-1, j-p)} is a minimum of gn(i-1, j-p) for various value of p; (h) repeating the steps (f) and (g) for n = 1 to N to produce dissimilarities of gn(I, Jn) for reference patterns B1 to BN; (i) selecting, as gN(I, Jn), the minimum one of those dissimilarities gn(I, jn); (j) normalizing the minimum dissimilarity gN(I, Jn) by I to produce a normalized value GN(I, Jn); and (k) comparing the normalized value GN(I, Jn) with the reject value r(z) to recognize the input speech as a particular one BN of the reference patterns whioh produces the minimum dissimilarity gN(I, Jn), when the normalized value GN(I, Jn) is equal to or smaller than the reject value r(z). According to the present invention, a system for recognizing a speech uttered is obtained which comprises reference memory means for memorizing a number of reference patterns Bl through BN, each of the reference patterns comprising a time sequence of reference feature vectors Bn = b1n, ..., bjn, ..., bJn; means for producing an input sound signal comprising an input speech signal representative of the speech uttered and a noise accompanying the input speech signal; means coupled to the producing means for analyzing the input sound signal to produce an input pattern representative of a pattern of the input sound signal; observing means coupled to the producing means for observing the input pattern to detect a start and an end of the input speech and to produce a noise level z from a portion of the input pattern before the start is detected; means coupled to the observing means responsive to the noise level z for calculating a reject value r(z) dependent on the noise level z; input memory means coupled to the analyzing means for memorizing another portion of the input pattern as an input speech pattern after the start is detected, the input speech pattern A comprising a time sequence of input feature vectors A = al, ..., ai, ..., aI; distance calculating means coupled to the reference memory means and the input memory means for calculating inter-vector distances dn(i, j) between one of input feature vectors ai and each of reference feature vectors bjn for i = 1 to I, j = 1 to J, and n = 1 to N; asymptotic equation calculating means coupled to the distance calculating means for calculating from those dn(i, j) the following asymptotic equation (1): gn(i, j) = dn(i, j) - min{gn(i-1, j-p)}, where p = 0, 1, 2, ..., and min{gn(i-1, j-p)} is a minimum of gn(i-1, j-p) for various value of p, the asymptotic equation calculating means producing N dissimilarities gn(I, Jn) for n = 1 to N; deciding means coupled to the asymptotic equation calculating means and the reject value calculating means for selecting, as gN(I, Jn), the minimum one of N dissimilarities gn(I, Jn) and normalizing the minimum dissimilarity gN(I, Jn) to produce a normalized value GN(I, Jn), the deciding means comparing the normalized value GN(I, Jn) with the reject value r(z) to decide, as a recognition result, a particular one of reference patterns which produces the minimum dissimilarity gN(I, Jn), when the normalized value GN(I, Jn) is equal to or smaller than the reject value r(z). Brief Description of the Drawings: Fig. 1 is a block diagram view of a speech recognition system according to an embodiment of the present invention; and Fig. 2 is a graph illustrating a relationship between a reject value and a noise level. Description or the Preferred Embodiments: Referring to Fig. 1, the shown system according to an embodiment comprises a microphone 20 for converting a sound into an electric signal as an input sound signal, and a pattern analyzer 21 for analyzing the input sound signal into an input pattern. The input sound signal comprises an input speech signal representative of an input speech and a noise. The pattern analyzer 21 is, for example, a frequency analyzer as well known in the art which comprises a multi-channel bandpass filter bank for separating the input sound signal into different frequency component signals. The frequency component signals are multiplexed to form a signal representative of a feature vector. Accordingly, the pattern analyzer 21 generates a time sequence of feature vector signals. The feature vectors are applied to a noise level detector 22, a speech detector 23 and an input memory 24. The noise level detector 22 receives the feature vectors and holds them in a buffer memory. The noise level detector 22 monitors the input level of the time sequence of feature vectors and compares the input level with a threshold level. When the noise level detector 22 detects that the input level exceeds the threshold level, it calculates an average of data of the input level which are held in the buffer memory before the input level exceeds the threshold level. The average is delivered, as a noise level z, to the speech detector 23 and a reject value calculator 25. The speech detector 23 receives the noise level z and compares the input level of the time sequence of feature vectors with the noise level z to produce a speech start signal as a signal SP when the input level becomes equal to or exceeds the noise level. Thereafter, the speech detector 23 also produces a speech end signal as the signal SP when the input level becomes lower than the noise level z. The signal SP is delivered to a controller 26. When the controller 26 receives the speech start signal as the signal SP, the controller 26 delivers a take-in signal i1 to the input memory 24. The input memory 24 stores the time sequence of input feature vectors a1, a2, ..., ai, ..., and aI in this order in response to a time sequence of take-in signals i1. In response to the speech start signal as the signal SP, the controller 26 also produces a control signal c11 to the reject value calculator 25. Then, the reject value calculator 25 calculates a reject value r(z) using the noise level z just before receiving the control signal c11, that is, before the speech start is detected. The reject value r(z) is riven by the following formulae: where, r min and r max are the minimum value and the maximum value or the reject value r, respectively, z low and z high being a lower limit and a higher limit of the noise level z, α = (r max - r min )/(z high - z low ), and β = (r min z high - r max z low )/(z high - z low ). Fig. 2 illustrates a relation between the noise level z and the reject value r(z). The system has a reference memory 27 which memorizes a number of (N) reference patterns B1, B2, .... Bn, ..., BN. Each of the reference patterns comprises a sequence of feature vectors, that is, Bn = b1n, b2n,..., bjn, ..., bJN. The controller 26 produces a reference pattern selection signal n1 for selecting one of the reference patterns to the reference memory 27. Thus, a particular one Bn of reference patterns is selected. The controller 26 also produces a read signal j1 to the reference memory 27. Thus, bjn of the reference vectors of the particular reference pattern Bn is read from the reference memory 27 and delivered to an inter-vector distance calculator 28. Also, ai of the input feature vectors is read out and delivered to the inter-vector distance calculator 28 in response to the signal i1. Each of the input memory 24 and the reference memory 27 supplies M feature vectors to the inter-vector distance calculator 28 according to a signal ml from the controller 26. The inter-vector distance calculator 28 calculates a distance dn(i, j) between the input vector ai and the reference vector bjn under control by a control signal c12. The distance dn(i, j) is delivered to an asymptotic equation calculator 29. The asymptotic equation calculator 29 calculates the following asymptotic equation (2): gn(i, j) = dn(i, j) - min{gn(i-1, j-p)}, where p = 0, 1, 2, ..,, and the second term of min{gn(i-1, j-p)} is a minimum value of gn(i-1, j-p) along a various values of p. An initial value of gn(i, j) is given by gn(0, 0) = 0. Thus the asymptotic equation calculator 29 calculates dissimilarities gn(i, j) for i = 1, 2, ..., I, j = 1, 2, ..., Jn, and n = 1, 2, ..., N to produce N dissimilarities gn(I, Jn) between the input speech signal and N reference patterns Bn. The numerals (n, i, j) are indicated by a signal c13 from the controller 26. The asymptotic equation calculator 29 is provided with a decision circuit for deciding min{gn(i-1, j-p)}, a buffer memory for holding min{gn(i-1, j-p)} and gn(i, j), and a memory for holding N dissimilarities gn(I, Jn) between the input speech signal and N reference patterns Bn. When the controller 26 receives the speech end signal as the signal SP from the speech detector 23, the controller 26 generates a control signal i2 to a decision circuit 30. In response to the control signal i1, the decision circuit 30 takes in the N dissimilarities gn(I, Jn) from the asymptotic equation calculator 29 and decides the minimum one (gN(I, Jn)) of the gn(I, Jn). Then, the decision circuit 30 normalize gN(I, Jn) by I as GN(I, Jn). Responsive to the control signal i2, the decision circuit 30 also takes in the reject value r(z) from the reject value calculator 25 and compares the normalized minimum dissimilarity GN(I, Jn) with the reject value r(z). When the GN(I, Jn) is equal to or smaller than the reject value r(z), the decision circuit 30 recognizes that the input speech coincides with a particular one BN of the reference patterns which gives the minimum one gN(I, Jn) of the dissimilarities gn(I, Jn) to produce the particular reference pattern BN as a decision result. When the GN(I, Jn) is larger than the reject value r(z), the decision circuit 30 recognizes that no reference pattern coincides with the input speech pattern. The pattern matching method is known in the art as the DP (Dynamic Programming) matching method where dissimilarities calculated by use of the asymptotic equation (2) is compared with the reject value. According to the present invention, the reject value r is determined dependent on the noise level and the pattern matching is therefore performed without affect of the noise.

Claims: A method for recognizing a speech uttered as one of a number of reference patterns B1 through BN, each of the reference patterns comprising a time sequence of reference feature vectors Bn = b1n, ..., bjn, ..., bJn, which comprises: (a) producing an input sound signal comprising an input speech signal representative of said speech uttered and a noise accompanying said input speech signal; (b) analyzing said input sound signal to produce an input pattern representative of a pattern of said input sound signal; (c) observing said input pattern to detect a start and an end of said input speech and to produce a noise level z from a portion of said input pattern before said start is detected; (d) calculating a reject value r(z) dependent on the noise level z; (e) deriving another portion of said input pattern as an input speech pattern after said start is detected, said input speech pattern A comprising a time sequence of input feature vectors A = a1, ..., ai, ..., aI; (f) calculating inter-vector distances dn(i, j) between one of input feature vectors ai and each of reference feature vectors bjn for i = 1 to I and j = 1 to J: (g) calculating from those dn(i, j) the following asymptotic equation (1): gn(i, j) = dn(i, j) - min{gn(i-1, j-p)}, where p = 0, 1, 2, .., and gmin{gn(i-1, j-p)} is a minimum of gn(i-1, j-p) for various value of p; (h) repeating the steps (f) and (g) for n = 1 to N to produce dissimilarities of gn(I, Jn) for reference patterns B1 to BN; (i) selecting, as gN(I, Jn), the minimum one of those dissimilarities gn(I, jn); (j) normalizing the minimum dissimilarity gN(I, Jn) by I to produce a normalized value GN(I, Jn); and (k) comparing the normalized value GN(I, Jn) with the reject value r(z) to recognize said input speech as a particular one BN of the reference patterns which produces the minimum dissimilarity gN(I, Jn), when the normalized value GN(I, Jn) is equal to or smaller than the reject value r(z). A system for recognizing a speech uttered, which comprises: reference memory means for memorizing a number of reference patterns B1 through BN, each of the reference patterns comprising a time sequence of reference feature vectors Bn = b1n, ..., bjn, ..., bJn; means for producing an input sound signal comprising an input speech signal representative of said speech uttered and a noise accompanying said input speech signal; means coupled to said producing means for analyzing said input sound signal to produce an input pattern representative of a pattern of said input sound signal; observing means coupled to said producing means for observing said input pattern to detect a start and an end of said input speech and to produce a noise level z from a portion of said input pattern before said start is detected; means coupled to said observing means responsive to said noise level z for calculating a reject value r(z) dependent on the noise level z; input memory means coupled to said analyzing means for memorizing another portion of said input pattern as an input speech pattern after said start is detected, said input speech pattern A comprising a time sequence of input feature vectors A = a1, ..., ai, ..., aI; distance calculating means coupled to said reference memory means and said input memory means for oalculating inter-vector distances dn(i, j) between one of input feature vectors ai and each of reference feature vectors bjn for i = 1 to I, j = 1 to J, and n = 1 to N; asymptotic equation calculating means coupled to said distance calculating means for calculating from those dn(i, j) the following asymptotic equation (1): gn(i, j) = dn(i, j) - min{gn(i-1, j-p)}, where p = 0, 1, 2, ..., and min{gn(i-1, j-p)} is a minimum of gn(i-1, j-p) for various value of p, said asymptotic equation calculating means producing N dissimilarities gn(I, Jn) for n = 1 to N; deciding means coupled to said asymptotic equation calculating means and said reject value calculating means for selecting, as gN(I, Jn), the minimum one of N dissimilarities gn(I, Jn) and normalizing the minimum dissimilarity gN(I, Jn) to produce a normalized value GN(I, Jn), said deciding means comparing the normalized value GN(I, Jn) with said reject value r(z) to decide, as a recognition result, a particular one of reference patterns which produces the minimum dissimilarity gN(I, Jn), when the normalized value GN(I, Jn) is equal to or smaller than said reject value r(z).

Inventors: SHIMADA KEIKO, SHIMADA, KEIKO, SHIMADA, KEIKO, C/O NEC CORPORATION
Applicants: NIPPON ELECTRIC CO, NEC CORPORATION
Application year: 1991
Main classification: G10L3
IPC codes: G10L15, G10L11