US20020038211A1  Speech processing system  Google Patents
Speech processing system Download PDFInfo
 Publication number
 US20020038211A1 US20020038211A1 US09/866,595 US86659501A US2002038211A1 US 20020038211 A1 US20020038211 A1 US 20020038211A1 US 86659501 A US86659501 A US 86659501A US 2002038211 A1 US2002038211 A1 US 2002038211A1
 Authority
 US
 United States
 Prior art keywords
 speech
 values
 audio signal
 set
 parameters
 Prior art date
 Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
 Granted
Links
Images
Classifications

 G—PHYSICS
 G10—MUSICAL INSTRUMENTS; ACOUSTICS
 G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
 G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00G10L21/00
 G10L25/78—Detection of presence or absence of voice signals
Abstract
A system is provided for detecting the presence of speech within an input audio signal. The system includes a memory for storing a predetermined function which gives, for a given set of audio signal values, a probability density for parameters of a predetermined speech model which is assumed to have generated the set of audio signal values, the probability density defining, for a given set of model parameter values, the probability that the predetermined speech model has those parameter values given that the speech model is assumed to have generated the set of audio signal values. The system applies a current set of received signal values to the stored probability density function and then draws samples from it using a Gibbs sampler. The system then analyses the samples to determine a set parameter values representative of the audio signal. The system then uses these parameter values to determine whether or not speech is present within the audio signals.
Description
 The present invention relates to an apparatus for and method of speech processing. The invention has particular, although not exclusive relevance to the detection of speech within an input speech signal.
 In some applications, such as speech recognition, speaker verification and voice transmission systems, the microphone used to convert the user's speech into a corresponding electrical signal is continuously switched on. Therefore, even when the user is not speaking, there will constantly be an output signal from the microphone corresponding to silence or background noise. In order (i) to prevent unnecessary processing of this background noise signal; (ii) to prevent misrecognitions caused by the noise; and (iii) to increase overall performance, such systems employ speech detection circuits which continuously monitor the signal from the microphone and which only activate the main speech processing system when speech is identified in the incoming signal.
 Detecting the presence of speech within an input speech signal is also necessary for adaptive speech processing systems which dynamically adjust weights of a filter either during speech or during silence portions. For example, in adaptive noise cancellation systems, the filter coefficients of the noise filter are only adapted when both speech and noise are present. Alternatively still, in systems which employ adaptive beam forming to suppress noise from one or more sources, the beam is only adapted when the signal of interest is not present within the input signal (i.e. during silence periods). In these systems, it is therefore important to know when the desired speech to be processed is present within the input signal.
 Most prior art speech detection circuits detect the beginning and end of speech by monitoring the energy within the input signal, since during silence the signal energy is small but during speech it is large. In particular, in conventional systems, speech is detected by comparing the average energy with a threshold and indicating that speech has started when the average energy exceeds this threshold. In order for this technique to be able to accurately determine the points at which speech starts and ends (the so called end points), the threshold has to be set near the noise floor. This type of system works well in environments with a low constant level of noise. It is not, however, suitable in many situations where there is a high level of noise which can change significantly with time. Examples of such situations include in a car, near a road or any crowded public place. The noise in these environments can mask quieter portions of speech and changes in the noise level can cause noise to be incorrectly detected as speech.
 One aim of the present invention is to provide an alternative speech detection system for detecting speech within an input signal.
 According to one aspect, the present invention provides an apparatus for detecting the presence of speech within an input audio signal, comprising: a memory for storing a probability density function for parameters of a predetermined speech model which is assumed to have generated a set of received audio signal values; means for applying the received set of audio signal values to the stored probability density function; means for processing the probability density function with those values applied to obtain values of the parameters that are representative of the input audio signal; and means for detecting the presence of speech using the obtained parameter values.
 Exemplary embodiments of the present invention will now be described with reference to the accompanying drawings in which:
 FIG. 1 is a schematic view of a computer which may be programmed to operate in accordance with an embodiment of the present invention;
 FIG. 2 is a block diagram illustrating the principal components of a speech recognition system which includes a speech detection system embodying the present invention;
 FIG. 3 is a block diagram representing a model employed by a statistical analysis unit which forms part of the speech recognition system shown in FIG. 2;
 FIG. 4 is a flow chart illustrating the processing steps performed by a model order selection unit forming part of the statistical analysis unit shown in FIG. 2;
 FIG. 5 is a flow chart illustrating the main processing steps employed by a Simulation Smoother which forms part of the statistical analysis unit shown in FIG. 2;
 FIG. 6 is a block diagram illustrating the main processing components of the statistical analysis unit shown in FIG. 2;
 FIG. 7 is a memory map illustrating the data that is stored in a memory which forms part of the statistical analysis unit shown in FIG. 2;
 FIG. 8 is a flow chart illustrating the main processing steps performed by the statistical analysis unit shown in FIG. 6;
 FIG. 9a is a histogram for a model order of an auto regressive filter model which forms part of the model shown in FIG. 3;
 FIG. 9b is a histogram for the variance of process noise modelled by the model shown in FIG. 3; and
 FIG. 9c is a histogram for a third coefficient of the AR filter model.
 Embodiments of the present invention can be implemented on computer hardware, but the embodiment to be described is implemented in software which is run in conjunction with processing hardware such as a personal computer, workstation, photocopier, facsimile machine or the like.
 FIG. 1 shows a personal computer (PC)1 which may be programmed to operate an embodiment of the present invention. A keyboard 3, a pointing device 5, a microphone 7 and a telephone line 9 are connected to the PC 1 via an interface 11. The keyboard 3 and pointing device 5 allow the system to be controlled by a user. The microphone 7 converts the acoustic speech signal of the user into an equivalent electrical signal and supplies this to the PC 1 for processing. An internal modem and speech receiving circuit (not shown) may be connected to the telephone line 9 so that the PC 1 can communicate with, for example, a remote computer or with a remote user.
 The program instructions which make the PC1 operate in accordance with the present invention may be supplied for use with an existing PC 1 on, for example, a storage device such as a magnetic disc 13, or by downloading the software from the Internet (not shown) via the internal modem and telephone line 9.
 The operation of a speech recognition system which employs a speech detection system embodying the present invention will now be described with reference to FIG. 2. Electrical signals representative of the input speech from the microphone7 are input to a filter 15 which removes unwanted frequencies (in this embodiment frequencies above 8 kHz) within the input signal. The filtered signal is then sampled (at a rate of 16 kHz) and digitised by the analogue to digital converter 17 and the digitised speech samples are then stored in a buffer 19. Sequential blocks (or frames) of speech samples are then passed from the buffer 19 to a statistical analysis unit 21 which performs a statistical analysis of each frame of speech samples in sequence to determine, amongst other things, a set of auto regressive (AR) coefficients representative of the speech within the frame. In this embodiment, the AR coefficients output by the statistical analysis unit 21 are then input to a speech recognition unit 25 which compares the AR coefficients for successive frames of speech with a set of stored speech models 27, which may be template based or Hidden Markov Model based, to generate a recognition result. In this embodiment, the speech recognition unit 25 only performs this speech recognition processing when it is enabled to do so by a speech detection unit 61 which detects when speech is present within the input signal. In this way, the speech recognition unit 25 only processes the AR coefficients when there is speech within the signal to be recognised.
 In this embodiment, the speech detection unit61 also receives the AR coefficients output by the statistical analysis unit 21 together with the AR filter model order, which, as will be described below, is also generated by the statistical analysis unit 21 and determines from these, when speech is present within the signal received from the microphone 7. It can do this, since the AR filter model order and the AR coefficient values will be larger during speech than when there is no speech present. Therefore, by comparing the AR filter model order and/or the AR coefficient values with appropriate threshold values, the speech detection unit 61 can determine whether or not speech is present within the input signal.
 Statistical Analysis Unit—Theory and Overview
 As mentioned above, the statistical analysis unit21 analyses the speech within successive frames of the input speech signal. In most speech processing systems, the frames are overlapping. However, in this embodiment, the frames of speech are nonoverlapping and have a duration of 20 ms which, with the 16 kHz sampling rate of the analogue to digital converter 17, results in a frame size of 320 samples.
 In order to perform the statistical analysis on each of the frames, the analysis unit21 assumes that there is an underlying process which generated each sample within the frame. The model of this process used in this embodiment is shown in FIG. 3. As shown, the process is modelled by a speech source 31 which generates, at time t=n, a raw speech sample s(n). Since there are physical constraints on the movement of the speech articulators, there is some correlation between neighbouring speech samples. Therefore, in this embodiment, the speech source 31 is modelled by an auto regressive (AR) process. In other words, the statistical analysis unit 21 assumes that a current raw speech sample (s(n)) can be determined from a linear weighted combination of the most recent previous raw speech samples, i.e.:
 s(n)=a _{1} s(n−1)+a_{2} s(n−2)+ . . . +a _{k} s(n−k)+e(n) (1)
 where a_{1}, a_{2 }. . . a_{k }are the AR filter coefficients representing the amount of correlation between the speech samples; k is the AR filter model order; and e(n) represents random process noise which is involved in the generation of the raw speech samples. As those skilled in the art of speech processing will appreciate, these AR filter coefficients are the same coefficients that the linear prediction (LP) analysis estimates albeit using a different processing technique.
 As shown in FIG. 3, the raw speech samples s(n) generated by the speech source are input to a channel33 which models the acoustic environment between the speech source 31 and the output of the analogue to digital converter 17. Ideally, the channel 33 should simply attenuate the speech as it travels from the source 31 to the microphone. However, due to reverberation and other distortive effects, the signal (y(n)) output by the analogue to digital converter 17 will depend not only on the current raw speech sample (s(n)) but it will also depend upon previous raw speech samples. Therefore, in this embodiment, the statistical analysis unit 21 models the channel 33 by a moving average (MA) filter, i.e.:
 y(n)=h _{0} s(n)+h _{1} s(n−1)+h _{2} s(n−2)+ . . . +h _{r} s(n−r)+ε(n) (2)
 where y(n) represents the signal sample output by the analogue to digital converter17 at time t=n; h_{0}, h_{1}, h_{2 }. . . h_{r }are the channel filter coefficients representing the amount of distortion within the channel 33; r is the channel filter model order; and ε(n) represents a random additive measurement noise component.
 For the current frame of speech being processed, the filter coefficients for both the speech source and the channel are assumed to be constant but unknown. Therefore, considering all N samples (where N=320) in the current frame being processed gives:
 s(n)=a _{1} s(n−1)+a _{2} s(n−2)+ . . . +a _{k} s(n−k)+e(n)
 s(n−1)=a _{1} s(n−2)+a _{2} s(n−3)+ . . . +a _{k} s(n−k−1)+e(n−1)
 s(n−N+1)=a _{1} s(n−N)+a _{2} s(n−N−1)+ . . . +a _{k} s(n−k−N+1)+e(n−N+1) (3)
 which can be written in vector form as:
 s(n)=S·a+e(n) (4)
 where
$S={\left[\begin{array}{ccccc}s\ue8a0\left(n1\right)& s\ue8a0\left(n2\right)& s\ue8a0\left(n3\right)& \dots & s\ue8a0\left(nk\right)\\ s\ue8a0\left(n2\right)& s\ue8a0\left(n3\right)& s\ue8a0\left(n4\right)& \dots & s\ue8a0\left(nk1\right)\\ s\ue8a0\left(n3\right)& s\ue8a0\left(n4\right)& s\ue8a0\left(n5\right)& \dots & s\ue8a0\left(nk2\right)\\ \vdots & \text{\hspace{1em}}& \text{\hspace{1em}}& \u22f0& \text{\hspace{1em}}\\ s\ue8a0\left(nN\right)& s\ue8a0\left(nN1\right)& s\ue8a0\left(nN2\right)& \dots & s\ue8a0\left(nkN+1\right)\end{array}\right]}_{\mathrm{Nxk}}$ $\mathrm{and}$ $\underset{\_}{a}={\left[\begin{array}{c}{a}_{1}\\ {a}_{2}\\ {a}_{3}\\ \vdots \\ {a}_{k}\end{array}\right]}_{\mathrm{kx1}}\ue89e\text{\hspace{1em}}\ue89e\underset{\_}{s}\ue8a0\left(n\right)={\left[\begin{array}{c}s\ue8a0\left(n\right)\\ s\ue8a0\left(n1\right)\\ s\ue8a0\left(n2\right)\\ \vdots \\ s\ue8a0\left(nN+1\right)\end{array}\right]}_{\mathrm{Nx1}}\ue89e\text{\hspace{1em}}\ue89e\underset{\_}{\text{\hspace{1em}}\ue89ee}\ue89e\left(n\right)={\left[\begin{array}{c}e\ue8a0\left(n\right)\\ e\ue8a0\left(n1\right)\\ e\ue8a0\left(n2\right)\\ \vdots \\ e\ue8a0\left(nN+1\right)\end{array}\right]}_{\mathrm{Nx1}}$  As will be apparent from the following discussion, it is also convenient to rewrite equation (3) in terms of the random error component (often referred to as the residual) e(n). This gives:
 e(n)=s(n)−a _{1} s(n−1)−a _{2} s(n−2)− . . . −a _{k} s(n−k)
 e(n−1)=s(n−1)−a _{1} s(n−2)−_{2} s(n−3)− . . . −a _{k} s(n−k−1)
 e(n−N+1)=s(n−N+1)−a_{1} s(n−N)−a _{2} s(n−N−1)− . . . −a _{k} s(n−k−N+1) (5)
 which can be written in vector notation as:
 e(n)=Äs(n) (6)
 where
