1. Technical Field
This disclosure relates to a speech processes, and more particularly to a process that identifies speech in voice segments.
2. Related Art
Speech processing is susceptible to environmental noise. This noise may combine with other noise to reduce speech intelligibility. Poor quality speech may affect its recognition by systems that convert voice into commands. A technique may attempt to improve speech recognition performance by submitting relevant data to the system. Unfortunately, some systems fail in non-stationary noise environments, where some noises may trigger recognition errors.
A system detects a speech segment that may include unvoiced, fully voiced, or mixed voice content. The system includes a digital converter that converts a time-varying input signal into a digital-domain signal. A window function pass signals within a programmed aural frequency range while substantially blocking signals above and below the programmed aural frequency range when multiplied by an output of the digital converter. A frequency converter converts the signals passing within the programmed aural frequency range into a plurality of frequency bins. A background voice detector estimates the strength of a background speech segment relative to the noise of selected portions of the aural spectrum. A noise estimator estimates a maximum distribution of noise to an average of an acoustic noise power of some of the plurality of frequency bins. A voice detector compares the strength of a desired speech segment to a criterion based on an output of the background voice detector and an output of the noise estimator.
Other systems, methods, features, and advantages will be, or will become, apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features, and advantages be included within this description, be within the scope of the invention, and be protected by the following claims.
The system may be better understood with reference to the following drawings and description. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. Moreover, in the figures, like referenced numerals designate corresponding parts throughout the different views.
Some speech processors operate when voice is present. Such systems are efficient and effective when voice is detected. When noise or other interference is mistaken for voice, the noise may corrupt the data. An end-pointer may isolate voice segments from this noise. The end-pointer may apply one or more static or dynamic (e.g., automatic) rules to determine the beginning or the end of a voice segment based on one or more speech characteristics. The rules may process a portion or an entire aural segment and may include the features and content described in U.S. application Ser. Nos. 11/804,633 and 11/152,922, both of which are entitled “Speech End-pointer.” Both U.S. applications are incorporated by reference. In the event of an inconsistency between those U.S. applications and this disclosure, this disclosure shall prevail.
In some circumstances, the performance of an end-pointer may be improved. A system may improve the detection and processing of speech segments based on an event (or an occurrence) or a combination of events. The system may dynamically customize speech detection to one or more events or may be pre-programmed to respond to these events. The detected speech may be further processed by a speech end-pointer, speech processor, or voice detection process. In systems that have low processing power (e.g., in a vehicle, car, or in a hand-held system), the system may substantially increase the efficiency, reliability, and/or accuracy of an end-pointer, speech processor, or voice detection process. Noticeable improvements may be realized in systems susceptible to tonal noise.
At 106, background voice may be estimated by measuring the strength of a voiced segment relative to noise. A time-smoothed or running average may be computed to smooth out the measurement or estimate of the frequency bins before a signal-to-noise ratio (SNR) is measured or estimated. In some processes (and systems later described), the background voice estimate may be a scalar multiple of the smooth or averaged SNR or the smooth or averaged SNR less an offset (which may be automatically or user defined). In some processes the scalar multiple is less than one. In these and other processes, a user may increase or decrease the number of bins or buffers that are processed or measured.
At 108, a background interference or noise is measured or estimated. The noise measurement or estimate may be the maximum distribution of noise to an average of the acoustic noise power of one or more of frequency bins. The process may measure a maximum noise level across many frequency bins (e.g., the frequency bins may or may not adjoin) to derive a noise measurement or estimate over time. In some processes (and systems later described), the noise level may be a scalar multiple of the maximum noise level or a maximum noise level plus an offset (which may be automatically or user defined). In these processes the scalar multiple (of the noise) may be greater than one and a user may increase or decrease the number of bins or buffers that are measured or estimated.
At 110, the process 100 may discriminate, mark, or pass portions of the output of the spectrum that includes a speech signal. The process 100 may compare a maximum of the voice estimate and/or the noise estimate (that may be buffered) to an instant SNR of the output of the spectrum conversion process 104. The process 100 may accept a voice decision and identify speech at 110 when an instant SNR is greater than the maximum of the voice estimate process 108 and/or the noise estimate process 106. The comparison to a maximum of the voice estimate, the noise estimate, or a combination (e.g., selecting maximum values between the two estimates continually or periodically in time) may be selection-based by a user or a program, and may account for the level of noise or background voice measured or estimated to surround a desired speech signal.
To overcome the effects of the interference or to prevent the truncation of voiced or voiceless speech, some processes (and systems later described) may increase the passband or marking of a speech segment. The passband or marking may identify a range of frequencies in time. Other methods may process the input with knowledge that a portion may have been cutoff. Both methods may process the input before it is processed by an end-pointer process, a speech process, or a voice detection process. These processes may minimize truncation errors by leading or lagging the rising and/or falling edges of a voice decision window dynamically or by a fixed temporal or frequency-based amount.
At 208, a background noise or interference may be measured or estimated. The noise measurement or estimate may be the maximum variance across one or multiple frequency bins. The process 200 may measure a maximum noise variance across many frequency bins to derive a noise measurement or estimate. In some processes, the noise variance may be a scalar multiple of the maximum noise variance or a maximum noise variance plus an offset (which may be automatically or user defined). In these processes the scalar multiple (of the maximum noise variance) may be greater than one.
In some processes, the respective offsets and/or scalar multipliers may automatically adapt or adjust to a user's environment at 210. The multipliers and/or offsets may adapt automatically to changes in an environment. The adjustment may occur as the processes continuously or periodically detect and analyze the background noise and background voice that may contaminate one or more desired voice segments. Based on the level of the signals detected, an adjustment process may adjust one or more of the offsets and/or scalar multiplier. In an alternative process, the adjustment may not modify the respective offsets and/or scalar multipliers that adjust the background noise and background voice (e.g., smoothed SNR estimate) estimate. Instead, the processes may automatically adjust a voice threshold process 212 after a decision criterion is derived. In these alternative processes, a decision criterion such as a voice threshold may be adjusted by an offset (e.g., an addition or subtraction) or multiple (e.g., a multiplier).
To isolate speech from the noise or other interference surrounding it, a voice threshold 212 may select the maximum value of the SNR estimate 206 and noise estimate 208 at points in time. By tracking both the smooth SNR and the noise variance the process 200 may execute a longer term comparison 214 of the signal and noise as well as the shorter term variations in the noise to the input. The process 200 compares the maximum of these two thresholds (e.g., the decision criterion is a maximum criterion) to the instant SNR of the output of the spectrum conversion at 214. The process 200 may reject a voice decision where the instant SNR is below the maximum values of the higher of these two thresholds.
The methods and descriptions of
A computer-readable medium, machine-readable medium, propagated-signal medium, and/or signal-bearing medium may comprise any medium that contains, stores, communicates, propagates, or transports software for use by or in connection with an instruction executable system, apparatus, or device. The machine-readable medium may selectively be, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. A non-exhaustive list of examples of a machine-readable medium would include: an electrical or tangible connection having one or more wires, a portable magnetic or optical disk, a volatile memory such as a Random Access Memory “RAM” (electronic), a Read-Only Memory “ROM,” an Erasable Programmable Read-Only Memory (EPROM or Flash memory), or an optical fiber. A machine-readable medium may also include a tangible medium upon which software is printed, as the software may be electronically stored as an image or in another format (e.g., through an optical scan), then compiled by a controller, and/or interpreted or otherwise processed. The processed medium may then be stored in a local or remote computer and/or machine memory.
In
To detect background voice in an aural band, a voice estimator 310 measures the strength of a voiced segment relative to noise of selected portions of the spectrum. A time-smoothed or running average may be computed to smooth out the measurement or estimate of the frequency bins before a signal-to-noise ratio (SNR) is measured or estimated. In some voice estimators 310, the background voice estimate may be a scalar multiple of the smooth or averaged SNR or the smooth or averaged SNR less an offset, which may be automatically or user defined. In some voice estimators 310 the scalar multiple is less than one. In these and other systems, a user may increase or decrease the number of bins or buffers that are processed or measured.
To detect background noise in an aural band, a noise estimator 312 measures or estimates a background interference or noise. The noise measurement or estimate may be the maximum distribution of noise to an average of the acoustic noise power of one or a number of frequency bins. The background noise estimator 312 may measure a maximum noise level across many frequency bins (e.g., the frequency bins may or may not adjoin) to derive a noise measurement or estimate over time. In some noise estimators 312, the noise level may be a scalar multiple of the maximum noise level or a maximum noise level plus an offset, which may be automatically or user defined. In these systems the scalar multiple of the background noise may be greater than one and a user may increase or decrease the number of bins or buffers that are measured or estimated.
A voice detector 314 may discriminate, mark, or pass portions of the output of the frequency converter 306 that includes a speech signal. The voice detector 314 may continuously or periodically compare an instant SNR to a maximum criterion. The system 300 may accept a voice decision and identify speech (e.g., via a voice decision window) when an instant SNR is greater than the maximum of the voice estimate process 108 and/or the noise estimate process 106. The comparison to a maximum of the voice estimate, the noise estimate, a combination, or a weighted combination (e.g., established by a weighting circuit or device that may emphasize or deemphasize an SNR or noise measurement/estimate) may be selection-based. A selector within the voice detector 314 may select the maximum criterion and/or weighting values that may be used to derive a single threshold used to identify or isolate speech based on the level of noise or background voice (e.g., measured or estimated to surround a speech signal).
The noise estimator 404 may measure the background noise or interference. The noise estimator 404 may measure or estimate the maximum variance across one or more frequency bins. Some noise estimators 404 may include a multiplier or adder. In these systems, the noise variance may be a scalar multiple of the maximum noise variance or a maximum noise variance plus an offset (which may be automatically or user defined). In these processes the scalar multiple (of the maximum noise variance) may be greater than one.
In some systems, the respective offsets and/or scalar multipliers may automatically adapt or adjust to a user's environment. The adjustments may occur as the systems continuously or periodically detect and analyze the background noise and voice that may surround one or more desired (e.g., selected) voice segments. Based on the level of the signals detected, an adjusting device may adjust the offsets and/or scalar multiplier. In some alternative systems, the adjuster may automatically modify a voice threshold that the speech detector 406 may use to detect speech.
To isolate speech from the noise or other interference surrounding it, the voice detector 406 may apply decision criteria to isolate speech. The decision criteria may comprise the maximum value of the SNR estimate 206 and noise estimate 208 at points in time (that may be modified by the adjustment described above). By tracking both the smooth SNR and the noise variance the system 400 may make a longer term comparisons of the detected signal to an adjusted signal-to-noise ratio and variations in detected noise. The voice detector 406 may compare the maximum of two thresholds (that may be further adjusted) to the instant SNR of the output of the frequency converter 306. The system 400 may reject a voice decision or detection where the instant SNR is below the maximum values between these two thresholds at specific points in time.
The lower frame of
The voice estimator or voice estimate process may identify a desired speech segment, especially in environments where the noise itself is speech (e.g., tradeshow, train station, airport). In some environments, the noise is voice but not the desired voice the process is attempting to identify. In
The voice estimator or voice estimate process may comprise a pre-processing layer of a process or system to ensure that there are fewer erroneous voice detections in an end-pointer, speech processor, or secondary voice detector. It may use two or more adaptive thresholds to identify or reject voice decisions. In one system, the first threshold is based on the estimate of the noise variance. The first threshold may be equal to or substantially equal to the maximum of a multiple of the noise variance or the noise variance plus a user defined or an automated offset. A second threshold may be based on a temporally smoothed SNR estimate. In some systems, speech is identified through a comparison to the maximum of the temporally smoothed SNR estimate less an offset (or a multiple of the temporally smoothed SNR) and the noise variance plus an offset (or a multiple of the noise variance).
Other alternate systems include combinations of some or all of the structure and functions described above or shown in one or more or each of the Figures. These systems are formed from any combination of structure and function described herein or illustrated within the figures.
While various embodiments of the invention have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents.
This application is a continuation-in-part of U.S. application Ser. No. 11/804,633 filed May 18, 2007, which is a continuation-in-part of U.S. application Ser. No. 11/152,922 filed Jun. 15, 2005. The entire content of these applications are incorporated herein by reference, except that in the event of any inconsistent disclosure from the present disclosure, the disclosure herein shall be deemed to prevail.
Number | Name | Date | Kind |
---|---|---|---|
55201 | Cushing | May 1866 | A |
4435617 | Griggs et al. | Mar 1984 | A |
4486900 | Cox et al. | Dec 1984 | A |
4531228 | Noso et al. | Jul 1985 | A |
4532648 | Noso et al. | Jul 1985 | A |
4630305 | Borth et al. | Dec 1986 | A |
4701955 | Taguchi | Oct 1987 | A |
4811404 | Vilmur et al. | Mar 1989 | A |
4843562 | Kenyon et al. | Jun 1989 | A |
4856067 | Yamada et al. | Aug 1989 | A |
4945566 | Mergel et al. | Jul 1990 | A |
4989248 | Schalk et al. | Jan 1991 | A |
5027410 | Williamson et al. | Jun 1991 | A |
5056150 | Yu et al. | Oct 1991 | A |
5146539 | Doddington et al. | Sep 1992 | A |
5151940 | Okazaki et al. | Sep 1992 | A |
5152007 | Uribe | Sep 1992 | A |
5201028 | Theis | Apr 1993 | A |
5293452 | Picone et al. | Mar 1994 | A |
5305422 | Junqua | Apr 1994 | A |
5313555 | Kamiya | May 1994 | A |
5400409 | Linhard | Mar 1995 | A |
5408583 | Watanabe et al. | Apr 1995 | A |
5479517 | Linhard | Dec 1995 | A |
5495415 | Ribbens et al. | Feb 1996 | A |
5502688 | Recchione et al. | Mar 1996 | A |
5526466 | Takizawa | Jun 1996 | A |
5568559 | Makino | Oct 1996 | A |
5572623 | Pastor | Nov 1996 | A |
5584295 | Muller et al. | Dec 1996 | A |
5596680 | Chow et al. | Jan 1997 | A |
5617508 | Reaves | Apr 1997 | A |
5677987 | Seki et al. | Oct 1997 | A |
5680508 | Liu | Oct 1997 | A |
5687288 | Dobler et al. | Nov 1997 | A |
5692104 | Chow et al. | Nov 1997 | A |
5701344 | Wakui | Dec 1997 | A |
5732392 | Mizuno et al. | Mar 1998 | A |
5794195 | Hormann et al. | Aug 1998 | A |
5933801 | Fink et al. | Aug 1999 | A |
5949888 | Gupta et al. | Sep 1999 | A |
5963901 | Vahatalo et al. | Oct 1999 | A |
6011853 | Koski et al. | Jan 2000 | A |
6029130 | Ariyoshi | Feb 2000 | A |
6098040 | Petroni et al. | Aug 2000 | A |
6163608 | Romesburg et al. | Dec 2000 | A |
6167375 | Miseki et al. | Dec 2000 | A |
6173074 | Russo | Jan 2001 | B1 |
6175602 | Gustafsson et al. | Jan 2001 | B1 |
6192134 | White et al. | Feb 2001 | B1 |
6199035 | Lakaniemi et al. | Mar 2001 | B1 |
6216103 | Wu et al. | Apr 2001 | B1 |
6240381 | Newson | May 2001 | B1 |
6304844 | Pan et al. | Oct 2001 | B1 |
6317711 | Muroi | Nov 2001 | B1 |
6324509 | Bi et al. | Nov 2001 | B1 |
6356868 | Yuschik et al. | Mar 2002 | B1 |
6405168 | Bayya et al. | Jun 2002 | B1 |
6434246 | Kates et al. | Aug 2002 | B1 |
6453285 | Anderson et al. | Sep 2002 | B1 |
6487532 | Schoofs et al. | Nov 2002 | B1 |
6507814 | Gao | Jan 2003 | B1 |
6535851 | Fanty et al. | Mar 2003 | B1 |
6574592 | Nankawa et al. | Jun 2003 | B1 |
6574601 | Brown et al. | Jun 2003 | B1 |
6587816 | Chazan et al. | Jul 2003 | B1 |
6643619 | Linhard et al. | Nov 2003 | B1 |
6687669 | Schrögmeier et al. | Feb 2004 | B1 |
6711540 | Bartkowiak | Mar 2004 | B1 |
6721706 | Strubbe et al. | Apr 2004 | B1 |
6782363 | Lee et al. | Aug 2004 | B2 |
6822507 | Buchele | Nov 2004 | B2 |
6850882 | Rothenberg | Feb 2005 | B1 |
6859420 | Coney et al. | Feb 2005 | B1 |
6873953 | Lennig | Mar 2005 | B1 |
6910011 | Zakarauskas | Jun 2005 | B1 |
6996252 | Reed et al. | Feb 2006 | B2 |
7117149 | Zakarauskas | Oct 2006 | B1 |
7146319 | Hunt | Dec 2006 | B2 |
7535859 | Brox | May 2009 | B2 |
20010028713 | Walker | Oct 2001 | A1 |
20020071573 | Finn | Jun 2002 | A1 |
20020176589 | Buck et al. | Nov 2002 | A1 |
20030040908 | Yang et al. | Feb 2003 | A1 |
20030120487 | Wang | Jun 2003 | A1 |
20030216907 | Thomas | Nov 2003 | A1 |
20040078200 | Alves | Apr 2004 | A1 |
20040138882 | Miyazawa | Jul 2004 | A1 |
20040165736 | Hetherington et al. | Aug 2004 | A1 |
20040167777 | Hetherington et al. | Aug 2004 | A1 |
20050096900 | Bossemeyer et al. | May 2005 | A1 |
20050114128 | Hetherington et al. | May 2005 | A1 |
20050240401 | Ebenezer | Oct 2005 | A1 |
20060034447 | Alves et al. | Feb 2006 | A1 |
20060053003 | Suzuki et al. | Mar 2006 | A1 |
20060074646 | Alves et al. | Apr 2006 | A1 |
20060080096 | Thomas et al. | Apr 2006 | A1 |
20060100868 | Hetherington et al. | May 2006 | A1 |
20060115095 | Giesbrecht et al. | Jun 2006 | A1 |
20060116873 | Hetherington et al. | Jun 2006 | A1 |
20060136199 | Nongpiur et al. | Jun 2006 | A1 |
20060161430 | Schweng | Jul 2006 | A1 |
20060178881 | Oh et al. | Aug 2006 | A1 |
20060251268 | Hetherington et al. | Nov 2006 | A1 |
20070033031 | Zakarauskas | Feb 2007 | A1 |
20070219797 | Liu et al. | Sep 2007 | A1 |
20070288238 | Hetherington et al. | Dec 2007 | A1 |
Number | Date | Country |
---|---|---|
2158847 | Sep 1994 | CA |
2157496 | Oct 1994 | CA |
2158064 | Oct 1994 | CA |
1042790 | Jun 1990 | CN |
0 076 687 | Apr 1983 | EP |
0 629 996 | Dec 1994 | EP |
0 629 996 | Dec 1994 | EP |
0 750 291 | Dec 1996 | EP |
0 543 329 | Feb 2002 | EP |
1 450 353 | Aug 2004 | EP |
1 450 354 | Aug 2004 | EP |
1 669 983 | Jun 2006 | EP |
06269084 | Sep 1994 | JP |
06319193 | Nov 1994 | JP |
2000-250565 | Sep 2000 | JP |
10-1999-0077910 | Oct 1999 | KR |
10-2001-0091093 | Oct 2001 | KR |
WO 0041169 | Jul 2000 | WO |
WO 0156255 | Aug 2001 | WO |
WO 0173761 | Oct 2001 | WO |
WO 2004111996 | Dec 2004 | WO |
Number | Date | Country | |
---|---|---|---|
20080228478 A1 | Sep 2008 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11804633 | May 2007 | US |
Child | 12079376 | US | |
Parent | 11152922 | Jun 2005 | US |
Child | 11804633 | US |