$\stackrel{.}{A}={\left[\begin{array}{ccccccccccc}1& {a}_{1}& {a}_{2}& {a}_{3}& \dots & {a}_{k}& 0& 0& 0& \dots & 0\\ 0& 1& {a}_{1}& {a}_{2}& \dots & {a}_{k1}& {a}_{k}& 0& 0& \dots & 0\\ 0& 0& 1& {a}_{1}& \dots & {a}_{k2}& {a}_{k1}& {a}_{k}& 0& \dots & 0\\ \vdots & \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \u22f0& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}\\ 0& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& 1\end{array}\right]}_{\mathrm{NxN}}$  Similarly, considering the channel model defined by equation (2), with h_{0}=1 (since this provides a more stable solution), gives:
 q(n)=h _{1} s(n−1)+h _{2} s(n−2)+ . . . +h _{r} s(n−r)+ε(n)
 q(n−1)=h_{1} s(n−2)+h_{2} s(n−3)+ . . . +h _{r} s(n−r−1)+ε(n−1)
 q(n−N+1)=h _{1} s(n−N)+h _{2} s(n−N−1)+ . . . +h _{r} s(n−r−N+1)+ε(n−N+1) (7)
 (where q(n)=y(n)−s(n)) which can be written in vector form as:
 q(n)=Y·h+ε(n) (8)
 where
$Y={\left[\begin{array}{ccccc}s\ue8a0\left(n1\right)& s\ue8a0\left(n2\right)& s\ue8a0\left(n3\right)& \dots & s\ue8a0\left(nr\right)\\ s\ue8a0\left(n2\right)& s\ue8a0\left(n3\right)& s\ue8a0\left(n4\right)& \dots & s\ue8a0\left(nr1\right)\\ s\ue8a0\left(n3\right)& s\ue8a0\left(n4\right)& s\ue8a0\left(n5\right)& \dots & s\ue8a0\left(nr2\right)\\ \vdots & \text{\hspace{1em}}& \text{\hspace{1em}}& \u22f0& \text{\hspace{1em}}\\ s\ue8a0\left(nN\right)& s\ue8a0\left(nN1\right)& s\ue8a0\left(nN2\right)& \dots & s\ue8a0\left(nrN+1\right)\end{array}\right]}_{\mathrm{Nxr}}$ $\mathrm{and}$ $\underset{\_}{h}={\left[\begin{array}{c}{h}_{1}\\ {h}_{2}\\ {h}_{3}\\ \vdots \\ {h}_{r}\end{array}\right]}_{\mathrm{kx1}}\ue89e\text{\hspace{1em}}\ue89e\underset{\_}{q}\ue8a0\left(n\right)={\left[\begin{array}{c}q\ue8a0\left(n\right)\\ q\ue8a0\left(n1\right)\\ q\ue8a0\left(n2\right)\\ \vdots \\ q\ue8a0\left(nN+1\right)\end{array}\right]}_{\mathrm{Nx1}}\ue89e\text{\hspace{1em}}\ue89e\underset{\_}{\text{\hspace{1em}}\ue89e\varepsilon}\ue89e\left(n\right)={\left[\begin{array}{c}\varepsilon \ue8a0\left(n\right)\\ \varepsilon \ue8a0\left(n1\right)\\ \varepsilon \ue8a0\left(n2\right)\\ \vdots \\ \varepsilon \ue8a0\left(nN+1\right)\end{array}\right]}_{\mathrm{Nx1}}$  In this embodiment, the analysis unit21 aims to determine, amongst other things, values for the AR filter coefficients (a) which best represent the observed signal samples (y(n)) in the current frame. It does this by determining the AR filter coefficients (a) that maximise the joint probability density function of the speech model, channel model, speech samples and the noise statistics given the observed signal samples output from the analogue to digital converter 17, i.e. by determining:
$\begin{array}{cc}\begin{array}{c}\mathrm{max}\\ \underset{}{a}\end{array}\ue89e\left\{p(\underset{\_}{a},k,\underset{\_}{h},r,{\sigma}_{e}^{2},{\sigma}_{\varepsilon}^{2},\underset{\_}{s}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{y}\ue8a0\left(n\right)\right\}& \left(9\right)\end{array}$  where σ_{e} ^{2 }and σ_{ε} ^{2 }represent the process and measurement noise statistics respectively. As those skilled in the art will appreciate, this function defines the probability that a particular speech model, channel model, raw speech samples and noise statistics generated the observed frame of speech samples (y(n)) from the analogue to digital converter. To do this, the statistical analysis unit 21 must determine what this function looks like. This problem can be simplified by rearranging this probability density function using Bayes law to give:
$\begin{array}{cc}\frac{p(\underset{\_}{y}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{s}\ue8a0\left(n\right),\underset{\_}{h},r,{\sigma}_{e}^{2})\ue89ep(\underset{\_}{s}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{a},k,{\sigma}_{e}^{2})\ue89ep(\underset{\_}{a}\uf604\ue89ek)\ue89ep(\underset{\_}{h}\uf604\ue89er)\ue89ep\ue8a0\left({\sigma}_{\varepsilon}^{2}\right)\ue89ep\ue8a0\left({\sigma}_{e}^{2}\right)\ue89ep\ue8a0\left(k\right)\ue89ep\ue8a0\left(r\right)}{p\ue8a0\left(\underset{\_}{y}\ue8a0\left(n\right)\right)}& \left(10\right)\end{array}$  As those skilled in the art will appreciate, the denominator of equation (10) can be ignored since the probability of the signals from the analogue to digital converter is constant for all choices of model. Therefore, the AR filter coefficients that maximise the function defined by equation (9) will also maximise the numerator of equation (10).
 Each of the terms on the numerator of equation (10) will now be considered in turn.
 p(s(n)a, k, σ_{e} ^{2})
 This term represents the joint probability density function for generating the vector of raw speech samples (s(n)) during a frame, given the AR filter coefficients (a), the AR filter model order (k) and the process noise statistics (σ_{e} ^{2}). From equation (6) above, this joint probability density function for the raw speech samples can be determined from the joint probability density function for the process noise. In particular p(s(n)a, k, σ_{e} ^{2}) is given by:
$\begin{array}{cc}p(\underset{\_}{s}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{a},k,{\sigma}_{e}^{2})=p\ue8a0\left(\underset{\_}{e}\ue8a0\left(n\right)\right)\ue89e{\uf603\frac{\delta \ue89e\text{\hspace{1em}}\ue89e\underset{\_}{e}\ue8a0\left(n\right)}{\delta \ue89e\text{\hspace{1em}}\ue89e\underset{\_}{s}\ue8a0\left(n\right)}\uf604}_{\underset{\_}{e}\ue8a0\left(n\right)=\underset{\_}{s}\ue8a0\left(n\right)S\ue89e\text{\hspace{1em}}\ue89e\underset{\_}{a}}& \left(11\right)\end{array}$  where p(e(n)) is the joint probability density function for the process noise during a frame of the input speech and the second term on the righthand side is known as the Jacobean of the transformation. In this case, the Jacobean is unity because of the triangular form of the matrix Ä (see equations (6) above).
 In this embodiment, the statistical analysis unit21 assumes that the process noise associated with the speech source 31 is Gaussian having zero mean and some unknown variance σ_{e} ^{2}. The statistical analysis unit 21 also assumes that the process noise at one time point is independent of the process noise at another time point. Therefore, the joint probability density function for the process noise during a frame of the input speech (which defines the probability of any given vector of process noise e(n) occurring) is given by:
$\begin{array}{cc}p\ue8a0\left(\underset{\_}{e}\ue8a0\left(n\right)\right)={\left(2\ue89e{\mathrm{\pi \sigma}}_{e}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{{\underset{\_}{e}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{e}\ue8a0\left(n\right)}{2\ue89e{\sigma}_{e}^{2}}\right]& \left(12\right)\end{array}$  Therefore, the joint probability density function for a vector of raw speech samples given the AR filter coefficients (a), the AR filter model order (k) and the process noise variance (σ_{e} ^{2}) is given by:
$\begin{array}{cc}p(\underset{\_}{s}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{a},k,{\sigma}_{e}^{2})={\left(2\ue89e{\mathrm{\pi \sigma}}_{e}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{2\ue89e{\sigma}_{e}^{2}}\ue89e\left({\underset{\_}{s}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{s}\ue8a0\left(n\right)2\ue89e{\underset{\_}{a}}^{T}\ue89eS\ue89e\underset{\_}{s}\ue8a0\left(n\right)+{\underset{\_}{a}}^{T}\ue89e{S}^{T}\ue89eS\ue89e\underset{\_}{a}\right)\right]& \left(13\right)\end{array}$  p(y(n)s(n), h, r, σ_{ε} ^{2})
 This term represents the joint probability density function for generating the vector of speech samples (y(n)) output from the analogue to digital converter17, given the vector of raw speech samples (s(n)), the channel filter coefficients (h), the channel filter model order (r) and the measurement noise statistics (σ_{ε} ^{2}). From equation (8), this joint probability density function can be determined from the joint probability density function for the process noise. In particular, p(y(n)s(n), h, r, σ_{ε} ^{2}) is given by:
$\begin{array}{cc}p(\underset{\_}{y}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{s}\ue8a0\left(n\right),\underset{\_}{h},r,{\sigma}_{\varepsilon}^{2})=p\ue8a0\left(\underset{\_}{\varepsilon}\ue8a0\left(n\right)\right)\ue89e{\uf603\frac{\delta \ue89e\text{\hspace{1em}}\ue89e\underset{\_}{\varepsilon}\ue8a0\left(n\right)}{\delta \ue89e\text{\hspace{1em}}\ue89e\underset{\_}{y}\ue8a0\left(n\right)}\uf604}_{\underset{\_}{\varepsilon}\ue8a0\left(n\right)=\underset{\_}{q}\ue8a0\left(n\right)Y\ue89e\text{\hspace{1em}}\ue89e\underset{\_}{h}}& \left(14\right)\end{array}$  where p(ε(n)) is the joint probability density function for the measurement noise during a frame of the input speech and the second term on the right hand side is the Jacobean of the transformation which again has a value of one.
 In this embodiment, the statistical analysis unit21 assumes that the measurement noise is Gaussian having zero mean and some unknown variance σ_{ε} ^{2}. It also assumes that the measurement noise at one time point is independent of the measurement noise at another time point. Therefore, the joint probability density function for the measurement noise in a frame of the input speech will have the same form as the process noise defined in equation (12). Therefore, the joint probability density function for a vector of speech samples (y(n)) output from the analogue to digital converter 17, given the channel filter coefficients (h), the channel filter model order (r), the measurement noise statistics (σ_{ε} ^{2}) and the raw speech samples (s(n)) will have the following form:
$\begin{array}{cc}p(\underset{\_}{y}\ue8a0\left(n\right)\uf604\ue89e\underset{\_}{s}\ue8a0\left(n\right),\underset{\_}{h},r,{\sigma}_{\varepsilon}^{2})={\left(2\ue89e{\mathrm{\pi \sigma}}_{\varepsilon}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{2\ue89e{\sigma}_{\varepsilon}^{2}}\ue89e\left({\underset{\_}{q}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{q}\ue8a0\left(n\right)2\ue89e{\underset{\_}{h}}^{T}\ue89eY\ue89e\underset{\_}{q}\ue8a0\left(n\right)+{\underset{\_}{h}}^{T}\ue89e{Y}^{T}\ue89eY\ue89e\underset{\_}{h}\right)\right]& \left(15\right)\end{array}$  As those skilled in the art will appreciate, although this joint probability density function for the vector of speech samples (y(n)) is in terms of the variable q(n), this does not matter since q(n) is a function of y(n) and s(n), and s(n) is a given variable (ie known) for this probability density function.
 p(ak)
 This term defines the prior probability density function for the AR filter coefficients (a) and it allows the statistical analysis unit21 to introduce knowledge about what values it expects these coefficients will take. In this embodiment, the statistical analysis unit 21 models this prior probability density function by a Gaussian having an unknown variance (σ_{a} ^{2}) and mean vector (μa), i.e.:
$\begin{array}{cc}p(\underset{\_}{a}\uf604\ue89ek,{\sigma}_{a}^{2},{\underset{\_}{\mu}}_{a})={\left(2\ue89e{\mathrm{\pi \sigma}}_{a}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{{\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}^{T}\ue89e\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}{2\ue89e{\sigma}_{a}^{2}}\right]& \left(16\right)\end{array}$  By introducing the new variables σ_{a} ^{2 }and μ_{a}, the prior density functions (p(σ_{a} ^{2}) and p(μ_{a})) for these variables must be added to the numerator of equation (10) above. Initially, for the first frame of speech being processed the mean vector (μ_{a}) can be set to zero and for the second and subsequent frames of speech being processed, it can be set to the mean vector obtained during the processing of the previous frame. In this case, p(μ_{a}) is just a Dirac delta function located at the current value of μ_{a }and can therefore be ignored.
 With regard to the prior probability density function for the variance of the AR filter coefficients, the statistical analysis unit21 could set this equal to some constant to imply that all variances are equally probable. However, this term can be used to introduce knowledge about what the variance of the AR filter coefficients is expected to be. In this embodiment, since variances are always positive, the statistical analysis unit 21 models this variance prior probability density function by an Inverse Gamma function having parameters α_{a }and β_{a}, i.e.:
$\begin{array}{cc}p({\sigma}_{a}^{2}\uf604\ue89e{\alpha}_{a},{\beta}_{a})=\frac{{\left({\sigma}_{a}^{2}\right)}^{\left({\alpha}_{a}+1\right)}}{{\beta}_{a}\ue89e\Gamma \ue8a0\left({\alpha}_{a}\right)}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{a}^{2}\ue89e{\beta}_{a}}\right]& \left(17\right)\end{array}$  At the beginning of the speech being processed, the statistical analysis unit21 will not have much knowledge about the variance of the AR filter coefficients. Therefore, initially, the statistical analysis unit 21 sets the variance σ_{a} ^{2 }and the α and β parameters of the Inverse Gamma function to ensure that this probability density function is fairly flat and therefore noninformative. However, after the first frame of speech has been processed, these parameters can be set more accurately during the processing of the next frame of speech by using the parameter values calculated during the processing of the previous frame of speech.
 p(hr)
 This term represents the prior probability density function for the channel model coefficients (h) and it allows the statistical analysis unit21 to introduce knowledge about what values it expects these coefficients to take. As with the prior probability density function for the AR filter coefficients, in this embodiment, this probability density function is modelled by a Gaussian having an unknown variance (σ_{h} ^{2}) and mean vector (μ_{h}), i.e.:
$\begin{array}{cc}p(\underset{\_}{h}\uf604\ue89er,{\sigma}_{h}^{2},{\underset{\_}{\mu}}_{h})={\left(2\ue89e{\mathrm{\pi \sigma}}_{h}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{{\left(\underset{\_}{h}{\underset{\_}{\mu}}_{h}\right)}^{T}\ue89e\left(\underset{\_}{h}{\underset{\_}{\mu}}_{h}\right)}{2\ue89e{\sigma}_{h}^{2}}\right]& \left(18\right)\end{array}$  Again, by introducing these new variables, the prior density functions (p(σ_{h}) and p(μ_{h})) must be added to the numerator of equation (10). Again, the mean vector can initially be set to zero and after the first frame of speech has been processed and for all subsequent frames of speech being processed, the mean vector can be set to equal the mean vector obtained during the processing of the previous frame. Therefore, p(μ_{h}) is also just a Dirac delta function located at the current value of μ_{h }and can be ignored.
 With regard to the prior probability density function for the variance of the channel filter coefficients, again, in this embodiment, this is modelled by an Inverse Gamma function having parameters α_{h }and β_{h}. Again, the variance (σ_{h} ^{2}) and the α and β parameters of the Inverse Gamma function can be chosen initially so that these densities are noninformative so that they will have little effect on the subsequent processing of the initial frame.
 p(σ_{e} ^{2}) and p(σ_{ε} ^{2})
 These terms are the prior probability density functions for the process and measurement noise variances and again, these allow the statistical analysis unit21 to introduce knowledge about what values it expects these noise variances will take. As with the other variances, in this embodiment, the statistical analysis unit 21 models these by an Inverse Gamma function having parameters α_{e}, β_{e }and α_{ε}, β_{ε} respectively. Again, these variances and these Gamma function parameters can be set initially so that they are noninformative and will not appreciably affect the subsequent calculations for the initial frame.
 p(k) and p(r)
 These terms are the prior probability density functions for the AR filter model order (k) and the channel model order (r) respectively. In this embodiment, these are modelled by a uniform distribution up to some maximum order. In this way, there is no prior bias on the number of coefficients in the models except that they can not exceed these predefined maximums. In this embodiment, the maximum AR filter model order (k) is thirty and the maximum channel model order (r) is one hundred and fifty.
 Therefore, inserting the relevant equations into the numerator of equation (10) gives the following joint probability density function which is proportional to p(a,k,h,r,σ_{a} ^{2},σ_{h} ^{2},σ_{e} ^{2},σ_{r} ^{2},s(n)y(n)):
$\begin{array}{cc}{\left(2\ue89e{\mathrm{\pi \sigma}}_{\varepsilon}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{2\ue89e{\sigma}_{\varepsilon}^{2}}\ue89e\left({\underset{\_}{q}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{q}\ue8a0\left(n\right)2\ue89e{\underset{\_}{h}}^{T}\ue89eY\ue89e\underset{\_}{q}\ue8a0\left(n\right)+{\underset{\_}{h}}^{T}\ue89e{Y}^{T}\ue89eY\ue89e\underset{\_}{h}\right)\right]\times {\left(2\ue89e{\mathrm{\pi \sigma}}_{e}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{2\ue89e{\sigma}_{e}^{2}}\ue89e\left({\underset{\_}{s}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{s}\ue8a0\left(n\right)2\ue89e{\underset{\_}{a}}^{T}\ue89eS\ue89e\underset{\_}{s}\ue8a0\left(n\right)+{\underset{\_}{a}}^{T}\ue89e{S}^{T}\ue89eS\ue89e\underset{\_}{a}\right)\right]\times \hspace{1em}{\left(2\ue89e{\mathrm{\pi \sigma}}_{a}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{{\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}^{T}\ue89e\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}{2\ue89e{\sigma}_{a}^{2}}\right]\times \hspace{1em}{\left(2\ue89e{\mathrm{\pi \sigma}}_{h}^{2}\right)}^{\frac{N}{2}}\ue89e\hspace{1em}\mathrm{exp}\ue8a0\left[\frac{{\left(\underset{\_}{h}{\underset{\_}{\mu}}_{h}\right)}^{T}\ue89e\left(\underset{\_}{h}{\underset{\_}{\mu}}_{h}\right)}{2\ue89e{\sigma}_{h}^{2}}\right]\times \hspace{1em}\frac{{\left({\sigma}_{a}^{2}\right)}^{\left({\alpha}_{a}+1\right)}}{{\beta}_{a}\ue89e\Gamma \ue8a0\left({\alpha}_{a}\right)}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{a}^{2}\ue89e{\beta}_{a}}\right]\times \frac{{\left({\sigma}_{h}^{2}\right)}^{\left({\alpha}_{h}+1\right)}}{{\beta}_{h}\ue89e\Gamma \ue8a0\left({\alpha}_{h}\right)}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{h}^{2}\ue89e{\beta}_{h}}\right]\times \frac{{\left({\sigma}_{e}^{2}\right)}^{\left({\alpha}_{e}+1\right)}}{{\beta}_{e}\ue89e\Gamma \ue8a0\left({\alpha}_{e}\right)}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{e}^{2}\ue89e{\beta}_{e}}\right]\times \frac{{\left({\sigma}_{\varepsilon}^{2}\right)}^{\left({\alpha}_{\varepsilon}+1\right)}}{{\beta}_{\varepsilon}\ue89e\Gamma \ue8a0\left({\alpha}_{\varepsilon}\right)}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{\varepsilon}^{2}\ue89e{\beta}_{\varepsilon}}\right]& \left(19\right)\end{array}$  Gibbs Sampler
 In order to determine the form of this joint probability density function, the statistical analysis unit21 “draws samples” from it. In this embodiment, since the joint probability density function to be sampled is a complex multivariate function, a Gibbs sampler is used which breaks down the problem into one of drawing samples from probability density functions of smaller dimensionality. In particular, the Gibbs sampler proceeds by drawing random variates from conditional densities as follows:
$\mathrm{first}\ue89e\text{\hspace{1em}}\ue89e\mathrm{iteration}$ $\begin{array}{c}p(\underset{\_}{a},k\uf604\ue89e{h}^{0},{r}^{0},{\sigma}_{e}^{{2}^{0}},{\sigma}_{\varepsilon}^{{2}^{0}},{\sigma}_{a}^{{2}^{0}},{\sigma}_{h}^{{2}^{0}},{\underset{\_}{s}\ue8a0\left(n\right)}^{0},\underset{\_}{y}\ue8a0\left(n\right))>{\underset{\_}{a}}^{1},{k}^{1}\\ p(\underset{\_}{h},r\uf604\ue89e{\underset{\_}{a}}^{1},{k}^{1},{\sigma}_{e}^{{2}^{0}},{\sigma}_{\varepsilon}^{{2}^{0}},{\sigma}_{a}^{{2}^{0}},{\sigma}_{h}^{{2}^{0}},{\underset{\_}{s}\ue8a0\left(n\right)}^{0},\underset{\_}{y}\ue8a0\left(n\right))>{\underset{\_}{h}}^{1},{k}^{1}\\ p({\sigma}_{e}^{2}\uf604\ue89e{\underset{\_}{a}}^{1},{k}^{1},{\underset{\_}{h}}^{1},{r}^{1},{\sigma}_{\varepsilon}^{{2}^{0}},{\sigma}_{a}^{{2}^{0}},{\sigma}_{h}^{{2}^{0}},{\underset{\_}{s}\ue8a0\left(n\right)}^{0},\underset{\_}{y}\ue8a0\left(n\right))>{\sigma}_{e}^{{2}^{1}}\\ \vdots \\ p({\sigma}_{h}^{{2}^{1}}\uf604\ue89e{\underset{\_}{a}}^{1},{k}^{1},{\underset{\_}{h}}^{1},{r}^{1},{\sigma}_{\varepsilon}^{{2}^{1}},{\sigma}_{a}^{{2}^{1}},{\sigma}_{h}^{{2}^{1}},{\underset{\_}{s}\ue8a0\left(n\right)}^{0},\underset{\_}{y}\ue8a0\left(n\right))>{\sigma}_{h}^{{2}^{1}}\end{array}$ $\mathrm{second}\ue89e\text{\hspace{1em}}\ue89e\mathrm{iteration}$ $\begin{array}{c}p(\underset{\_}{a},k\uf604\ue89e{\underset{\_}{h}}^{1},{r}^{1},{\sigma}_{e}^{{2}^{1}},{\sigma}_{\varepsilon}^{{2}^{1}},{\sigma}_{h}^{{2}^{1}},{\underset{\_}{s}\ue8a0\left(n\right)}^{1},\underset{\_}{y}\ue8a0\left(n\right))>{\underset{\_}{a}}^{2},{k}^{2}\\ p(\underset{\_}{h},r\uf604\ue89e{\underset{\_}{a}}^{2},{k}^{2},{\sigma}_{e}^{{2}^{1}},{\sigma}_{\varepsilon}^{{2}^{1}},{\sigma}_{a}^{{2}^{1}},{\sigma}_{h}^{{2}^{1}},{\underset{\_}{s}\ue8a0\left(n\right)}^{1},\underset{\_}{y}\ue8a0\left(n\right))>{\underset{\_}{h}}^{2},{r}^{2}\end{array}$  etc.
 where (h^{0}, r^{0}, (σ_{e} ^{2})^{0}, (σ_{ε} ^{2})^{0}, (σ_{a} ^{2})^{0}, (σ_{h} ^{2})^{0}, s(n)^{0}) are initial values which may be obtained from the results of the statistical analysis of the previous frame of speech, or where there are no previous frames, can be set to appropriate values that will be known to those skilled in the art of speech processing.
 As those skilled in the art will appreciate, these conditional densities are obtained by inserting the current values for the given (or known) variables into the terms of the density function of equation (19). For the conditional density p(a,k . . . ) this results in:
$\begin{array}{cc}\begin{array}{c}p(\underset{\_}{a},k\uf604\ue89e\dots )\propto \text{\hspace{1em}}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{2\ue89e{\sigma}_{e}^{2}}\ue89e\left({\underset{\_}{s}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{s}\ue8a0\left(n\right)2\ue89e{\underset{\_}{a}}^{T}\ue89eS\ue89e\underset{\_}{s}\ue8a0\left(n\right)+{\underset{\_}{a}}^{T}\ue89e{S}^{T}\ue89eS\ue89e\underset{\_}{a}\right)\right]\times \\ \text{\hspace{1em}}\ue89e\mathrm{exp}\ue8a0\left[\frac{{\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}^{T}\ue89e\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}{2\ue89e{\sigma}_{a}^{2}}\right]\end{array}& \left(20\right)\end{array}$  which can be simplified to give:
$\begin{array}{cc}p(\underset{\_}{a},k\uf604\ue89e\dots )\propto \mathrm{exp}\ue8a0\left[\frac{1}{2}\ue89e\left(\begin{array}{c}\frac{{\underset{\_}{s}\ue8a0\left(n\right)}^{T}\ue89e\underset{\_}{s}\ue8a0\left(n\right)}{{\sigma}_{e}^{2}}+\frac{{\underset{\_}{\mu}}_{a}^{T}\ue89e{\underset{\_}{\mu}}_{a}}{{\sigma}_{a}^{2}}\\ 2\ue89e{\underset{\_}{a}}^{T}\ue8a0\left[\frac{S\ue89e\underset{\_}{s}\ue8a0\left(n\right)}{{\sigma}_{e}^{2}}+\frac{{\underset{\_}{\mu}}_{a}}{{\sigma}_{a}^{2}}\right]+\\ {\underset{\_}{a}}^{T}\ue8a0\left[\frac{{S}^{T}\ue89eS}{{\sigma}_{{e}^{2}}}+\frac{I}{{\sigma}_{a}^{2}}\right]\ue89e\underset{\_}{a}\end{array}\right)\right]& \left(21\right)\end{array}$ 
 The mean value of this Gaussian distribution can be determined by differentiating the exponent of equation (21) with respect to a and determining the value of a which makes the differential of the exponent equal to zero. This yields a mean value of:
$\begin{array}{cc}{\hat{\underset{\_}{\mu}}}_{a}={\left[\frac{{S}^{T}\ue89eS}{{\sigma}_{e}^{2}}+\frac{I}{{\sigma}_{a}^{2}}\right]}^{1}\ue8a0\left[\frac{S\ue89e\underset{\_}{s}\ue8a0\left(n\right)}{{\sigma}_{e}^{2}}+\frac{{\underset{\_}{\mu}}_{a}}{{\sigma}_{a}^{2}}\right]& \left(23\right)\end{array}$  A sample can then be drawn from this standard Gaussian distribution to give a^{g }(where g is the g^{th }iteration of the Gibbs sampler) with the model order (k^{g}) being determined by a model order selection routine which will be described later. The drawing of a sample from this Gaussian distribution may be done by using a random number generator which generates a vector of random values which are uniformly distributed and then using a transformation of random variables using the covariance matrix and the mean value given in equations (22) and (23) to generate the sample. In this embodiment, however, a random number generator is used which generates random numbers from a Gaussian distribution having zero mean and a variance of one. This simplifies the transformation process to one of a simple scaling using the covariance matrix given in equation (22) and shifting using the mean value given in equation (23). Since the techniques for drawing samples from Gaussian distributions are well known in the art of statistical analysis, a further description of them will not be given here. A more detailed description and explanation can be found in the book entitled “Numerical Recipes in C”, by W. Press et al, Cambridge University Press, 1992 and in particular at chapter 7.
 As those skilled in the art will appreciate, however, before a sample can be drawn from this Gaussian distribution, estimates of the raw speech samples must be available so that the matrix S and the vector s(n) are known. The way in which these estimates of the raw speech samples are obtained in this embodiment will be described later.
 A similar analysis for the conditional density p(h,r . . . ) reveals that it also is a standard Gaussian distribution but having a covariance matrix and mean value given by:
$\begin{array}{cc}\sum _{\underset{}{h}}\ue89e{\left[\frac{{Y}^{T}\ue89eY}{{\sigma}_{\varepsilon}^{2}}+\frac{I}{{\sigma}_{h}^{2}}\right]}^{1}\ue89e\text{}\ue89e{\hat{\underset{\_}{\mu}}}_{h}={\left[\frac{{Y}^{T}\ue89eY}{{\sigma}_{\varepsilon}^{2}}+\frac{I}{{\sigma}_{h}^{2}}\right]}^{1}\ue8a0\left[\frac{{Y}^{2}\ue89e\underset{\_}{q}\ue8a0\left(n\right)}{{\sigma}_{\varepsilon}^{2}}+\frac{{\underset{\_}{\mu}}_{h}}{{\sigma}_{h}^{2}}\right]& \left(24\right)\end{array}$  from which a sample for h^{g }can be drawn in the manner described above, with the channel model order (r^{g}) being determined using the model order selection routine which will be described later.
 A similar analysis for the conditional density p(σ_{e} ^{2} . . . ) shows that:
$\begin{array}{cc}p\ue8a0\left({\sigma}_{e}^{2}\dots \right)\propto {\left({\sigma}_{e}^{2}\right)}^{\frac{N}{2}}\ue89e\mathrm{exp}\ue8a0\left[\frac{E}{2\ue89e{\sigma}_{e}^{2}}\right]\ue89e\text{\hspace{1em}}\ue89e\frac{{\left({\sigma}_{e}^{2}\right)}^{\left({\alpha}_{e}+1\right)}}{{\beta}_{e}\ue89e\Gamma \ue8a0\left({\alpha}_{e}\right)}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{e}^{2}\ue89e{\beta}_{e}}\right]& \left(25\right)\end{array}$  where:
 E=s(n)^{T} s(n)−2a ^{T} Ss(n)+a ^{T} S ^{T} Sa
 which can be simplified to give:
$\begin{array}{cc}p\ue8a0\left({\sigma}_{e}^{2}\dots \right)\propto {\left({\sigma}_{e}^{2}\right)}^{\left[\left(\frac{N}{2}+{\alpha}_{e}\right)+1\right]}\ue89e\mathrm{exp}\ue8a0\left[\frac{1}{{\sigma}_{e}^{2}}\ue89e\left(\frac{E}{2}+\frac{1}{{\beta}_{e}}\right)\right]& \left(26\right)\end{array}$  which is also an Inverse Gamma distribution having the following parameters:
$\begin{array}{cc}{\hat{\alpha}}_{e}=\frac{N}{2}+{\alpha}_{e}\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{\hat{\beta}}_{e}=\frac{2\ue89e{\beta}_{e}}{2+{\beta}_{e}\ue89eE}& \left(27\right)\end{array}$  A sample is then drawn from this Inverse Gamma distribution by firstly generating a random number from a uniform distribution and then performing a transformation of random variables using the alpha and beta parameters given in equation (27), to give (σ_{e} ^{2})^{g}.
 A similar analysis for the conditional density p(σ_{ε} ^{2} . . . ) reveals that it also is an Inverse Gamma distribution having the following parameters:
$\begin{array}{cc}{\hat{\alpha}}_{\varepsilon}=\frac{N}{2}+{\alpha}_{e}\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{\hat{\beta}}_{\varepsilon}=\frac{2\ue89e{\beta}_{\varepsilon}}{2+{\beta}_{\varepsilon}\xb7{E}^{*}}& \left(28\right)\end{array}$  where:
 E*=q(n)^{T} q(n)−2h ^{T} Yq(n)+h ^{T} Y ^{T} Yh
 A sample is then drawn from this Inverse Gamma distribution in the manner described above to give (σ_{ε} ^{2})^{g}.
 A similar analysis for conditional density p(σ_{a} ^{2} . . . ) reveals that it too is an Inverse Gamma distribution having the following parameters:
$\begin{array}{cc}{\hat{\alpha}}_{a}=\frac{N}{2}+{\alpha}_{a}\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{\hat{\beta}}_{a}=\frac{2\ue89e{\beta}_{a}}{2+{\beta}_{a}\xb7{\left(\underset{\_}{\alpha}{\underset{\_}{\mu}}_{a}\right)}^{T}\ue89e\left(\underset{\_}{a}{\underset{\_}{\mu}}_{a}\right)}& \left(29\right)\end{array}$  A sample is then drawn from this Inverse Gamma distribution in the manner described above to give (σ_{a} ^{2})^{g}.
 Similarly, the conditional density p(σ_{h} ^{2} . . . ) is also an Inverse Gamma distribution but having the following parameters:
$\begin{array}{cc}{\hat{\alpha}}_{h}=\frac{N}{2}+{\alpha}_{h}\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{\hspace{1em}}\ue89e{\hat{\beta}}_{h}=\frac{2\ue89e{\beta}_{h}}{2+{\beta}_{h}\xb7{\left(\underset{\_}{h}{\underset{\_}{\mu}}_{h}\right)}^{T}\ue89e\left(\underset{\_}{h}{\underset{\_}{\mu}}_{h}\right)}& \left(30\right)\end{array}$  A sample is then drawn from this Inverse Gamma distribution in the manner described above to give (σ_{h} ^{2})^{g}.
 As those skilled in the art will appreciate, the Gibbs sampler requires an initial transient period to converge to equilibrium (known as burnin). Eventually, after L iterations, the sample (a^{L}, k^{L}, h^{L}, r^{L}, (σ_{e} ^{2})^{L}, (σ_{ε} ^{2})^{L}, (σ_{a} ^{2})^{L}, (σ_{h} ^{2})^{L}, s(n)^{L}) is considered to be a sample from the joint probability density function defined in equation (19). In this embodiment, the Gibbs sampler performs approximately one hundred and fifty (150) iterations on each frame of input speech and discards the samples from the first fifty iterations and uses the rest to give a picture (a set of histograms) of what the joint probability density function defined in equation (19) looks like. From these histograms, the set of AR coefficients (a) which best represents the observed speech samples (y(n)) from the analogue to digital converter 17 are determined. The histograms are also used to determine appropriate values for the variances and channel model coefficients (h) which can be used as the initial values for the Gibbs sampler when it processes the next frame of speech.
 Model Order Selection
 As mentioned above, during the Gibbs iterations, the model order (k) of the AR filter and the model order (r) of the channel filter are updated using a model order selection routine. In this embodiment, this is performed using a technique derived from “Reversible jump Markov chain Monte Carlo computation”, which is described in the paper entitled “Reversible jump Markov chain Monte Carlo Computation and Bayesian model determination” by Peter Green, Biometrika, vol 82, pp 711 to 732, 1995.
 FIG. 4 is a flow chart which illustrates the processing steps performed during this model order selection routine for the AR filter model order (k). As shown, in step s1, a new model order (k_{2}) is proposed. In this embodiment, the new model order will normally be proposed as k_{2}=k_{1}±1, but occasionally it will be proposed as k_{2}=k_{1}±2 and very occasionally as k_{2}=k_{1}±3 etc. To achieve this, a sample is drawn from a discretised Laplacian density function centred on the current model order (k_{1}) and with the variance of this Laplacian density function being chosen a priori in accordance with the degree of sampling of the model order space that is required.

 where the ratio term is the ratio of the conditional probability given in equation (21) evaluated for the current AR filter coefficients (a) drawn by the Gibbs sampler for the current model order (k_{1}) and for the proposed new model order (k_{2}). If k_{2}>k_{1}, then the matrix S must first be resized and then a new sample must be drawn from the Gaussian distribution having the mean vector and covariance matrix defined by equations (22) and (23) (determined for the resized matrix S), to provide the AR filter coefficients (a_{<1:k2>) }for the new model order (k_{2}). If k_{2}<k_{1 }then all that is required is to delete the last (k_{1}−k_{2}) samples of the a vector. If the ratio in equation (31) is greater than one, then this implies that the proposed model order (k_{2}) is better than the current model order whereas if it is less than one then this implies that the current model order is better than the proposed model order. However, since occasionally this will not be the case, rather than deciding whether or not to accept the proposed model order by comparing the model order variable (MO) with a fixed threshold of one, in this embodiment, the model order variable (MO) is compared, in step s5, with a random number which lies between zero and one. If the model order variable (MO) is greater than this random number, then the processing proceeds to step s7 where the model order is set to the proposed model order (k_{2}) and a count associated with the value of k_{2 }is incremented. If, on the other hand, the model order variable (MO) is smaller than the random number, then the processing proceeds to step s9 where the current model order is maintained and a count associated with the value of the current model order (k_{1}) is incremented. The processing then ends.
 This model order selection routine is carried out for both the model order of the AR filter model and for the model order of the channel filter model. This routine may be carried out at each Gibbs iteration. However, this is not essential. Therefore, in this embodiment, this model order updating routine is only carried out every third Gibbs iteration.
 Simulation Smoother
 As mentioned above, in order to be able to draw samples using the Gibbs sampler, estimates of the raw speech samples are required to generate s(n), S and Y which are used in the Gibbs calculations. These could be obtained from the conditional probability density function p(s(n) . . . ). However, this is not done in this embodiment because of the high dimensionality of S(n). Therefore, in this embodiment, a different technique is used to provide the necessary estimates of the raw speech samples. In particular, in this embodiment, a “Simulation Smoother” is used to provide these estimates. This Simulation Smoother was proposed by Piet de Jong in the paper entitled “The Simulation Smoother for Time Series Models”, Biometrika (1995), vol 82,2, pages 339 to 350. As those skilled in the art will appreciate, the Simulation Smoother is run before the Gibbs Sampler. It is also run again during the Gibbs iterations in order to update the estimates of the raw speech samples. In this embodiment, the Simulation Smoother is run every fourth Gibbs iteration.
 In order to run the Simulation Smoother, the model equations defined above in equations (4) and (6) must be written in “state space” format as follows:
 ŝ(n)=Ã·ś(n−1)+ê(n)
 y(n)=h ^{T} ·ŝ(n−1)+ε(n) (32)
 where
$\stackrel{~}{A}={\left[\begin{array}{cccccccc}{a}_{1}& {a}_{2}& {a}_{3}& \cdots & {a}_{k}& 0& \cdots & 0\\ 1& 0& 0& \cdots & 0& 0& \cdots & 0\\ 0& 1& 0& \cdots & 0& 0& \cdots & 0\\ \vdots & \text{\hspace{1em}}& \text{\hspace{1em}}& \u22f0& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}\\ 0& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& \text{\hspace{1em}}& 1& 0\end{array}\right]}_{\mathrm{rxr}}\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}$ $\hat{\underset{\_}{s}}\ue89e\left(n\right)={\left[\begin{array}{c}\hat{s}\ue8a0\left(n\right)\\ \hat{s}\ue8a0\left(n1\right)\\ \hat{s}\ue8a0\left(n2\right)\\ \vdots \\ \hat{s}\ue8a0\left(nr+1\right)\end{array}\right]}_{\mathrm{rx1}}\ue89e\text{\hspace{1em}}\ue89e\hat{\underset{\_}{e}}\ue8a0\left(n\right)={\left[\begin{array}{c}\hat{e}\ue8a0\left(n\right)\\ 0\\ 0\\ \vdots \\ 0\end{array}\right]}_{\mathrm{rx1}}$  With this state space representation, the dimensionality of the raw speech vectors (ŝ(n)) and the process noise vectors (ê(n)) do not need to be N×1 but only have to be as large as the greater of the model orders—k and r. Typically, the channel model order (r) will be larger than the AR filter model order (k). Hence, the vector of raw speech samples (ŝ(n)) and the vector of process noise (ê(n)) only need to be rxl and hence the dimensionality of the matrix Ã only needs to be rxr.
 The Simulation Smoother involves two stages—a first stage in which a Kalman filter is run on the speech samples in the current frame and then a second stage in which a “smoothing” filter is run on the speech samples in the current frame using data obtained from the Kalman filter stage. FIG. 5 is a flow chart illustrating the processing steps performed by the Simulation Smoother. As shown, in step s21, the system initialises a time variable t to equal one. During the Kalman filter stage, this time variable is run from t=1 to N in order to process the N speech samples in the current frame being processed in time sequential order. After step s21, the processing then proceeds to step s23, where the following Kalman filter equations are computed for the current speech sample (y(t)) being processed:
 w(t)=y(t)−h ^{T} ŝ(t)
 d(t)=h ^{T} P(t)h+σ _{ε} ^{2}
 k _{ƒ}(t)=(ÃP(t)h)·d(t)^{−1}
 ŝ(t+1)=Ãŝ( t)+k _{ƒ}(t)·w(t)
 L(t)=Ã−k _{ƒ}(t)·h ^{T}
 P(t+1)=ÃP(t)L(t)^{T}+σ_{e} ^{2} ·I (33)
 where the initial vector of raw speech samples (ŝ(1)) includes raw speech samples obtained from the processing of the previous frame (or if there are no previous frames then s(i) is set equal to zero for i<1); P(1) is the variance of ŝ(1) (which can be obtained from the previous frame or initially can be set to σ_{e} ^{2}); h is the current set of channel model coefficients which can be obtained from the processing of the previous frame (or if there are no previous frames then the elements of h can be set to their expected values—zero); y(t) is the current speech sample of the current frame being processed and I is the identity matrix. The processing then proceeds to step s25 where the scalar values w(t) and d(t) are stored together with the rxr matrix L(t) (or alternatively the Kalman filter gain vector k_{f}(t) could be stored from which L(t) can be generated). The processing then proceeds to step s27 where the system determines whether or not all the speech samples in the current frame have been processed. If they have not, then the processing proceeds to step s29 where the time variable t is incremented by one so that the next sample in the current frame will be processed in the same way. Once all N samples in the current frame have been processed in this way and the corresponding values stored, the first stage of the Simulation Smoother is complete.
 The processing then proceeds to step s31 where the second stage of the Simulation Smoother is started in which the smoothing filter processes the speech samples in the current frame in reverse sequential order. As shown, in step s31 the system runs the following set of smoothing filter equations on the current speech sample being processed together with the stored Kalman filter variables computed for the current speech sample being processed:
$\begin{array}{cc}C\ue8a0\left(t\right)={\sigma}_{e}^{2}\ue8a0\left(I{\sigma}_{e}^{2}\ue89eU\ue8a0\left(t\right)\right)\ue89e\text{}\ue89e\underset{\_}{\eta}\ue8a0\left(t\right)~N\ue8a0\left(0,C\ue8a0\left(t\right)\right)\ue89e\text{}\ue89eV\ue8a0\left(t\right)={\sigma}_{e}^{2}\ue89eU\ue8a0\left(t\right)\ue89eL\ue8a0\left(t\right)\ue89e\text{}\ue89e\underset{\_}{r}\ue8a0\left(t1\right)=\underset{\_}{h}\ue89e{d\ue8a0\left(t\right)}^{1}\ue89ew\ue8a0\left(t\right)+{L\ue8a0\left(t\right)}^{T}\ue89e\underset{\_}{r}\ue8a0\left(t\right){V\ue8a0\left(t\right)}^{T}\ue89e{C\ue8a0\left(t\right)}^{1}\ue89e\underset{\_}{\eta}\ue8a0\left(t\right)\ue89e\text{}\ue89eU\ue8a0\left(t1\right)=\underset{\_}{h}\ue89e{d\ue8a0\left(t\right)}^{1}\ue89e{\underset{\_}{h}}^{T}+{L\ue8a0\left(t\right)}^{T}\ue89eU\ue8a0\left(t\right)\ue89eL\ue8a0\left(t\right)+{V\ue8a0\left(t\right)}^{T}\ue89e{C\ue8a0\left(t\right)}^{1}\ue89eV\ue8a0\left(t\right)\ue89e\text{}\ue89e\stackrel{~}{\underset{\_}{e}}\ue8a0\left(t\right)={\sigma}_{e}^{2}\ue89e\underset{\_}{r}\ue8a0\left(t\right)+\underset{\_}{\eta}\ue8a0\left(t\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{where}\ue89e\text{}\ue89e\stackrel{~}{\underset{\_}{e}}\ue8a0\left(t\right)={\left[\stackrel{~}{e}\ue8a0\left(t\right)\ue89e\text{\hspace{1em}}\ue89e\stackrel{~}{e}\ue8a0\left(t1\right)\ue89e\text{\hspace{1em}}\ue89e\stackrel{~}{e}\ue8a0\left(t2\right)\ue89e\text{\hspace{1em}}\ue89e\dots \ue89e\text{\hspace{1em}}\ue89e\stackrel{~}{e}\ue8a0\left(tr+1\right)\right]}^{T}\ue89e\text{}\ue89e\hat{\underset{\_}{s}}\ue8a0\left(t\right)=\stackrel{~}{A}\ue89e\hat{\underset{\_}{s}}\ue8a0\left(t1\right)+\hat{\underset{\_}{e}}\ue8a0\left(t\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{where}\ue89e\text{\hspace{1em}}\ue89e\text{}\ue89e\hat{\underset{\_}{s}}\ue8a0\left(t\right)={\left[\hat{s}\ue8a0\left(t\right)\ue89e\text{\hspace{1em}}\ue89e\hat{s}\ue8a0\left(t1\right)\ue89e\text{\hspace{1em}}\ue89e\hat{s}\ue8a0\left(t2\right)\ue89e\text{\hspace{1em}}\ue89e\dots \ue89e\text{\hspace{1em}}\ue89e\hat{s}\ue8a0\left(tr+1\right)\right]}^{T}\ue89e\text{\hspace{1em}}\ue89e\mathrm{and}\ue89e\text{}\ue89e\hat{\underset{\_}{e}}\ue8a0\left(t\right)={\left[\stackrel{~}{e}\ue8a0\left(t\right)\ue89e\text{\hspace{1em}}\ue89e0\ue89e\text{\hspace{1em}}\ue89e0\ue89e\text{\hspace{1em}}\ue89e\dots \ue89e\text{\hspace{1em}}\ue89e0\right]}^{T}& \left(34\right)\end{array}$  where n(t) is a sample drawn from a Gaussian distribution 20 having zero mean and covariance matrix C(t); the initial vector r(t=N) and the initial matrix U(t=N) are both set to zero; and s(0) is obtained from the processing of the previous frame (or if there are no previous frames can be set equal to zero). The processing then proceeds to step s33 where the estimate of the process noise ({tilde over (e)}(t)) for the current speech sample being processed and the estimate of the raw speech sample (ŝ(t)) for the current speech sample being processed are stored. The processing then proceeds to step s35 where the system determines whether or not all the speech samples in the current frame have been processed. If they have not, then the processing proceeds to step s37 where the time variable t is decremented by one so that the previous sample in the current frame will be processed in the same way. Once all N samples in the current frame have been processed in this way and the corresponding process noise and raw speech samples have been stored, the second stage of the Simulation Smoother is complete and an estimate of s(n) will have been generated.
 As shown in equations (4) and (8), the matrix S and the matrix Y require raw speech samples s(n−N−1) to s(n−N−k+1) and s(n−N−1) to s(n−N−r+1) respectively in addition to those in s(n). These additional raw speech samples can be obtained either from the processing of the previous frame of speech or if there are no previous frames, they can be set to zero. With these estimates of raw speech samples, the Gibbs sampler can be run to draw samples from the above described probability density functions.
 Statistical Analysis Unit—Operation
 A description has been given above of the theory underlying the statistical analysis unit21. A description will now be given with reference to FIGS. 6 to 8 of the operation of the statistical analysis unit 21 that is used in the embodiment.
 FIG. 6 is a block diagram illustrating the principal components of the statistical analysis unit21 of this embodiment. As shown, it comprises the above described Gibbs sampler 41, Simulation Smoother 43 (including the Kalman filter 431 and smoothing filter 432) and model order selector 45. It also comprises a memory 47 which receives the speech samples of the current frame to be processed, a data analysis unit 49 which processes the data generated by the Gibbs sampler 41 and the model order selector 45 and a controller 50 which controls the operation of the statistical analysis unit 21.
 As shown in FIG. 6, the memory47 includes a non volatile memory area 471 and a working memory area 472. The non volatile memory 471 is used to store the joint probability density function given in equation (19) above and the equations for the variances and mean values and the equations for the Inverse Gamma parameters given above in equations (22) to (24) and (27) to (30) for the above mentioned conditional probability density functions for use by the Gibbs sampler 41. The non volatile memory 471 also stores the Kalman filter equations given above in equation (33) and the smoothing filter equations given above in equation 34 for use by the Simulation Smoother 43.
 FIG. 7 is a schematic diagram illustrating the parameter values that are stored in the working memory area (RAM)472. As shown, the RAM includes a store 51 for storing the speech samples y_{f }(1) to y_{f }(N) output by the analogue to digital converter 17 for the current frame (f) being processed. As mentioned above, these speech samples are used in both the Gibbs sampler 41 and the Simulation Smoother 43. The RAM 472 also includes a store 53 for storing the initial estimates of the model parameters (g=0) and the M samples (g=1 to M) of each parameter drawn from the above described conditional probability density functions by the Gibbs sampler 41 for the current frame being processed. As mentioned above, in this embodiment, M is 100 since the Gibbs sampler 41 performs 150 iterations on each frame of input speech with the first fifty samples being discarded. The RAM 472 also includes a store 55 for storing W(t), d(t) and L(t) for t=1 to N which are calculated during the processing of the speech samples in the current frame of speech by the above described Kalman filter 431. The RAM 472 also includes a store 57 for storing the estimates of the raw speech samples (ŝ_{f}(t)) and the estimates of the process noise ({tilde over (e)}_{f}(t)) generated by the smoothing filter 432, as discussed above. The RAM 472 also includes a store 59 for storing the model order counts which are generated by the model order selector 45 when the model orders for the AR filter model and the channel model are updated.
 FIG. 8 is a flow diagram illustrating the control program used by the controller50, in this embodiment, to control the processing operations of the statistical analysis unit 21. As shown, in step s41, the controller 50 retrieves the next frame of speech samples to be processed from the buffer 19 and stores them in the memory store 51. The processing then proceeds to step s43 where initial estimates for the channel model, raw speech samples and the process noise and measurement noise statistics are set and stored in the store 53. These initial estimates are either set to be the values obtained during the processing of the previous frame of speech or, where there are no previous frames of speech, are set to their expected values (which may be zero). The processing then proceeds to step s45 where the Simulation Smoother 43 is activated so as to provide an estimate of the raw speech samples in the manner described above. The processing then proceeds to step s47 where one iteration of the Gibbs sampler 41 is run in order to update the channel model, speech model and the process and measurement noise statistics using the raw speech samples obtained in step s45. These updated parameter values are then stored in the memory store 53. The processing then proceeds to step s49 where the controller 50 determines whether or not to update the model orders of the AR filter model and the channel model. As mentioned above, in this embodiment, these model orders are updated every third Gibbs iteration. If the model orders are to be updated, then the processing proceeds to step s51 where the model order selector 45 is used to update the model orders of the AR filter model and the channel model in the manner described above. If at step s49 the controller 50 determines that the model orders are not to be updated, then the processing skips step s51 and the processing proceeds to step s53. At step s53, the controller 50 determines whether or not to perform another Gibbs iteration. If another iteration is to be performed, then the processing proceeds to decision block s55 where the controller 50 decides whether or not to update the estimates of the raw speech samples (s(t)). If the raw speech samples are not to be updated, then the processing returns to step s47 where the next Gibbs iteration is run.
 As mentioned above, in this embodiment, the Simulation Smoother43 is run every fourth Gibbs iteration in order to update the raw speech samples. Therefore, if the controller 50 determines, in step s55 that there has been four Gibbs iterations since the last time the speech samples were updated, then the processing returns to step s45 where the Simulation Smoother is run again to provide new estimates of the raw speech samples (s(t)). Once the controller 50 has determined that the required 150 Gibbs iterations have been performed, the controller 50 causes the processing to proceed to step s57 where the data analysis unit 49 analyses the model order counts generated by the model order selector 45 to determine the model orders for the AR filter model and the channel model which best represents the current frame of speech being processed. The processing then proceeds to step s59 where the data analysis unit 49 analyses the samples drawn from the conditional densities by the Gibbs sampler 41 to determine the AR filter coefficients (a), the channel model coefficients (h), the variances of these coefficients and the process and measurement noise variances which best represent the current frame of speech being processed. The processing then proceeds to step s61 where the controller 50 determines whether or not there is any further speech to be processed. If there is more speech to be processed, then processing returns to step S41 and the above process is repeated for the next frame of speech. Once all the speech has been processed in this way, the processing ends.
 Data Analysis unit
 A more detailed description of the data analysis unit49 will now be given with reference to FIG. 9. As mentioned above, the data analysis unit 49 initially determines, in step s57, the model orders for both the AR filter model and the channel model which best represents the current frame of speech being processed. It does this using the counts that have been generated by the model order selector 45 when it was run in step s51. These counts are stored in the store 59 of the RAM 472. In this embodiment, in determining the best model orders, the data analysis unit 49 identifies the model order having the highest count. FIG. 9a is an exemplary histogram which illustrates the distribution of counts that is generated for the model order (k) of the AR filter model. Therefore, in this example, the data analysis unit 49 would set the best model order of the AR filter model as five. The data analysis unit 49 performs a similar analysis of the counts generated for the model order (r) of the channel model to determine the best model order for the channel model.
 Once the data analysis unit49 has determined the best model orders (k and r), it then analyses the samples generated by the Gibbs sampler 41 which are stored in the store 53 of the RAM 472, in order to determine parameter values that are most representative of those samples. It does this by determining a histogram for each of the parameters from which it determines the most representative parameter value. To generate the histogram, the data analysis unit 49 determines the maximum and minimum sample value which was drawn by the Gibbs sampler and then divides the range of parameter values between this minimum and maximum value into a predetermined number of subranges or bins. The data analysis unit 49 then assigns each of the sample values into the appropriate bins and counts how many samples are allocated to each bin. It then uses these counts to calculate a weighted average of the samples (with the weighting used for each sample depending on the count for the corresponding bin), to determine the most representative parameter value (known as the minimum mean square estimate (MMSE)). FIG. 9b illustrates an example histogram which is generated for the variance (σ_{e} ^{2}) of the process noise, from which the data analysis unit 49 determines that the variance representative of the sample is 0.3149.
 In determining the AR filter coefficients (a_{i }for i=i to k), the data analysis unit 49 determines and analyses a histogram of the samples for each coefficient independently. FIG. 9c shows an exemplary histogram obtained for the third AR filter coefficient (a_{3}), from which the data analysis unit 49 determines that the coefficient representative of the samples is −0.4977.
 In this embodiment, the data analysis unit49 outputs the AR coefficients (a) and the AR filter model order (k). The AR filter coefficients (a) are output to both the speech recognition unit 25 and the speech detection unit 61, whereas the AR filter model order (k) is only output to the speech detection unit 61. These parameter values (and the remaining parameter values determined by the data analysis unit 49) are also stored in the RAM 472 for use during the processing of the next frame of speech. As mentioned above, the speech detection unit 61 compares the AR filter model order (k) and the AR filter coefficient values with appropriate threshold values, and determines that speech is present within the input signal when the AR filter model order and the AR filter coefficient values exceed these threshold values. When the speech detection unit 61 detects the presence of speech, it outputs an appropriate control signal to the speech recognition unit 25, which causes it to start processing the AR coefficients it receives from the statistical analysis unit 21. Similarly, when the speech detection unit 61 detects the end of speech, it outputs an appropriate control signal to the speech recognition unit 25 which causes it to stop processing the AR coefficients it receives from the statistical analysis unit 21.
 As those skilled in the art will appreciate, a technique has been described above which employs a statistical analysis to determine AR coefficients and AR model order which are used by a speech detection unit to detect the presence of speech within an input signal. The technique is more robust and accurate than prior art techniques which compare the energy of the input signal with some threshold value. Further, the statistical analysis techniques described above are also more robust and accurate than prior art techniques which employ maximum likelihood estimators to determine these coefficients. This is because the statistical analysis of each frame uses knowledge obtained from the processing of the previous frame. In addition, with the analysis performed above, the model order for the AR filter model is not assumed to be constant and can vary from frame to frame. In this way, the optimum number of AR filter coefficients can be used to represent the speech within each frame. As a result, the AR filter coefficients output by the statistical analysis unit21 will more accurately represent the corresponding input speech. Further still, since the underlying process model that is used separates the speech source from the channel, the AR filter coefficients that are determined will be more representative of the actual speech and will be less likely to include distortive effects of the channel. Further still, since variance information is available for each of the parameters, this provides an indication of the confidence of each of the parameter estimates. This is in contrast to maximum likelihood and least squares approaches, such as linear prediction analysis, where point estimates of the parameter values are determined.
 Alternative Embodiments
 In the above embodiment, the statistical analysis unit was used as a preprocessor for a speech recognition system in order to generate AR coefficients representative of the input speech. The statistical analysis unit was also used to determine the AR filter model order which was used together with the AR coefficients by a speech detection unit to detect the presence of speech within the input signal. As those skilled in the art will appreciate, since both the model order and the values of the AR coefficients will vary depending on whether or not there is speech present within the input signal, the speech detection unit can detect the presence of speech using only the AR filter model order or only the AR coefficient values. However, in the preferred embodiment, both the model order and the AR coefficient values are used, since this allows a more accurate speech detection to be performed. For example, for speech sounds where there is a weak correlation between adjacent speech samples (such as fricative sounds), if only the AR coefficient values are used, then the presence of such fricative sounds may be missed since all the AR filter coefficients may have small values below the corresponding threshold values. Nonetheless, with such fricative sounds, the model order is likely to exceed its threshold value, in which case the speech detection unit can still reliably detect the speech.
 In the above embodiments, a speech detection system was described in use together with a speech recognition system. As those skilled in the art will appreciate, the speech detection system described above may be used in any speech processing system to control the initiation and termination of the speech processing operation. For example, it can be used in a speaker verification system or in a speech transmission system in order to control the verification process and the transmission process respectively.
 In the above embodiment, the statistical analysis unit was used effectively as a “preprocessor” for both the speech recognition unit and the speech detection unit. As those skilled in the art will appreciate, in an alternative embodiment, a separate preprocessor may be provided as the front end to the speech recognition unit. In this case, the statistical analysis unit would only be used to provide information to the speech detection unit. However, such separate parameterisation of the input speech for the speech recognition unit is not preferred because of the additional processing overhead involved.
 In the above embodiment, a speech recognition system was used which used the AR filter coefficients output by the statistical analysis unit. In embodiments where the speech recognition unit does not use AR filter coefficients but uses other spectral based coefficients (such as cepstral coefficients), an appropriate coefficient converter may be used to convert the AR coefficients into the appropriate coefficients for use by the speech recognition unit.
 In the above embodiments, Gaussian and Inverse Gamma distributions were used to model the various prior probability density functions of equation (19). As those skilled in the art of statistical analysis will appreciate, the reason these distributions were chosen is that they are conjugate to one another. This means that each of the conditional probability density functions which are used in the Gibbs sampler will also either be Gaussian or Inverse Gamma. This therefore simplifies the task of drawing samples from the conditional probability densities. However, this is not essential. The noise probability density functions could be modelled by Laplacian or studentt distributions rather than Gaussian distributions. Similarly, the probability density functions for the variances may be modelled by a distribution other than the Inverse Gamma distribution. For example, they can be modelled by a Rayleigh distribution or some other distribution which is always positive. However, the use of probability density functions that are not conjugate will result in increased complexity in drawing samples from the conditional densities by the Gibbs sampler.
 Additionally, whilst the Gibbs sampler was used to draw samples from the probability density function given in equation (19), other sampling algorithms could be used. For example the MetropolisHastings algorithm (which is reviewed together with other techniques in a paper entitled “Probabilistic inference using Markov chain Monte Carlo methods” by R. Neal, Technical Report CRGTR931, Department of Computer Science, University of Toronto, 1993) may be used to sample this probability density.
 In the above embodiment, a Simulation Smoother was used to generate estimates for the raw speech samples. This Simulation Smoother included a Kalman filter stage and a smoothing filter stage in order to generate the estimates of the raw speech samples. In an alternative embodiment, the smoothing filter stage may be omitted, since the Kalman filter stage generates estimates of the raw speech (see equation (33)). However, these raw speech samples were ignored, since the speech samples generated by the smoothing filter are considered to be more accurate and robust. This is because the Kalman filter essentially generates a point estimate of the speech samples from the joint probability density function p(s(n)a,k,σ_{e} ^{2}), whereas the Simulation Smoother draws a sample from this probability density function.
 In the above embodiment, a Simulation Smoother was used in order to generate estimates of the raw speech samples. It is possible to avoid having to estimate the raw speech samples by treating them as “nuisance parameters” and integrating them out of equation (19). However, this is not preferred, since the resulting integral will have a much more complex form than the Gaussian and Inverse Gamma mixture defined in equation (19). This in turn will result in more complex conditional probabilities corresponding to equations (20) to (30). In a similar way, the other nuisance parameters (such as the coefficient variances or any of the Inverse Gamma, alpha and beta parameters) may be integrated out as well. However, again this is not preferred, since it increases the complexity of the density function to be sampled using the Gibbs sampler. The technique of integrating out nuisance parameters is well known in the field of statistical analysis and will not be described further here.
 In the above embodiment, the data analysis unit analysed the samples drawn by the Gibbs sampler by determining a histogram for each of the model parameters and then determining the value of the model parameter using a weighted average of the samples drawn by the Gibbs sampler with the weighting being dependent upon the number of samples in the corresponding bin. In an alterative embodiment, the value of the model parameter may be determined from the histogram as being the value of the model parameter having the highest count. Alternatively, a predetermined curve (such as a bell curve) could be fitted to the histogram in order to identify the maximum which best fits the histogram.
 In the above embodiment, the statistical analysis unit modelled the underlying speech production process with a separate speech source model (AR filter) and a channel model. Whilst this is the preferred model structure, the underlying speech production process may be modelled without the channel model. In this case, there is no need to estimate the values of the raw speech samples using a Kalman filter or the like, although this can still be done. However, such a model of the underlying speech production process is not preferred, since the speech model will inevitably represent aspects of the channel as well as the speech. Further, although the statistical analysis unit described above ran a model order selection routine in order to allow the model orders of the AR filter model and the channel model to vary, this is not essential.
 In the above embodiments, the speech that was processed was received from a user via a microphone. As those skilled in the art will appreciate, the speech may be received from a telephone line or may have been stored on a recording medium. In this case, the channel model will compensate for this so that the AR filter coefficients representative of the actual speech that has been spoken should not be significantly affected.
 In the above embodiments, the speech generation process was modelled as an autoregressive (AR) process and the channel was modelled as a moving average (MA) process. As those skilled in the art will appreciate, other signal models may be used. However, these models are preferred because it has been found that they suitably represent the speech source and the channel they are intended to model.
 In the above embodiments, during the running of the model order selection routine, a new model order was proposed by drawing a random variable from a predetermined Laplacian distribution function. As those skilled in the art will appreciate, other techniques may be used. For example the new model order may be proposed in a deterministic way (ie under predetermined rules), provided that the model order space is sufficiently sampled.
Claims (42)
1. An apparatus for detecting the presence of speech within an input audio signal, comprising:
a memory for storing a predetermined function which gives, for a given set of audio signal values, a probability density for parameters of a predetermined speech model which is assumed to have generated the set of audio signal values, the probability density defining, for a given set of model parameter values, the probability that the predetermined speech model has those parameter values, given that the speech model is assumed to have generated the set of audio signal values;
means for receiving a set of audio signal values representative of an input audio signal;
means for applying the set of received audio signal values to said stored function to give the probability density for said model parameters for the set of received audio signal values;
means for processing said function with said set of received audio signal values applied to obtain values of said parameters that are representative of said input audio signal; and
means for detecting the presence of speech using said obtained parameter values.
2. An apparatus according to claim 1 , wherein said processing means comprises means for drawing samples from said probability density function and means for determining said values of said parameters that are representative of the speech from said drawn samples.
3. An apparatus according to claim 2 , wherein said drawing means is operable to draw samples iteratively from said probability density function.
4. An apparatus according to claim 2 , wherein said processing means comprises a Gibbs sampler.
5. An apparatus according to claim 2 , wherein said processing means is operable to determine a histogram of said drawn samples and wherein said values of said parameters are determined from said histogram.
6. An apparatus according to claim 5 , wherein said processing means is operable to determine said values of said parameters using a weighted sum of said drawn samples, and wherein the weighting is determined from said histogram.
7. An apparatus according to claim 1 , wherein said receiving means is operable to receive a sequence of sets of signal values representative of an input audio signal and wherein said applying means, processing means and detecting means are operable to perform their function with respect to each set of received audio signal values in order to determine whether or not each set of received signal values corresponds to speech.
8. An apparatus according to claim 7 , wherein said processing means is operable to use the values of parameters obtained during the processing of a preceding set of signal values as initial estimates for the values of the corresponding parameters of a current set of signal values being processed.
9. An apparatus according to claim 7 , wherein said sets of signal values in said sequence are nonoverlapping.
10. An apparatus according to claim 1 , wherein said speech model comprises an autoregressive process model, wherein said parameters include autoregressive model coefficients and wherein said detecting means is operable to compare the value of at least one of said autoregressive model coefficients with a prestored threshold value.
11. An apparatus according to claim 10 , wherein said detecting means is operable to compare the values of a plurality of said autoregressive model coefficients with a corresponding plurality of predetermined values.
12. An apparatus according to claim 1 , wherein said processing means is operable to vary the number of parameters used to represent the speech within the audio signal values and wherein said detecting means is operable to compare the number of parameters used to represent speech within the audio signal values with a predetermined threshold value, in order to detect the presence of speech within said audio signal.
13. An apparatus according to claim 1 , wherein received speech signal values are representative of a speech signal generated by a speech source as distorted by a transmission channel between the speech source and the receiving means; wherein said predetermined function includes a first part having first parameters which models said source and a second part having second parameters which models said channel; wherein said processing means is operable to obtain parameter values of at least said first parameters; and wherein said detecting means is operable to detect the presence of speech within said input audio signal from the obtained values of said first parameters.
14. An apparatus according to claim 13 , wherein said function is in terms of a set of raw speech signal values representative of speech generated by said source before being distorted by said transmission channel, wherein the apparatus further comprises second processing means for processing the received set of signal values with initial estimates of said first and second parameters, to generate an estimate of the raw speech signal values corresponding to the received set of audio signal values and wherein said applying means is operable to apply said estimated set of raw speech signal values to said function in addition to said set of received signal values.
15. An apparatus according to claim 14 , wherein said second processing means comprises a simulation smoother.
16. An apparatus according to claim 14 , wherein said second processing means comprises a Kalman filter.
17. An apparatus according to claim 13 , wherein said second part is a moving average model and wherein said second parameters comprise moving average model coefficients.
18. An apparatus according to claim 1 , further comprising means for evaluating said probability density function for the set of received audio signal values using one or more derived samples of parameter values for different numbers of parameter values, to determine respective probabilities that the predetermined speech model has those parameter values and wherein said processing means is operable to process at least some of said derived samples of parameter values and said evaluated probabilities to determine said values of said parameters that are representative of the audio speech signal.
19. A speech recognition system comprising:
means for receiving an input signal representative of an audio signal;
an apparatus according to claim 1 for detecting the presence of speech within the input signal; and
recognition processing means for performing a recognition processing of the portion of the input signal corresponding to speech.
20. A speech processing system comprising:
means for receiving an input audio signal;
an apparatus according to claim 1 for detecting the presence of speech within the input audio signal; and
means for processing the portion of the input audio signal corresponding to speech.
21. A method of detecting the presence of speech within an input audio signal, comprising:
storing a predetermined function which gives, for a given set of audio signal values, a probability density for parameters of a predetermined speech model which is assumed to have generated the set of audio signal values, the probability density defining, for a given set of model parameter values, the probability that the predetermined speech model has those parameter values, given that the speech model is assumed to have generated the set of audio signal values;
receiving a set of audio signal values representative of an input audio signal at a receiver;
applying the set of received audio signal values to said stored function to give the probability density for said model parameters for the set of received audio signal values;
processing said function with said set of received audio signal values applied to obtain values of said parameters that are representative of said input audio signal; and
detecting the presence of speech using said obtained parameter values.
22. A method according to claim 21 , wherein said processing step comprises the steps of drawing samples from said probability density function and determining said values of said parameters that are representative of the speech from said drawn samples.
23. A method according to claim 22 , wherein said drawing step draw samples iteratively from said probability density function.
24. A method according to claim 22 , wherein said processing step uses a Gibbs sampler.
25. A method according to claim 22 , wherein said processing step determines a histogram of said drawn samples and wherein said values of said parameters are determined from said histogram.
26. A method according to claim 25 , wherein said processing step determines said values of said parameters using a weighted sum of said drawn samples, and wherein the weighting is determined from said histogram.
27. A method according to claim 21 , wherein said receiving step receives a sequence of sets of signal values representative of an input audio signal and wherein said applying step, processing step and detecting step are performed on each set of received audio signal values in order to determine whether or not each set of received signal values corresponds to speech.
28. A method according to claim 27 , wherein said processing step uses the values of parameters obtained during the processing of a preceding set of signal values as initial estimates for the values of the corresponding parameters of a current set of signal values being processed.
29. A method according to claim 27 , wherein said sets of signal values in said sequence are nonoverlapping.
30. A method according to claim 21 , wherein said speech model comprises an autoregressive process model, wherein said parameters include autoregressive model coefficients and wherein said detecting step compares the value of at least one of said autoregressive model coefficients with a prestored threshold value.
31. A method according to claim 30 , wherein said detecting step compares the values of a plurality of said autoregressive model coefficients with a corresponding plurality of predetermined values.
32. A method according to claim 21 , wherein said processing step varies the number of parameters used to represent the speech within the audio signal values and wherein said detecting step compares the number of parameters used to represent speech within the audio signal values with a predetermined threshold value, in order to detect the presence of speech within said audio signal.
33. A method according to claim 21 , wherein received speech signal values are representative of a speech signal generated by a speech source as distorted by a transmission channel between the speech source and the receiver; wherein said predetermined function includes a first part having first parameters which models said source and a second part having second parameters which models said channel; wherein said processing step obtains parameter values of at least said first parameters; and wherein said detecting step detects the presence of speech within said input audio signal from the obtained values of said first parameters.
34. A method according to claim 33 , wherein said function is in terms of a set of raw speech signal values representative of speech generated by said source before being distorted by said transmission channel, wherein the apparatus further comprises a second processing step of processing the received set of signal values with initial estimates of said first and second parameters, to generate an estimate of the raw speech signal values corresponding to the received set of audio signal values and wherein said applying step applies said estimated set of raw speech signal values to said function in addition to said set of received signal values.
35. A method according to claim 34 , wherein said second processing step uses a simulation smoother.
36. A method according to claim 34 , wherein said second processing step uses a Kalman filter.
37. A method according to claim 33 , wherein said second part is a moving average model and wherein said second parameters comprise moving average model coefficients.
38. A method according to claim 21 , further comprising the step of evaluating said probability density function for the set of received audio signal values using one or more derived samples of parameter values for different numbers of parameter values, to determine respective probabilities that the predetermined speech model has those parameter values and wherein said processing step processes at least some of said derived samples of parameter values and said evaluated probabilities to determine said values of said parameters that are representative of the audio speech signal.
39. A speech recognition method comprising the steps of:
receiving an input signal representative of an audio signal;
a method according to claim 21 for detecting the presence of speech within the input signal; and
performing a recognition processing of the portion of the input signal corresponding to speech.
40. A speech processing method comprising the steps of:
receiving an input audio signal;
a method according to claim 21 for detecting the presence of speech within the input audio signal; and
processing the portion of the input audio signal corresponding to speech.
41. A computer readable medium storing computer executable process steps to cause a programmable computer apparatus to perform the method of claim 21 .
42. Processor implementable process steps for causing a programmable computing device to perform the method according to claim 21.
Priority Applications (4)
Application Number  Priority Date  Filing Date  Title 

GB0013541A GB0013541D0 (en)  20000602  20000602  Speech processing system 
GB0013541.8  20000602  
GB0020309A GB2367466A (en)  20000602  20000817  Speech processing system 
GB0020309.1  20000817 
Publications (2)
Publication Number  Publication Date 

US20020038211A1 true US20020038211A1 (en)  20020328 
US7072833B2 US7072833B2 (en)  20060704 
Family
ID=26244421
Family Applications (1)
Application Number  Title  Priority Date  Filing Date 

US09/866,595 Expired  Fee Related US7072833B2 (en)  20000602  20010530  Speech processing system 
Country Status (1)
Country  Link 

US (1)  US7072833B2 (en) 
Cited By (9)
Publication number  Priority date  Publication date  Assignee  Title 

WO2003028008A1 (en) *  20010925  20030403  Intel Corporation  Probabilistic networks for detecting signal content 
US20030171900A1 (en) *  20020311  20030911  The Charles Stark Draper Laboratory, Inc.  NonGaussian detection 
WO2003100372A1 (en) *  20020529  20031204  Nokia Corporation  Method in a digital network system for controlling the transmission of terminal equipment 
US20050056140A1 (en) *  20030602  20050317  NamIk Cho  Apparatus and method for separating music and voice using independent component analysis algorithm for twodimensional forward network 
US20070078652A1 (en) *  20051004  20070405  SenChia Chang  System and method for detecting the recognizability of input speech signals 
US7257533B2 (en)  19990305  20070814  Canon Kabushiki Kaisha  Database searching and retrieval using phoneme and word lattice 
US20120245927A1 (en) *  20110321  20120927  On Semiconductor Trading Ltd.  System and method for monaural audio processing based preserving speech information 
US9258653B2 (en)  20120321  20160209  Semiconductor Components Industries, Llc  Method and system for parameter based adaptation of clock speeds to listening devices and audio applications 
US9916846B2 (en) *  20150210  20180313  Nice Ltd.  Method and system for speech detection 
Families Citing this family (34)
Publication number  Priority date  Publication date  Assignee  Title 

DE602004006429D1 (en) *  20031008  20070621  Philips Intellectual Property  Adaptation of an environment mismatch for speech recognition systems 
WO2006029306A1 (en) *  20040909  20060316  Interoperability Technologies Group Llc  Method and system for communication system interoperability 
JP2007249873A (en) *  20060317  20070927  Toshiba Corp  Analysis model creating method, analysis model creating program and analysis model creating device 
US8775168B2 (en) *  20060810  20140708  Stmicroelectronics Asia Pacific Pte, Ltd.  Yule walker based lowcomplexity voice activity detector in noise suppression systems 
KR100919223B1 (en) *  20070919  20090928  한국전자통신연구원  The method and apparatus for speech recognition using uncertainty information in noise environment 
US8797377B2 (en)  20080214  20140805  Cisco Technology, Inc.  Method and system for videoconference configuration 
US8694658B2 (en)  20080919  20140408  Cisco Technology, Inc.  System and method for enabling communication sessions in a network environment 
US8659637B2 (en)  20090309  20140225  Cisco Technology, Inc.  System and method for providing three dimensional video conferencing in a network environment 
US8244523B1 (en) *  20090408  20120814  Rockwell Collins, Inc.  Systems and methods for noise reduction 
US8659639B2 (en)  20090529  20140225  Cisco Technology, Inc.  System and method for extending communications between participants in a conferencing environment 
FR2948484B1 (en) *  20090723  20110729  Parrot  Filtering Method of nonstationary lateral noise for a multimicrophone audio device, such as a telephone device "hands free" for motor vehicle 
US9082297B2 (en)  20090811  20150714  Cisco Technology, Inc.  System and method for verifying parameters in an audiovisual environment 
US9225916B2 (en)  20100318  20151229  Cisco Technology, Inc.  System and method for enhancing video images in a conferencing environment 
US9313452B2 (en)  20100517  20160412  Cisco Technology, Inc.  System and method for providing retracting optics in a video conferencing environment 
US8725506B2 (en) *  20100630  20140513  Intel Corporation  Speech audio processing 
US8896655B2 (en)  20100831  20141125  Cisco Technology, Inc.  System and method for providing depth adaptive video conferencing 
US8599934B2 (en)  20100908  20131203  Cisco Technology, Inc.  System and method for skip coding during video conferencing in a network environment 
US8599865B2 (en)  20101026  20131203  Cisco Technology, Inc.  System and method for provisioning flows in a mobile network environment 
US8699457B2 (en)  20101103  20140415  Cisco Technology, Inc.  System and method for managing flows in a mobile network environment 
US9338394B2 (en)  20101115  20160510  Cisco Technology, Inc.  System and method for providing enhanced audio in a video environment 
US8902244B2 (en)  20101115  20141202  Cisco Technology, Inc.  System and method for providing enhanced graphics in a video environment 
US9143725B2 (en)  20101115  20150922  Cisco Technology, Inc.  System and method for providing enhanced graphics in a video environment 
US8730297B2 (en)  20101115  20140520  Cisco Technology, Inc.  System and method for providing camera functions in a video environment 
US8723914B2 (en)  20101119  20140513  Cisco Technology, Inc.  System and method for providing enhanced video processing in a network environment 
US9111138B2 (en)  20101130  20150818  Cisco Technology, Inc.  System and method for gesture interface control 
US8692862B2 (en) *  20110228  20140408  Cisco Technology, Inc.  System and method for selection of video data in a video conference environment 
US8670019B2 (en)  20110428  20140311  Cisco Technology, Inc.  System and method for providing enhanced eye gaze in a video conferencing environment 
US8786631B1 (en)  20110430  20140722  Cisco Technology, Inc.  System and method for transferring transparency information in a video environment 
US8934026B2 (en)  20110512  20150113  Cisco Technology, Inc.  System and method for video coding in a dynamic environment 
US8947493B2 (en)  20111116  20150203  Cisco Technology, Inc.  System and method for alerting a participant in a video conference 
US8682087B2 (en)  20111219  20140325  Cisco Technology, Inc.  System and method for depthguided image filtering in a video conference environment 
US9681154B2 (en)  20121206  20170613  Patent Capital Group  System and method for depthguided filtering in a video conference environment 
US9843621B2 (en)  20130517  20171212  Cisco Technology, Inc.  Calendaring activities based on communication processing 
US9646630B2 (en) *  20130830  20170509  Intel Corporation  Voice recognition via wide range adaptive beam forming and multichannel audio data 
Citations (36)
Publication number  Priority date  Publication date  Assignee  Title 

US4386237A (en) *  19801222  19830531  Intelsat  NIC Processor using variable precision block quantization 
US4811399A (en) *  19841231  19890307  Itt Defense Communications, A Division Of Itt Corporation  Apparatus and method for automatic speech recognition 
US4860360A (en) *  19870406  19890822  Gte Laboratories Incorporated  Method of evaluating speech 
US4905286A (en) *  19860404  19900227  National Research Development Corporation  Noise compensation in speech recognition 
US5012518A (en) *  19890726  19910430  Itt Corporation  Lowbitrate speech coder using LPC data reduction processing 
US5315538A (en) *  19920323  19940524  Hughes Aircraft Company  Signal processing incorporating signal, tracking, estimation, and removal processes using a maximum a posteriori algorithm, and sequential signal detection 
US5325397A (en) *  19891207  19940628  The Commonwealth Of Australia  Error rate monitor 
US5432859A (en) *  19930223  19950711  Novatel Communications Ltd.  Noisereduction system 
US5432884A (en) *  19920323  19950711  Nokia Mobile Phones Ltd.  Method and apparatus for decoding LPCencoded speech using a median filter modification of LPC filter factors to compensate for transmission errors 
US5507037A (en) *  19920522  19960409  Advanced Micro Devices, Inc.  Apparatus and method for discriminating signal noise from saturated signals and from high amplitude signals 
US5611019A (en) *  19930519  19970311  Matsushita Electric Industrial Co., Ltd.  Method and an apparatus for speech detection for determining whether an input signal is speech or nonspeech 
US5742694A (en) *  19960712  19980421  Eatwell; Graham P.  Noise reduction filter 
US5784297A (en) *  19970113  19980721  The United States Of America As Represented By The Secretary Of The Navy  Model identification and characterization of error structures in signal processing 
US5799276A (en) *  19951107  19980825  Accent Incorporated  Knowledgebased speech recognition system and methods having frame length computed based upon estimated pitch period of vocalic intervals 
US5857169A (en) *  19950828  19990105  U.S. Philips Corporation  Method and system for pattern recognition based on tree organized probability densities 
US5884255A (en) *  19960716  19990316  Coherent Communications Systems Corp.  Speech detection system employing multiple determinants 
US5884269A (en) *  19950417  19990316  Merging Technologies  Lossless compression/decompression of digital audio data 
US5963901A (en) *  19951212  19991005  Nokia Mobile Phones Ltd.  Method and device for voice activity detection and a communication device 
US6018317A (en) *  19950602  20000125  Trw Inc.  Cochannel signal processing system 
US6044336A (en) *  19980713  20000328  Multispec Corporation  Method and apparatus for situationally adaptive processing in echolocation systems operating in nonGaussian environments 
US6134518A (en) *  19970304  20001017  International Business Machines Corporation  Digital audio signal coding using a CELP coder and a transform coder 
US6157909A (en) *  19970722  20001205  France Telecom  Process and device for blind equalization of the effects of a transmission channel on a digital speech signal 
US6215831B1 (en) *  19950331  20010410  Motorola, Inc.  Decoder circuit using bitwise probability and method therefor 
US6226613B1 (en) *  19981030  20010501  At&T Corporation  Decoding input symbols to input/output hidden markoff models 
US6266633B1 (en) *  19981222  20010724  Itt Manufacturing Enterprises  Noise suppression and channel equalization preprocessor for speech and speaker recognizers: method and apparatus 
US6324502B1 (en) *  19960201  20011127  Telefonaktiebolaget Lm Ericsson (Publ)  Noisy speech autoregression parameter enhancement method and apparatus 
US6374221B1 (en) *  19990622  20020416  Lucent Technologies Inc.  Automatic retraining of a speech recognizer while using reliable transcripts 
US6377919B1 (en) *  19960206  20020423  The Regents Of The University Of California  System and method for characterizing voiced excitations of speech and acoustic signals, removing acoustic noise from speech, and synthesizing speech 
US6438513B1 (en) *  19970704  20020820  Sextant Avionique  Process for searching for a noise model in noisy audio signals 
US6490554B2 (en) *  19991124  20021203  Fujitsu Limited  Speech detecting device and speech detecting method 
US6516090B1 (en) *  19980507  20030204  Canon Kabushiki Kaisha  Automated video interpretation system 
US6546515B1 (en) *  19990618  20030408  Alcatel  Method of encoding a signal 
US6549854B1 (en) *  19990212  20030415  Schlumberger Technology Corporation  Uncertainty constrained subsurface modeling 
US6708146B1 (en) *  19970103  20040316  Telecommunications Research Laboratories  Voiceband signal classifier 
US6760699B1 (en) *  20000424  20040706  Lucent Technologies Inc.  Soft feature decoding in a distributed automatic speech recognition system for use over wireless channels 
US6910010B2 (en) *  19971031  20050621  Sony Corporation  Feature extraction apparatus and method and pattern recognition apparatus and method 
Family Cites Families (24)
Publication number  Priority date  Publication date  Assignee  Title 

GB2137025A (en)  19830324  19840926  Ega Ltd  Outlet adaptor for cable trunking 
JPH0783315B2 (en)  19880926  19950906  富士通株式会社  Variable rate speech signal coding scheme 
EP1162601A3 (en)  19910611  20020703  QUALCOMM Incorporated  Variable rate vocoder 
JPH05346915A (en)  19920130  19931227  Ricoh Co Ltd  Learning machine and neural network, and device and method for data analysis 
US5590242A (en)  19940324  19961231  Lucent Technologies Inc.  Signal bias removal for robust telephone speech recognition 
US6104993A (en)  19970226  20000815  Motorola, Inc.  Apparatus and method for rate determination in a communication system 
GB2332055B (en)  19971204  20000202  At & T Lab Cambridge Ltd  Detection system for determining positional information about objects 
GB2332054B (en)  19971204  20000202  At & T Lab Cambridge Ltd  Detection system for determining positional information about objects 
GB2332052B (en)  19971204  20020116  At & T Lab Cambridge Ltd  Detection system for determining orientation information about objects 
GB2332053B (en)  19971204  20020109  At & T Lab Cambridge Ltd  Detection system for determinning positional and other information about objects 
GB2336711B (en)  19980420  20020109  Olivetti Telemedia Spa  Cables 
GB9812635D0 (en)  19980611  19980812  Olivetti Telemedia Spa  Location system 
US6240386B1 (en)  19980824  20010529  Conexant Systems, Inc.  Speech codec employing noise classification for noise compensation 
JP3061039B2 (en)  19981020  20000710  日本電気株式会社  Silence compression code decoding method and apparatus 
US6691084B2 (en)  19981221  20040210  Qualcomm Incorporated  Multiple mode variable rate speech coding 
GB9901300D0 (en)  19990122  19990310  Olivetti Research Ltd  A method of increasing the capacity and addressing rate of an Ultrasonic location system 
GB2361339B (en)  19990127  20030806  Kent Ridge Digital Labs  Method and apparatus for voice annotation and retrieval of multimedia data 
CN1343337B (en)  19990305  20130320  佳能株式会社  Method and device for producing annotation data including phonemes data and decoded word 
GB2349717A (en)  19990504  20001108  At & T Lab Cambridge Ltd  Low latency network 
AU5697800A (en)  19990706  20010122  At & T Laboratories Cambridge Limited  A thin multimedia communication device and method 
KR100609128B1 (en)  19990712  20060804  에스케이 텔레콤주식회사  Apparatus and method for measuring quality of reverse link in CDMA system 
GB2360670B (en)  20000322  20040204  At & T Lab Cambridge Ltd  Power management system 
US7035790B2 (en)  20000602  20060425  Canon Kabushiki Kaisha  Speech processing system 
GB2363557A (en)  20000616  20011219  At & T Lab Cambridge Ltd  Method of extracting a signal from a contaminated signal 

2001
 20010530 US US09/866,595 patent/US7072833B2/en not_active Expired  Fee Related
Patent Citations (36)
Publication number  Priority date  Publication date  Assignee  Title 

US4386237A (en) *  19801222  19830531  Intelsat  NIC Processor using variable precision block quantization 
US4811399A (en) *  19841231  19890307  Itt Defense Communications, A Division Of Itt Corporation  Apparatus and method for automatic speech recognition 
US4905286A (en) *  19860404  19900227  National Research Development Corporation  Noise compensation in speech recognition 
US4860360A (en) *  19870406  19890822  Gte Laboratories Incorporated  Method of evaluating speech 
US5012518A (en) *  19890726  19910430  Itt Corporation  Lowbitrate speech coder using LPC data reduction processing 
US5325397A (en) *  19891207  19940628  The Commonwealth Of Australia  Error rate monitor 
US5315538A (en) *  19920323  19940524  Hughes Aircraft Company  Signal processing incorporating signal, tracking, estimation, and removal processes using a maximum a posteriori algorithm, and sequential signal detection 
US5432884A (en) *  19920323  19950711  Nokia Mobile Phones Ltd.  Method and apparatus for decoding LPCencoded speech using a median filter modification of LPC filter factors to compensate for transmission errors 
US5507037A (en) *  19920522  19960409  Advanced Micro Devices, Inc.  Apparatus and method for discriminating signal noise from saturated signals and from high amplitude signals 
US5432859A (en) *  19930223  19950711  Novatel Communications Ltd.  Noisereduction system 
US5611019A (en) *  19930519  19970311  Matsushita Electric Industrial Co., Ltd.  Method and an apparatus for speech detection for determining whether an input signal is speech or nonspeech 
US6215831B1 (en) *  19950331  20010410  Motorola, Inc.  Decoder circuit using bitwise probability and method therefor 
US5884269A (en) *  19950417  19990316  Merging Technologies  Lossless compression/decompression of digital audio data 
US6018317A (en) *  19950602  20000125  Trw Inc.  Cochannel signal processing system 
US5857169A (en) *  19950828  19990105  U.S. Philips Corporation  Method and system for pattern recognition based on tree organized probability densities 
US5799276A (en) *  19951107  19980825  Accent Incorporated  Knowledgebased speech recognition system and methods having frame length computed based upon estimated pitch period of vocalic intervals 
US5963901A (en) *  19951212  19991005  Nokia Mobile Phones Ltd.  Method and device for voice activity detection and a communication device 
US6324502B1 (en) *  19960201  20011127  Telefonaktiebolaget Lm Ericsson (Publ)  Noisy speech autoregression parameter enhancement method and apparatus 
US6377919B1 (en) *  19960206  20020423  The Regents Of The University Of California  System and method for characterizing voiced excitations of speech and acoustic signals, removing acoustic noise from speech, and synthesizing speech 
US5742694A (en) *  19960712  19980421  Eatwell; Graham P.  Noise reduction filter 
US5884255A (en) *  19960716  19990316  Coherent Communications Systems Corp.  Speech detection system employing multiple determinants 
US6708146B1 (en) *  19970103  20040316  Telecommunications Research Laboratories  Voiceband signal classifier 
US5784297A (en) *  19970113  19980721  The United States Of America As Represented By The Secretary Of The Navy  Model identification and characterization of error structures in signal processing 
US6134518A (en) *  19970304  20001017  International Business Machines Corporation  Digital audio signal coding using a CELP coder and a transform coder 
US6438513B1 (en) *  19970704  20020820  Sextant Avionique  Process for searching for a noise model in noisy audio signals 
US6157909A (en) *  19970722  20001205  France Telecom  Process and device for blind equalization of the effects of a transmission channel on a digital speech signal 
US6910010B2 (en) *  19971031  20050621  Sony Corporation  Feature extraction apparatus and method and pattern recognition apparatus and method 
US6516090B1 (en) *  19980507  20030204  Canon Kabushiki Kaisha  Automated video interpretation system 
US6044336A (en) *  19980713  20000328  Multispec Corporation  Method and apparatus for situationally adaptive processing in echolocation systems operating in nonGaussian environments 
US6226613B1 (en) *  19981030  20010501  At&T Corporation  Decoding input symbols to input/output hidden markoff models 
US6266633B1 (en) *  19981222  20010724  Itt Manufacturing Enterprises  Noise suppression and channel equalization preprocessor for speech and speaker recognizers: method and apparatus 
US6549854B1 (en) *  19990212  20030415  Schlumberger Technology Corporation  Uncertainty constrained subsurface modeling 
US6546515B1 (en) *  19990618  20030408  Alcatel  Method of encoding a signal 
US6374221B1 (en) *  19990622  20020416  Lucent Technologies Inc.  Automatic retraining of a speech recognizer while using reliable transcripts 
US6490554B2 (en) *  19991124  20021203  Fujitsu Limited  Speech detecting device and speech detecting method 
US6760699B1 (en) *  20000424  20040706  Lucent Technologies Inc.  Soft feature decoding in a distributed automatic speech recognition system for use over wireless channels 
Cited By (13)
Publication number  Priority date  Publication date  Assignee  Title 

US7257533B2 (en)  19990305  20070814  Canon Kabushiki Kaisha  Database searching and retrieval using phoneme and word lattice 
US7136813B2 (en)  20010925  20061114  Intel Corporation  Probabalistic networks for detecting signal content 
WO2003028008A1 (en) *  20010925  20030403  Intel Corporation  Probabilistic networks for detecting signal content 
US20030171900A1 (en) *  20020311  20030911  The Charles Stark Draper Laboratory, Inc.  NonGaussian detection 
US20050203998A1 (en) *  20020529  20050915  Kimmo Kinnunen  Method in a digital network system for controlling the transmission of terminal equipment 
WO2003100372A1 (en) *  20020529  20031204  Nokia Corporation  Method in a digital network system for controlling the transmission of terminal equipment 
US20050056140A1 (en) *  20030602  20050317  NamIk Cho  Apparatus and method for separating music and voice using independent component analysis algorithm for twodimensional forward network 
US7122732B2 (en) *  20030602  20061017  Samsung Electronics Co., Ltd.  Apparatus and method for separating music and voice using independent component analysis algorithm for twodimensional forward network 
US20070078652A1 (en) *  20051004  20070405  SenChia Chang  System and method for detecting the recognizability of input speech signals 
US7933771B2 (en) *  20051004  20110426  Industrial Technology Research Institute  System and method for detecting the recognizability of input speech signals 
US20120245927A1 (en) *  20110321  20120927  On Semiconductor Trading Ltd.  System and method for monaural audio processing based preserving speech information 
US9258653B2 (en)  20120321  20160209  Semiconductor Components Industries, Llc  Method and system for parameter based adaptation of clock speeds to listening devices and audio applications 
US9916846B2 (en) *  20150210  20180313  Nice Ltd.  Method and system for speech detection 
Also Published As
Publication number  Publication date 

US7072833B2 (en)  20060704 
Similar Documents
Publication  Publication Date  Title 

Kim et al.  Powernormalized cepstral coefficients (PNCC) for robust speech recognition  
US7266494B2 (en)  Method and apparatus for identifying noise environments from noisy signals  
US9613631B2 (en)  Noise suppression system, method and program  
Yegnanarayana et al.  Enhancement of reverberant speech using LP residual signal  
EP2431972B1 (en)  Method and apparatus for multisensory speech enhancement  
US4630304A (en)  Automatic background noise estimator for a noise suppression system  
Martin  Noise power spectral density estimation based on optimal smoothing and minimum statistics  
Rezayee et al.  An adaptive KLT approach for speech enhancement  
EP0694906B1 (en)  Method and system for speech recognition  
US5924065A (en)  Environmently compensated speech processing  
US7117149B1 (en)  Sound source classification  
US6691091B1 (en)  Method for additive and convolutional noise adaptation in automatic speech recognition using transformed matrices  
JP4861645B2 (en)  Speech noise suppressor, speech noise suppression method, and a noise suppression method in a speech signal  
Hilger et al.  Quantile based histogram equalization for noise robust large vocabulary speech recognition  
US20030206640A1 (en)  Microphone array signal enhancement  
US5727072A (en)  Use of noise segmentation for noise cancellation  
EP1794749B1 (en)  Method of cascading noise reduction algorithms to avoid speech distortion  
EP1515305B1 (en)  Noise adaption for speech recognition  
JP3457431B2 (en)  Signal identification method  
Ramírez et al.  An effective subband OSFbased VAD with noise reduction for robust speech recognition  
US7617098B2 (en)  Method of noise reduction based on dynamic aspects of speech  
Xu et al.  An experimental study on speech enhancement based on deep neural networks  
Gales et al.  HMM recognition in noise using parallel model combination  
US5148489A (en)  Method for spectral estimation to improve noise robustness for speech recognition  
Viikki et al.  Cepstral domain segmental feature vector normalization for noise robust speech recognition 
Legal Events
Date  Code  Title  Description 

AS  Assignment 
Owner name: CANON KABUSHIKI KAISHA, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RAJAN, JEBU JACOB;REEL/FRAME:012214/0873 Effective date: 20010905 

CC  Certificate of correction  
CC  Certificate of correction  
FPAY  Fee payment 
Year of fee payment: 4 

REMI  Maintenance fee reminder mailed  
LAPS  Lapse for failure to pay maintenance fees  
STCH  Information on status: patent discontinuation 
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 

FP  Expired due to failure to pay maintenance fee 
Effective date: 20140704 