US20120191455A1 - System and Method for an Endpoint Detection of Speech for Improved Speech Recognition in Noisy Environments - Google Patents
System and Method for an Endpoint Detection of Speech for Improved Speech Recognition in Noisy Environments Download PDFInfo
- Publication number
- US20120191455A1 US20120191455A1 US13/438,715 US201213438715A US2012191455A1 US 20120191455 A1 US20120191455 A1 US 20120191455A1 US 201213438715 A US201213438715 A US 201213438715A US 2012191455 A1 US2012191455 A1 US 2012191455A1
- Authority
- US
- United States
- Prior art keywords
- speech
- energy
- silence
- frame
- endpointer
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims description 43
- 238000001514 detection method Methods 0.000 title description 50
- 239000000284 extract Substances 0.000 abstract 2
- 230000000694 effects Effects 0.000 description 40
- 238000000605 extraction Methods 0.000 description 23
- 239000013598 vector Substances 0.000 description 19
- 238000012512 characterization method Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000003595 spectral effect Effects 0.000 description 9
- 238000012795 verification Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000012935 Averaging Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
- G10L25/87—Detection of discrete points within a voice signal
Definitions
- the present invention relates generally to the field of speech recognition and, more particularly, speech recognition in noisy environments.
- ASR Automatic speech recognition
- speaker-independent ASR can recognize a group of words from any speaker and allow any speaker to use the available vocabularies after having been trained for a standard vocabulary.
- Speaker-dependent ASR can identify a vocabulary of words from a specific speaker after having been trained for an individual user. Training usually requires the individual to say words or phrases one or more times to train the system.
- Speaker-verification ASR can identify a speaker's identity by matching the speaker's voice to a previously stored pattern.
- speaker-verification ASR allows the speaker to choose any word/phrase in any language as the speaker's verification word/phrase, i.e. spoken password. The speaker may select a verification word/phrase at the beginning of an enrollment procedure during which the speaker-verification ASR is trained and speaker parameters are generated. Once the speaker's identity is stored, the speaker-verification ASR is able to verify whether a claimant is whom he/she claims to be. Based on such verification, the speaker-verification ASR may grant or deny the claimant's access or request.
- FIG. 1 shows a block diagram of a conventional energy-based endpointing system integrated widely in current speech recognition systems.
- Endpoint detection system 100 illustrated in FIG. 1 comprises endpointer 102 , feature extraction module 104 and recognition system 106 .
- endpoint detection system 100 utilizes a conventional energy-based algorithm to determine whether an input speech signal, such as speech signal 101 , contains actual speech activity.
- Endpoint detection system 100 which receives speech signal 101 on a frame-by-frame basis, determines the beginning and/or end of speech activity by processing each frame of speech signal 101 and measuring the energy of each frame. By comparing the measured energy of each frame against a preset threshold energy value, endpoint detection system 100 determines whether an input frame has a sufficient energy value to classify as speech. The determination is based on a comparison of the energy value of the frame and a preset threshold energy value.
- the preset threshold energy value can be based on, for instance, an experimentally determined difference in energy between background/silence and actual speech activity.
- endpointer 102 classifies the contents of the frame as background/silence or “non-speech.” On the other hand, if the energy value of the input frame is equal to, or greater than, the threshold energy value, endpointer 102 classifies the contents of the frame as actual speech activity. Endpointer 102 would then signal feature extraction module 104 to extract speech characteristics from the frame.
- a common extracting means for extracting speech characteristics is to determine a feature set such as a cepstral feature set, as is known in the art. The cepstral feature set can then be sent to recognition system 106 which processes the information it receives from feature extraction module 104 in order to “recognize” the speech contained in the input frame.
- graph 200 illustrates the endpointing outcome from a conventional endpoint detection system such as endpoint detection system 100 in FIG. 1 .
- the energy of the input speech signal (axis 202 ) is plotted against the cepstral distance (axis 204 ).
- E silence point 206 on axis 202 represents the energy value of background/silence.
- E silence can be determined experimentally by measuring the energy value of background/silence or non-speech in different conditions such as in a moving vehicle or in a typical office and averaging the values.
- E silence +K point 208 represents the preset threshold energy value utilized by the endpointer, such as endpointer 102 in FIG. 1 , to classify whether an input speech signal contains actual speech activity.
- the value K therefore represents the difference in the level of energy between background/silence, i.e. E silence , and the energy value of what the endpointer is programmed to classify as speech.
- an energy-based algorithm produces an “all-or-nothing” outcome: if the energy of an input frame is below the threshold level, i.e. E silence +K, the frame is grouped as part of silence region 210 . Conversely, if the energy value of an input frame is equal to or greater than E silence +K, it is classified as speech and grouped in speech region 212 .
- Graph 200 shows that the classification of speech utilizing only an energy-based algorithm disregards the spectral characteristics of the speech signal. As a result, a frame which exhibits spectral characteristics similar to actual speech activity may be falsely rejected as non-speech if its energy value is too low.
- Another disadvantage of the conventional energy-based endpoint detection algorithm such as the one utilized by endpoint detection system 100 , is that it has little or no immunity to background noise.
- the conventional endpointer In the presence of background noise, the conventional endpointer often fails to determine the accurate endpoints of a speech utterance by either (1) missing the leading or trailing low-energy sounds such as fricatives, (2) classifying clicks, pops and background noises as part of speech, or (3) falsely classifying background/silence noise as speech while missing the actual speech.
- Such errors lead to high false rejection rates, and reflect negatively on the overall performance of the ASR system.
- the background energy of a first portion of a speech signal is determined.
- one or more features of the first portion is extracted, and the one or more features can be, for example, cepstral vectors.
- An average distance is thereafter calculated for first portion base on the one or more features extracted.
- the energy of a second portion of the speech signal is measured, and one or more features of the second portion is extracted. Based on the one or more features of the second portion, a distance is then calculated for the second portion.
- the energy measured for the second portion is contrasted with the background energy of the first portion, and the distance calculated for the second portion is compared with the distance of the first portion.
- the second portion of the speech signal is then classified as either speech or non-speech based on the contrast and the comparison.
- a system for endpoint detection of speech for improved speech recognition in noisy environments comprising a cepstral computing module configured to extract one or more features of a first portion of a speech signal and one or more features of a second portion of the speech signal.
- the system further comprises an energy computing module configured to measure the energy of the second portion.
- the system comprises an endpointer module configured to determine the background energy of the first portion and to calculate an average distance of the first portion based on the one or more feature of the first portion extracted by the cepstral computing module.
- the endpointer module can be further configured to calculate a distance of the second portion based on the one or more features of the second portion.
- the endpointer module is configured to contrast the energy of the second portion with the background energy of the first portion and to compare the distance of the second portion with the average distance of the second portion.
- FIG. 1 illustrates a block diagram of a conventional endpoint detection system utilizing an energy-based algorithm
- FIG. 2 shows a graph of an endpoint detection utilizing the system of FIG. 1 ;
- FIG. 3 illustrates a block diagram of an endpoint detection system according to one embodiment of the present invention
- FIG. 4 shows a graph of an endpoint detection utilizing the system of FIG. 3 ;
- FIG. 5 illustrates a flow diagram of a process for endpointing the beginning of speech according to one embodiment of the present invention.
- FIG. 6 illustrates a flow diagram of a process for endpointing the end of speech according to one embodiment of the present invention.
- the present invention may be described herein in terms of functional block components and various processing steps. It should be appreciated that such functional blocks may be realized by any number of hardware components and/or software components configured to perform the specified functions.
- the present invention may employ various integrated circuit components, e.g., memory elements, digital signal processing elements, logic elements, and the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices.
- the present invention may employ any number of conventional techniques for speech recognition, data transmission, signaling, signal processing and conditioning, tone generation and detection and the like. Such general techniques that may be known to those skilled in the art are not described in detail herein.
- Endpoint detection system 300 comprises feature extraction module 302 , endpointer 308 and recognition system 310 . It is noted that endpointer 308 is also referred to as “endpointer module” 308 in the present application.
- Feature extraction module 302 further includes energy computing module 304 and cepstral computing module 306 .
- speech signal 301 is received by both feature extraction module 302 and endpointer 308 .
- Speech signal 301 can be, for example, an utterance or other speech data received by endpoint detection system 300 , typically in digitized form.
- the signal characteristics of speech signal 301 may vary depending on the type of recording environment and the sources of noise surrounding the signal, as is known in the art.
- the role of feature extraction module 302 and endpointer 308 is to process speech signal 301 on a frame-by-frame basis in order to endpoint speech signal 301 for actual speech activity.
- speech signal 301 is received and processed by both feature extraction module 302 and endpointer 308 .
- feature extraction module 302 and endpointer 308 generate a characterization of the background/silence of speech signal 301 based on the initial frames.
- endpointer 308 is configured to measure the energy value of the initial frames of the speech signal 301 and, based on that measurement, to determine whether there is speech activity in the first approximately 100 msec of speech signal 301 .
- the first approximately 100 msec can be contained in, for example, the first 4, 8 or 10 frames of input speech.
- the characterization of the background/silence may be based on the initial four overlapping frames.
- the frames on which the characterization of background/silence is based are also referred to as the “initial frames” or a “first portion” in the present application.
- the determination of whether there is speech activity in the initial approximately 100 msec is achieved by measuring the energy values of the initial four frames and comparing them to a predefined threshold energy value.
- Endpointer 308 can be configured to determine if any of the initial frames contain actual speech activity by comparing the energy value of each of the initial frames to the predefined threshold energy value. If any frame has an energy value higher than the predefined threshold energy value, endpointer 308 would conclude that the frame contains actual speech activity.
- the predefined energy threshold is set relatively high such that a determination by endpointer 308 that there is indeed speech activity in the initial approximately 100 msec can be accepted with confidence.
- endpointer 308 determines that there is speech activity within approximately the first 100 msec, i.e. in the initial four frames of speech signal 301 .
- the characterization of the background/silence for the purpose of endpointing speech signal 301 stops.
- the presence of actual speech activity within the first approximately 100 msec may result in inaccurate characterization of background/silence.
- endpoint detection system 300 can be configured to prompt the speaker that the speaker has spoken too soon and to further prompt the speaker to try again.
- endpointer 308 may conclude that no speech activity is present in the initial four frames.
- the initial four frames will then serve as the basis for the characterization of background/silence for speech signal 301 .
- endpointer 308 determines that the initial four frames do not contain speech activity, endpointer 308 computes the average background/silence (“E silence ”) for speech signal 301 by averaging the energy across all four frames. It is noted that E silence is also referred to as “background energy” in the present application. As will be explained below, E silence is used to classify subsequent frames of speech signal 301 as either speech or non-speech. Endpointer 308 also signals cepstral computing module 306 of feature extraction module 302 to extract certain speech-related features, or feature sets, from the initial four frames.
- E silence is also referred to as “background energy” in the present application.
- cepstral computing module 306 of feature extraction module 302 to extract certain speech-related features, or feature sets, from the initial four frames.
- cepstral computing module 306 computes a cepstral vector (“c j ”) for each of the initial four frames. The cepstral vectors for the four frames are used by cepstral computing module 306 to compute a mean cepstral vector (“C mean ”) according to Equation 1, below:
- c j (i) is the cepstral coefficient corresponding to the j th frame.
- C mean which is also referred to as “mean distance” in this application, represents the average spectral characteristics of background/silence across the initial four frames of the speech signal.
- cepstral computing module 306 measures the Euclidean distance between each of the four frames of background/silence and the mean cepstral vector, C mean .
- the Euclidean distance is computed by cepstral computing module 306 according to Equation 2, below:
- d j is the Euclidean distance between frame j and the mean cepstral vector C mean
- p is the order of the cepstral analysis
- c j (i) are the elements of the j th frame cepstral vector
- c mean (i) are the elements of the background/silence mean cepstral vector, C mean .
- cepstral computing module 306 computes the average distance, D silence , between the first four frames and the average cepstral vector, C mean . Equation 3, below, is used to compute D silence ;
- D silence is the average Euclidean distance between the first four frames and C mean
- d j is the Euclidean distance between frame j and the mean cepstral vector
- feature extraction module 302 provides endpointer 308 with its computations, i.e. with the values for D silence and C mean . It is noted that D silence is also referred to as “average distance” in the present application.
- endpoint detection system 300 proceeds with endpointing the remaining frames of speech signal 301 . It is noted that the remaining frames of speech signal 301 are also referred to as a “second portion” in the present application. The remaining frames of speech signal 301 are received sequentially by feature extraction module 302 . According to the present embodiment, once the characterization of background/silence has been completed, only two parameters need be computed for each of the subsequent frames in order to determine if it is speech or non-speech.
- the subsequent frames of speech signal 301 are received by energy computing module 304 and cepstral computing module 306 of feature extraction module 302 .
- each such subsequent incoming frame of speech signal 301 is also referred to as “next frame” or “frame k” in the present application.
- the frames subsequent to the initial frames of the speech signal are also referred to as a “second portion” in the present application.
- Energy computing module 304 can be configured to compute the frame energy, E k , of each incoming frame of speech signal 301 in a manner known in the art.
- Cepstral computing module 306 can be configured to compute a simple Euclidean distance, d k , between the current cepstral vector for frame k and the mean cepstral vector C mean according to equation 4 below:
- feature extraction module 302 sends the information to endpointer 308 for further endpoint processing. It is appreciated that feature extraction module 302 computes E k and d k for each frame of speech signal 301 as the frame is received by extraction module 302 . In other words, the computations are done “on the fly.” Further, endpointer 308 receives the information, i.e. E k and d k , from feature extraction module 302 on the fly as well.
- endpointer 308 uses the information it receives from feature extraction module 302 in order to classify whether a frame of speech signal 301 is speech or non-speech.
- An input frame is classified as speech, i.e. it has actual speech activity, if it satisfies any one of the following three conditions:
- E silence is the mean background/silence computed by endpointer 308 based on the initial approximately 100 msec, e.g. the first four frames, of speech signal 301
- D silence is the average Euclidean distance between the first four frames and C mean
- d k is the cepstral distance between the “current” frame k and C mean
- E k is the energy of the current frame k
- ⁇ , ⁇ , ⁇ and ⁇ are values determined experimentally and incorporated into the present endpointing algorithm.
- ⁇ can be set at 3
- ⁇ can be set at 0.75
- ⁇ can be set at 1.3
- ⁇ can be set at 1.1.
- Endpoint detection system 300 endpoints speech based on various factors in addition to energy.
- a preset threshold energy value is attained by adding a predetermined constant value ⁇ to the average silence energy, E silence .
- the value of ⁇ can be determined experimentally and based on an understanding of the difference in energy values for speech versus non-speech.
- an input frame is classified as speech if its energy value, as measured by energy computation module 304 , is greater than ⁇ *E silence .
- an endpointer using exclusively an energy-based threshold could erroneously categorize some leading or trailing low-energy sounds such as fricatives as non-speech. Conversely, the endpointer might mistakenly classify high energy sounds such as clicks, pops and sharp noises as speech. At other times, the endpointer might be triggered falsely by noise and completely miss the endpoints of actual speech activity. Accordingly, relying solely on an energy-based endpointing mechanism has many shortcomings.
- Condition 2 ensures that a low-energy sound will be properly classified as speech if it possesses similar spectral characteristics to speech (i.e. if the cepstral distance between the “current” frame and silence, d k , is large).
- Condition 3 ensures that high energy sounds are classified as speech only if they have similar spectral characteristics to speech.
- the data computed by feature extraction module 302 and endpointer 308 can be sent to recognition system 310 .
- feature extraction 302 only sends recognition system 310 those feature sets corresponding to frames of speech signal 301 which have been determined to contain actual speech activity.
- the feature sets can be used by speech recognition system 310 for speech recognition processing in a manner known in the art.
- endpoint detection system 300 achieves greater endpoint accuracy while keeping computational costs to a minimum by taking advantage of feature sets that would otherwise be computed as part of conventional speech recognition processing and using them for endpointing purposes.
- graph 400 illustrates the results of endpointing utilizing endpoint detection system 300 of FIG. 3 .
- Graph 400 shows the outcome of an endpoint detection system 300 , which classifies speech versus non-speech based on both cepstral distance and energy. More particularly, graph 400 shows how the utilization of Conditions 1, 2 and 3 results in improved endpointing accuracy.
- energy axis 404
- cepstral distance axis 402 .
- ⁇ can be set, for example, at 3.0, ⁇ can be set at 0.75, ⁇ can be set at 1.30, and ⁇ can be set at 1.10. Consequently, point 406 in graph 400 equals 3 * D silence , point 408 equals D silence , point 410 equals 0.75 * E silence , point 412 equals 1.1 * E silence and point 414 equals 1.3 * E silence .
- total speech region 418 comprises speech region 420 , speech region 422 and speech region 424 , while background/silence or “non-speech” is grouped in silence region 416 .
- Speech region 420 includes all frames of an input speech signal, such as speech signal 301 , which endpoint detection system 300 determines to satisfy Condition 1. In other words, frames of the speech signal which have energy values that exceed (1.3 * E silence ) would be classified as speech and plotted in speech region 420 .
- Speech region 422 includes the frames of the input speech signal which endpoint detection system 300 determines to satisfy Condition 2, that is those frames which have cepstral distances greater than (3 * D silence ) and energy values greater than (0.75 * E silence ).
- Speech region 424 includes the frames of the input speech signal which the present endpoint detection system determines to satisfy Condition 3, that is those frames which have cepstral distances greater than (D silence ) and energy values greater than (1.1 * E silence ). It should be noted that a speech signal may have frames exhibiting characteristics that would satisfy more than one of the three Conditions. For example, a frame may have an energy value that exceeds (1.3 * E silence ) while also having a cepstral distance greater than (3 * D silence ). The combination of high energy and cepstral distance means that the characteristics of this frame would satisfy all three Conditions. Thus, although speech regions 420 , 422 and 424 are shown in graph 400 as separate and distinct regions, it is appreciated that certain regions can overlap.
- endpoint detection system 300 which relies on both the energy and the cepstral feature sets of the speech signal to endpoint speech are apparent when graph 400 of FIG. 4 is compared to graph 200 of FIG. 2 .
- graph 200 illustrated the endpointing outcome of a conventional energy-based endpoint detection system.
- graph 400 shows an “all-or-nothing” result
- graph 400 reveals a more discerning endpointing system.
- graph 400 “recaptures” frames of speech activity that would otherwise be classified as background/silence or non-speech by a conventional energy-based endpoint detection system. More specifically, a conventional energy-based endpoint detection system would not classify as speech the frames falling in speech regions 422 and 424 of graph 400 .
- FIG. 5 a flow diagram of method 500 for endpointing beginning of speech according to one embodiment of the present invention is illustrated.
- all frames in the present embodiment have a 30 msec frame size with a frame rate of 20 msec, it should be appreciated that other frame sizes and frame rates may be used without departing from the scope and spirit of the present invention.
- method 500 for endpointing the beginning of speech starts at step 510 when speech signal 501 , which can correspond, for example, to speech signal 301 of FIG. 3 , is received by endpoint detection system 300 . More particularly, the first frame of speech signal 501 , i.e. “next frame,” is received by the system's endpointer, e.g. endpointer 308 in FIG. 3 , which measures the energy value of the frame in a manner known in the art. At step 512 , the measured energy value of the frame is compared to a preset threshold energy value (“E threshold ”). E threshold can be established experimentally and based on an understanding of the expected differences in energy values between background/silence and actual speech activity.
- E threshold can be established experimentally and based on an understanding of the expected differences in energy values between background/silence and actual speech activity.
- step 512 If it is determined at step 512 that the energy value of the frame is equal to or greater than E threshold , the endpointer classifies the frame as speech. The process then proceeds to step 514 where counter variable N is set to zero. Counter variable N tracks the number of frames initially received by the endpoint detection system, which does not exceed E threshold . Thus, when a frame energy exceeds E threshold , counter variable N is set to zero and the speaker is notified that the speaker has spoken too soon. Because the first five frames of the speech signal (or first 100 msec, given a 30 msec window size and a 20 msec frame rate) will be used to characterize background/silence, it is preferred that there be no actual speech activity in the first five frames. Thus, if the endpointer determines that there is actual speech activity in the first five frames, endpointing of speech signal 501 halts, and the process returns to the beginning to where a new speech signal can be received.
- step 512 If it is determined at step 512 that the energy value of the received frame, i.e. next frame, is less that E threshold , method 500 proceeds to step 516 where counter variable N is incremented by 1. At step 518 , it is determined whether counter variable N is equal to five, i.e. whether 100 msec of speech input have been received without actual speech activity. If counter variable N is less than 5, method 500 for endpointing the beginning of speech returns to step 510 where the next frame of speech signal 501 is received by the endpointer.
- step 518 If it is determined at step 518 that counter variable N is equal to 5, then method 500 for endpointing the beginning of speech proceeds to step 520 where E silence is computed by averaging the energy across all five frames received by the endpointer. E silence represents the average background/silence of speech signal 501 and is computed by averaging the energy values of the five frames.
- the endpointer signals the feature extraction module, e.g. feature extraction module 302 of FIG. 3 , to calculate C mean , which represents the average spectral characteristics of background/silence of the five frames received by the endpoint detection system. As discussed above in relation to FIG. 3 , C mean is computed according to Equation 1 shown above.
- D silence is computed according to Equations 2 and 3 shown above, wherein N F is equal to five. D silence represents the average distance between the first five frames and the average cepstral vector representing background characteristics, C mean .
- step 526 endpoint detection system 300 receives the following frame (“frame k”) of speech signal 501 .
- Method 500 then proceeds to step 528 where the frame energy of frame k (“E k ”) is computed. Computation of E k is done in a manner well known in the art.
- step 530 the Euclidean distance (“d k ”) between the cepstral vector for frame k and C mean is computed. Euclidean distance d k is computed according to Equation 4 shown above.
- step 532 the characteristics of frame k, i.e. E k and d k , are utilized to determine whether frame k should be classified as speech or non-speech. More particularly, at step 532 , it is determined whether frame k satisfies any of three conditions utilized by the present endpoint detection system to classify input frames as speech or non-speech. These three conditions are shown above as Conditions 1, 2 and 3. If frame k does not satisfy any of the three Conditions 1, 2 or 3, i.e. if frame k is non-speech, the process proceeds to step 534 where counter variable T is set to zero. Counter variable T tracks the number of consecutive frames containing actual speech activity, i.e. the number of consecutive frames satisfying, at step 532 , at least one of the three Conditions 1, 2 or 3. Method 500 for endpointing the beginning of speech then returns to step 526 , where the next frame of speech signal 501 is received.
- the characteristics of frame k i.e. E k and d k .
- step 532 If it is determined, at step 532 , that frame k satisfies at least one of the three Conditions 1, 2 or 3, then method 500 for endpointing the beginning of speech continues to step 536 , where counter variable T is incremented by one.
- step 538 it is determined whether counter variable T is equal to five. If counter variable T is not equal to five, method 500 for endpointing the beginning of speech returns to step 526 where the next frame of speech signal 501 is received by the endpoint detection system. On the other hand, if it is determined, at step 538 , that counter variable T is equal to five, it indicates that the endpointer has classified five consecutive frames, i.e. 100 msec, of speech signal 501 as having actual speech activity.
- Method 500 for endpointing the beginning of speech would then proceed to step 540 , where the endpointer declares that the beginning of speech has been found.
- the endpointer may be configured to “go back” approximately 100-200 msec of input speech signal 501 to ensure that no actual speech activity is bypassed. The endpointer can then signal the recognition component of the speech recognition system to begin “recognizing” the incoming speech.
- method 500 for endpointing the beginning of speech ends at step 542 .
- Method 600 for endpointing the end of speech begins at step 610 , where endpoint detection system 300 receives frame k of speech signal 601 .
- Speech signal 601 can correspond to, for example, speech signal 301 of FIG. 3 and speech signal 501 of FIG. 5 .
- the beginning of actual speech activity in speech signal 601 has already been declared by the endpointer.
- method 600 for endpointing the end of speech is directed towards determining when the speech activity in speech signal 601 ends.
- frame k here represents the next frame received by the endpoint detection system following the declaration of beginning of speech.
- step 612 endpointer 308 measures the energy of frame k (“E k ”) in a manner known in the art.
- E k the energy of frame k
- step 614 the Euclidean distance (“d k ”) between the cepstral vector for frame k and C mean is computed.
- Euclidean distance d k is computed according to Equation 4 shown above, while C mean , which represents the average spectral characteristics of background/silence of speech signal 601 , is computed according to Equation 1 shown above.
- step 616 the characteristics of frame k, i.e. E k and d k , are utilized to determine whether frame k should be classified as speech or non-speech. More particularly, at step 616 , it is determined whether frame k satisfies any of three conditions utilized by the present endpoint detection system to classify input frames as speech or non-speech. These three conditions are shown above as Conditions 1, 2 and 3. If frame k satisfies any of the three Conditions 1, 2 or 3, i.e. the endpointer determines that frame k contains actual speech activity, the process proceeds to step 618 where counter variable X and counter variable Y are each incremented by one.
- Counter variable X tracks a count of the number of frames of speech signal 601 that have been classified as silence without encountering at least five consecutive frames classified as speech.
- Counter variable Y tracks the number of consecutive frames classified as speech, i.e. the number of consecutive frames that satisfy any of the three Conditions 1, 2 or 3.
- step 620 it is determined whether counter variable Y is equal to or greater than five. Since counter variable Y represents the number of consecutive frames classified as speech, determining at step 620 that counter variable Y is equal to or greater than five would indicate that at least 100 msec of actual speech activity have been consecutively classified. In such event, method 600 proceeds to step 622 where counter variable X is reset to zero. If it is instead determined, at step 620 , that counter variable Y is less than five, method 600 returns to step 610 where the next frame of speech signal 601 is received and processed.
- step 616 of method 600 for endpointing the end of speech if it is determined at step 616 that the characteristics of frame k, i.e. E k and d k , do not satisfy any of the three Conditions 1, 2 or 3, then the endpointer can classify frame k as non-speech.
- Method 600 then proceeds to step 624 where counter variable X is incremented by one, and counter variable Y is reset to zero. Counter variable Y is reset to zero because a non-speech frame has been classified.
- step 626 it is determined whether counter variable X is equal to 20.
- counter variable X equaling 20 indicates that the endpoint detection system has processed 20 frames or 400 msec of speech signal 601 without classifying consecutively at least 5 frames or 100 msec of actual speech activity. In other words, 400 consecutive milliseconds of speech signal 601 have been endpointed without encountering 100 consecutive milliseconds of speech activity.
- method 600 returns to step 610 , where the next frame of speech signal 601 can be received and endpointed.
- step 628 the endpointer can declare that the end of speech for speech signal 601 has been found.
- the endpointer may be configured to “go back” approximately 100-200 msec of input speech signal 601 and declare that speech actually ended approximately 100-200 msec prior to the current frame k.
- method 600 for endpointing the end of speech ends at step 630 .
- the present invention overcomes many shortcomings of conventional approaches and has many advantages. For example, the present invention improves endpointing by relying on more than just the energy of the speech signal. More particularly, the spectral characteristics of the speech signal is taken into account, resulting in a more discerning endpointing mechanism. Further, because the characterization of background/silence is computed for each new input speech signal rather than being preset, greater endpointing accuracy is achieved. The characterization of background/silence for each input speech signal also translates to better handling of background noise, since the environmental conditions in which the speech signal is recorded are taken into account. Additionally, by using a readily available feature set, e.g. the cepstral feature set, the present invention is able to achieve improvements in endpointing speech with relatively low computational costs. Even more, the advantages of the present invention are accomplished in real-time.
- a readily available feature set e.g. the cepstral feature set
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
- The present application claims the benefit of U.S. provisional application Ser. No. 60/272,956, filed Mar. 2, 2001, which is hereby fully incorporated by reference in the present application.
- 1. Field of the Invention
- The present invention relates generally to the field of speech recognition and, more particularly, speech recognition in noisy environments.
- 2. Related Art
- Automatic speech recognition (“ASR”) refers to the ability to convert speech signals into words, or put another way, the ability of a machine to recognize human voice. ASR systems are generally categorized into three types: speaker-independent ASR, speaker-dependent ASR and speaker-verification ASR. Speaker-independent ASR can recognize a group of words from any speaker and allow any speaker to use the available vocabularies after having been trained for a standard vocabulary. Speaker-dependent ASR, on the other hand, can identify a vocabulary of words from a specific speaker after having been trained for an individual user. Training usually requires the individual to say words or phrases one or more times to train the system. A typical application is voice dialing where a caller says a phrase such as “call home” or a name from the caller's directory and the phone number is dialed automatically. Speaker-verification ASR can identify a speaker's identity by matching the speaker's voice to a previously stored pattern. Typically, speaker-verification ASR allows the speaker to choose any word/phrase in any language as the speaker's verification word/phrase, i.e. spoken password. The speaker may select a verification word/phrase at the beginning of an enrollment procedure during which the speaker-verification ASR is trained and speaker parameters are generated. Once the speaker's identity is stored, the speaker-verification ASR is able to verify whether a claimant is whom he/she claims to be. Based on such verification, the speaker-verification ASR may grant or deny the claimant's access or request.
- Detecting when actual speech activity contained in an input speech signal begins and ends is a basic problem for all ASR systems, and it is well-recognized that proper detection is crucial for good speech recognition accuracy. This detection process is referred to as endpointing.
FIG. 1 shows a block diagram of a conventional energy-based endpointing system integrated widely in current speech recognition systems. -
Endpoint detection system 100 illustrated inFIG. 1 comprisesendpointer 102,feature extraction module 104 andrecognition system 106. - Continuing with
FIG. 1 ,endpoint detection system 100 utilizes a conventional energy-based algorithm to determine whether an input speech signal, such asspeech signal 101, contains actual speech activity.Endpoint detection system 100, which receivesspeech signal 101 on a frame-by-frame basis, determines the beginning and/or end of speech activity by processing each frame ofspeech signal 101 and measuring the energy of each frame. By comparing the measured energy of each frame against a preset threshold energy value,endpoint detection system 100 determines whether an input frame has a sufficient energy value to classify as speech. The determination is based on a comparison of the energy value of the frame and a preset threshold energy value. The preset threshold energy value can be based on, for instance, an experimentally determined difference in energy between background/silence and actual speech activity. If the energy value of the input frame is below the threshold energy value,endpointer 102 classifies the contents of the frame as background/silence or “non-speech.” On the other hand, if the energy value of the input frame is equal to, or greater than, the threshold energy value,endpointer 102 classifies the contents of the frame as actual speech activity.Endpointer 102 would then signalfeature extraction module 104 to extract speech characteristics from the frame. A common extracting means for extracting speech characteristics is to determine a feature set such as a cepstral feature set, as is known in the art. The cepstral feature set can then be sent torecognition system 106 which processes the information it receives fromfeature extraction module 104 in order to “recognize” the speech contained in the input frame. - Referring now to
FIG. 2 ,graph 200 illustrates the endpointing outcome from a conventional endpoint detection system such asendpoint detection system 100 inFIG. 1 . Ingraph 200, the energy of the input speech signal (axis 202) is plotted against the cepstral distance (axis 204). Esilence point 206 onaxis 202 represents the energy value of background/silence. As an example, Esilence can be determined experimentally by measuring the energy value of background/silence or non-speech in different conditions such as in a moving vehicle or in a typical office and averaging the values. Esilence+K point 208 represents the preset threshold energy value utilized by the endpointer, such asendpointer 102 inFIG. 1 , to classify whether an input speech signal contains actual speech activity. The value K therefore represents the difference in the level of energy between background/silence, i.e. Esilence, and the energy value of what the endpointer is programmed to classify as speech. - It is seen in
graph 200 ofFIG. 2 that an energy-based algorithm produces an “all-or-nothing” outcome: if the energy of an input frame is below the threshold level, i.e. Esilence+K, the frame is grouped as part ofsilence region 210. Conversely, if the energy value of an input frame is equal to or greater than Esilence+K, it is classified as speech and grouped inspeech region 212. Graph 200 shows that the classification of speech utilizing only an energy-based algorithm disregards the spectral characteristics of the speech signal. As a result, a frame which exhibits spectral characteristics similar to actual speech activity may be falsely rejected as non-speech if its energy value is too low. At the same time, a frame which has spectral characteristics very different from actual speech activity may be mistakenly classified as speech simply because it has high energy. It is recalled that with a conventional endpoint detection system such asendpoint detection system 100 inFIG. 1 , only frames classified by the endpointer as speech are subsequently exposed to the recognition system for further processing. Thus, when actual speech activity is mistakenly classified by the endpointer as silence or non-speech, or when non-speech activity is erroneously grouped with speech, speech recognition accuracy is significantly diminished. - Another disadvantage of the conventional energy-based endpoint detection algorithm, such as the one utilized by
endpoint detection system 100, is that it has little or no immunity to background noise. In the presence of background noise, the conventional endpointer often fails to determine the accurate endpoints of a speech utterance by either (1) missing the leading or trailing low-energy sounds such as fricatives, (2) classifying clicks, pops and background noises as part of speech, or (3) falsely classifying background/silence noise as speech while missing the actual speech. Such errors lead to high false rejection rates, and reflect negatively on the overall performance of the ASR system. - Thus, there is an intense need in the art for a new and improved endpoint detection system that is capable of handling background noise. It is also desired to design the endpoint detection system such that computational requirements are kept to a minimum. It is further desired that the endpoint detection system be able to detect the beginning and end of speech in real time.
- In accordance with the purpose of the present invention as broadly described herein, there is provided for an endpoint detection of speech for improved speech recognition in noisy environments. In one aspect, the background energy of a first portion of a speech signal is determined. Following, one or more features of the first portion is extracted, and the one or more features can be, for example, cepstral vectors. An average distance is thereafter calculated for first portion base on the one or more features extracted. Subsequently, the energy of a second portion of the speech signal is measured, and one or more features of the second portion is extracted. Based on the one or more features of the second portion, a distance is then calculated for the second portion. Thereafter, the energy measured for the second portion is contrasted with the background energy of the first portion, and the distance calculated for the second portion is compared with the distance of the first portion. The second portion of the speech signal is then classified as either speech or non-speech based on the contrast and the comparison.
- Moreover, a system for endpoint detection of speech for improved speech recognition in noisy environments can be assembled comprising a cepstral computing module configured to extract one or more features of a first portion of a speech signal and one or more features of a second portion of the speech signal. The system further comprises an energy computing module configured to measure the energy of the second portion. Also, the system comprises an endpointer module configured to determine the background energy of the first portion and to calculate an average distance of the first portion based on the one or more feature of the first portion extracted by the cepstral computing module. The endpointer module can be further configured to calculate a distance of the second portion based on the one or more features of the second portion. In order to classify the second portion as speech or non-speech, the endpointer module is configured to contrast the energy of the second portion with the background energy of the first portion and to compare the distance of the second portion with the average distance of the second portion.
- These and other aspects of the present invention will become apparent with further reference to the drawings and specification, which follow. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the present invention, and be protected by the accompanying claims.
- The features and advantages of the present invention will become more readily apparent to those ordinarily skilled in the art after reviewing the following detailed description and accompanying drawings, wherein:
-
FIG. 1 illustrates a block diagram of a conventional endpoint detection system utilizing an energy-based algorithm; -
FIG. 2 shows a graph of an endpoint detection utilizing the system ofFIG. 1 ; -
FIG. 3 illustrates a block diagram of an endpoint detection system according to one embodiment of the present invention; -
FIG. 4 shows a graph of an endpoint detection utilizing the system ofFIG. 3 ; -
FIG. 5 illustrates a flow diagram of a process for endpointing the beginning of speech according to one embodiment of the present invention; and -
FIG. 6 illustrates a flow diagram of a process for endpointing the end of speech according to one embodiment of the present invention. - The present invention may be described herein in terms of functional block components and various processing steps. It should be appreciated that such functional blocks may be realized by any number of hardware components and/or software components configured to perform the specified functions. For example, the present invention may employ various integrated circuit components, e.g., memory elements, digital signal processing elements, logic elements, and the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices. Further, it should be noted that the present invention may employ any number of conventional techniques for speech recognition, data transmission, signaling, signal processing and conditioning, tone generation and detection and the like. Such general techniques that may be known to those skilled in the art are not described in detail herein.
- It should be appreciated that the particular implementations shown and described herein are merely exemplary and are not intended to limit the scope of the present invention in any way. Indeed, for the sake of brevity, conventional data transmission, encoding, decoding, signaling and signal processing and other functional and technical aspects of the data communication system and speech recognition (and components of the individual operating components of the system) may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent exemplary functional relationships and/or physical couplings between the various elements. It should be noted that many alternative or additional functional relationships or physical connections may be present in a practical communication system.
- Referring now to
FIG. 3 , a block diagram ofendpoint detection system 300 is illustrated, according to one embodiment of the present invention.Endpoint detection system 300 comprisesfeature extraction module 302,endpointer 308 andrecognition system 310. It is noted thatendpointer 308 is also referred to as “endpointer module” 308 in the present application.Feature extraction module 302 further includesenergy computing module 304 andcepstral computing module 306. As shown inFIG. 3 ,speech signal 301 is received by bothfeature extraction module 302 andendpointer 308.Speech signal 301 can be, for example, an utterance or other speech data received byendpoint detection system 300, typically in digitized form. The signal characteristics ofspeech signal 301 may vary depending on the type of recording environment and the sources of noise surrounding the signal, as is known in the art. According to the present embodiment, the role offeature extraction module 302 andendpointer 308 is to process speech signal 301 on a frame-by-frame basis in order toendpoint speech signal 301 for actual speech activity. - Continuing with
FIG. 3 , according to the present embodiment,speech signal 301 is received and processed by bothfeature extraction module 302 andendpointer 308. As the initial frames ofspeech signal 301 are received byendpoint detection system 300,feature extraction module 302 andendpointer 308 generate a characterization of the background/silence ofspeech signal 301 based on the initial frames. In order to characterize the background/silence and continue with the endpointing process, it is desirable to receive the first approximately 100 msec of the speech signal without any speech activity therein. If speech activity is present too soon, then the characterization of the background/silence may not be accurate. - In the present embodiment, as part of the initial characterization of background/silence,
endpointer 308 is configured to measure the energy value of the initial frames of thespeech signal 301 and, based on that measurement, to determine whether there is speech activity in the first approximately 100 msec ofspeech signal 301. Depending on the window size of the individual input frames as well as the frame rate, the first approximately 100 msec can be contained in, for example, the first 4, 8 or 10 frames of input speech. As a specific example, given a window size of 30 msec and a frame rate of 20 msec, the characterization of the background/silence may be based on the initial four overlapping frames. It is noted that the frames on which the characterization of background/silence is based are also referred to as the “initial frames” or a “first portion” in the present application. The determination of whether there is speech activity in the initial approximately 100 msec is achieved by measuring the energy values of the initial four frames and comparing them to a predefined threshold energy value.Endpointer 308 can be configured to determine if any of the initial frames contain actual speech activity by comparing the energy value of each of the initial frames to the predefined threshold energy value. If any frame has an energy value higher than the predefined threshold energy value,endpointer 308 would conclude that the frame contains actual speech activity. In one embodiment, the predefined energy threshold is set relatively high such that a determination byendpointer 308 that there is indeed speech activity in the initial approximately 100 msec can be accepted with confidence. - Continuing with the present example, if
endpointer 308 determines that there is speech activity within approximately the first 100 msec, i.e. in the initial four frames ofspeech signal 301, the characterization of the background/silence for the purpose ofendpointing speech signal 301 stops. As discussed above, the presence of actual speech activity within the first approximately 100 msec may result in inaccurate characterization of background/silence. Accordingly, if actual speech activity is found in the first approximately 100 msec, it is desirable that the endpointing of the speech signal be halted. In such event,endpoint detection system 300 can be configured to prompt the speaker that the speaker has spoken too soon and to further prompt the speaker to try again. On the other hand, if the energy value of each of the initial four frames as measured byendpointer 308 is below the preset threshold energy value,endpointer 308 may conclude that no speech activity is present in the initial four frames. The initial four frames will then serve as the basis for the characterization of background/silence forspeech signal 301. - Continuing with
FIG. 3 , onceendpointer 308 determines that the initial four frames do not contain speech activity,endpointer 308 computes the average background/silence (“Esilence”) forspeech signal 301 by averaging the energy across all four frames. It is noted that Esilence is also referred to as “background energy” in the present application. As will be explained below, Esilence is used to classify subsequent frames ofspeech signal 301 as either speech or non-speech.Endpointer 308 also signalscepstral computing module 306 offeature extraction module 302 to extract certain speech-related features, or feature sets, from the initial four frames. In most speech recognition systems, these features sets are used to recognize speech by matching them to a set of speech models that are pre-trained on similar features extracted from a training speech data. For example,feature extraction module 302 can be configured to extract cepstral feature sets fromspeech signal 301 in a manner known in the art. In the present embodiment,cepstral computing module 306 computes a cepstral vector (“cj”) for each of the initial four frames. The cepstral vectors for the four frames are used bycepstral computing module 306 to compute a mean cepstral vector (“Cmean”) according toEquation 1, below: -
- where NF is the number of frames (e.g. NF=4 in the present example), and cj(i) is the cepstral coefficient corresponding to the jth frame. The resulting vector, Cmean, which is also referred to as “mean distance” in this application, represents the average spectral characteristics of background/silence across the initial four frames of the speech signal.
- Once Cmean has been determined,
cepstral computing module 306 measures the Euclidean distance between each of the four frames of background/silence and the mean cepstral vector, Cmean. The Euclidean distance is computed bycepstral computing module 306 according to Equation 2, below: -
- where dj is the Euclidean distance between frame j and the mean cepstral vector Cmean, p is the order of the cepstral analysis, cj(i) are the elements of the jth frame cepstral vector, and cmean(i) are the elements of the background/silence mean cepstral vector, Cmean.
- Following the computation of the Euclidean distance between each of the four frames of background/silence and the mean cepstral vector, Cmean, according to Equation 2 above,
cepstral computing module 306 computes the average distance, Dsilence, between the first four frames and the average cepstral vector, Cmean. Equation 3, below, is used to compute Dsilence; -
- where Dsilence is the average Euclidean distance between the first four frames and Cmean, dj is the Euclidean distance between frame j and the mean cepstral vector, Cmean, and NF is the number of frames (e.g. NF=4 in the present example). Thereafter,
feature extraction module 302 providesendpointer 308 with its computations, i.e. with the values for Dsilence and Cmean. It is noted that Dsilence is also referred to as “average distance” in the present application. - Following the computation of Esilence by
endpointer 308, and Dsilence and Cmean bycepstral computing module 306,endpoint detection system 300 proceeds with endpointing the remaining frames ofspeech signal 301. It is noted that the remaining frames ofspeech signal 301 are also referred to as a “second portion” in the present application. The remaining frames ofspeech signal 301 are received sequentially byfeature extraction module 302. According to the present embodiment, once the characterization of background/silence has been completed, only two parameters need be computed for each of the subsequent frames in order to determine if it is speech or non-speech. - As shown in
FIG. 3 , the subsequent frames ofspeech signal 301 are received byenergy computing module 304 andcepstral computing module 306 offeature extraction module 302. It is noted that each such subsequent incoming frame ofspeech signal 301 is also referred to as “next frame” or “frame k” in the present application. Further, the frames subsequent to the initial frames of the speech signal are also referred to as a “second portion” in the present application.Energy computing module 304 can be configured to compute the frame energy, Ek, of each incoming frame ofspeech signal 301 in a manner known in the art.Cepstral computing module 306 can be configured to compute a simple Euclidean distance, dk, between the current cepstral vector for frame k and the mean cepstral vector Cmean according to equation 4 below: -
- where p is the order of the cepstral analysis, ck(i) are the elements of the current cepstral vector and cmean(1) are the elements of the background mean cepstral vector. After Ek and dk are computed,
feature extraction module 302 sends the information toendpointer 308 for further endpoint processing. It is appreciated thatfeature extraction module 302 computes Ek and dk for each frame ofspeech signal 301 as the frame is received byextraction module 302. In other words, the computations are done “on the fly.” Further,endpointer 308 receives the information, i.e. Ek and dk, fromfeature extraction module 302 on the fly as well. - Continuing with
FIG. 3 ,endpointer 308 uses the information it receives fromfeature extraction module 302 in order to classify whether a frame ofspeech signal 301 is speech or non-speech. An input frame is classified as speech, i.e. it has actual speech activity, if it satisfies any one of the following three conditions: -
E k>κ*E silence Condition 1 -
d k>α*D silence and E k>β*E silence Condition 2 -
d k >D silence and E k>η*E silence Condition 3 - where Esilence is the mean background/silence computed by
endpointer 308 based on the initial approximately 100 msec, e.g. the first four frames, ofspeech signal 301, Dsilence is the average Euclidean distance between the first four frames and Cmean, dk is the cepstral distance between the “current” frame k and Cmean, Ek is the energy of the current frame k, and α, β, κ and η are values determined experimentally and incorporated into the present endpointing algorithm. For example, in one embodiment, α can be set at 3, β can be set at 0.75, κ can be set at 1.3, and η can be set at 1.1. - From the three conditions set forth above, i.e.
Conditions endpoint detection system 300 endpoints speech based on various factors in addition to energy. For the energy-based component of the present embodiment, i.e.Condition 1, a preset threshold energy value is attained by adding a predetermined constant value κ to the average silence energy, Esilence. The value of κ can be determined experimentally and based on an understanding of the difference in energy values for speech versus non-speech. According toCondition 1, an input frame is classified as speech if its energy value, as measured byenergy computation module 304, is greater than κ*Esilence. It is appreciated, however, that in environments where the background noise is high, an endpointer using exclusively an energy-based threshold could erroneously categorize some leading or trailing low-energy sounds such as fricatives as non-speech. Conversely, the endpointer might mistakenly classify high energy sounds such as clicks, pops and sharp noises as speech. At other times, the endpointer might be triggered falsely by noise and completely miss the endpoints of actual speech activity. Accordingly, relying solely on an energy-based endpointing mechanism has many shortcomings. - Thus, in order to overcome such shortcomings associated with endpointing based on energy values alone, the present endpointer considers other parameters. Hence,
Conditions 2 and 3 are included to complementCondition 1 and to increase the robustness of the endpointing outcome. Condition 2 ensures that a low-energy sound will be properly classified as speech if it possesses similar spectral characteristics to speech (i.e. if the cepstral distance between the “current” frame and silence, dk, is large).Condition 3 ensures that high energy sounds are classified as speech only if they have similar spectral characteristics to speech. - Continuing with
FIG. 3 , the data computed byfeature extraction module 302 andendpointer 308 can be sent torecognition system 310. In one embodiment,feature extraction 302 only sendsrecognition system 310 those feature sets corresponding to frames ofspeech signal 301 which have been determined to contain actual speech activity. The feature sets can be used byspeech recognition system 310 for speech recognition processing in a manner known in the art. Thus,endpoint detection system 300 achieves greater endpoint accuracy while keeping computational costs to a minimum by taking advantage of feature sets that would otherwise be computed as part of conventional speech recognition processing and using them for endpointing purposes. - Referring now to
FIG. 4 ,graph 400 illustrates the results of endpointing utilizingendpoint detection system 300 ofFIG. 3 .Graph 400 shows the outcome of anendpoint detection system 300, which classifies speech versus non-speech based on both cepstral distance and energy. More particularly,graph 400 shows how the utilization ofConditions graph 400, energy (axis 404) is plotted against cepstral distance (axis 402). In order to facilitate discussion ofgraph 400, references will be made toConditions point 406 ingraph 400 equals 3 * Dsilence,point 408 equals Dsilence,point 410 equals 0.75 * Esilence,point 412 equals 1.1 * Esilence andpoint 414 equals 1.3 * Esilence. - As shown in
graph 400,total speech region 418 comprisesspeech region 420,speech region 422 andspeech region 424, while background/silence or “non-speech” is grouped insilence region 416.Speech region 420 includes all frames of an input speech signal, such asspeech signal 301, whichendpoint detection system 300 determines to satisfyCondition 1. In other words, frames of the speech signal which have energy values that exceed (1.3 * Esilence) would be classified as speech and plotted inspeech region 420.Speech region 422 includes the frames of the input speech signal whichendpoint detection system 300 determines to satisfy Condition 2, that is those frames which have cepstral distances greater than (3 * Dsilence) and energy values greater than (0.75 * Esilence).Speech region 424 includes the frames of the input speech signal which the present endpoint detection system determines to satisfyCondition 3, that is those frames which have cepstral distances greater than (Dsilence) and energy values greater than (1.1 * Esilence). It should be noted that a speech signal may have frames exhibiting characteristics that would satisfy more than one of the three Conditions. For example, a frame may have an energy value that exceeds (1.3 * Esilence) while also having a cepstral distance greater than (3 * Dsilence). The combination of high energy and cepstral distance means that the characteristics of this frame would satisfy all three Conditions. Thus, althoughspeech regions graph 400 as separate and distinct regions, it is appreciated that certain regions can overlap. - The advantages of
endpoint detection system 300, which relies on both the energy and the cepstral feature sets of the speech signal to endpoint speech are apparent whengraph 400 ofFIG. 4 is compared to graph 200 ofFIG. 2 . It is recalled thatgraph 200 illustrated the endpointing outcome of a conventional energy-based endpoint detection system. Thus, whereasgraph 200 shows an “all-or-nothing” result,graph 400 reveals a more discerning endpointing system. For instance,graph 400 “recaptures” frames of speech activity that would otherwise be classified as background/silence or non-speech by a conventional energy-based endpoint detection system. More specifically, a conventional energy-based endpoint detection system would not classify as speech the frames falling inspeech regions graph 400. - Referring now to
FIG. 5 , a flow diagram ofmethod 500 for endpointing beginning of speech according to one embodiment of the present invention is illustrated. Although all frames in the present embodiment have a 30 msec frame size with a frame rate of 20 msec, it should be appreciated that other frame sizes and frame rates may be used without departing from the scope and spirit of the present invention. - As shown,
method 500 for endpointing the beginning of speech starts atstep 510 whenspeech signal 501, which can correspond, for example, to speech signal 301 ofFIG. 3 , is received byendpoint detection system 300. More particularly, the first frame ofspeech signal 501, i.e. “next frame,” is received by the system's endpointer, e.g. endpointer 308 inFIG. 3 , which measures the energy value of the frame in a manner known in the art. Atstep 512, the measured energy value of the frame is compared to a preset threshold energy value (“Ethreshold”). Ethreshold can be established experimentally and based on an understanding of the expected differences in energy values between background/silence and actual speech activity. - If it is determined at
step 512 that the energy value of the frame is equal to or greater than Ethreshold, the endpointer classifies the frame as speech. The process then proceeds to step 514 where counter variable N is set to zero. Counter variable N tracks the number of frames initially received by the endpoint detection system, which does not exceed Ethreshold. Thus, when a frame energy exceeds Ethreshold, counter variable N is set to zero and the speaker is notified that the speaker has spoken too soon. Because the first five frames of the speech signal (or first 100 msec, given a 30 msec window size and a 20 msec frame rate) will be used to characterize background/silence, it is preferred that there be no actual speech activity in the first five frames. Thus, if the endpointer determines that there is actual speech activity in the first five frames, endpointing ofspeech signal 501 halts, and the process returns to the beginning to where a new speech signal can be received. - If it is determined at
step 512 that the energy value of the received frame, i.e. next frame, is less that Ethreshold,method 500 proceeds to step 516 where counter variable N is incremented by 1. Atstep 518, it is determined whether counter variable N is equal to five, i.e. whether 100 msec of speech input have been received without actual speech activity. If counter variable N is less than 5,method 500 for endpointing the beginning of speech returns to step 510 where the next frame ofspeech signal 501 is received by the endpointer. - If it is determined at
step 518 that counter variable N is equal to 5, thenmethod 500 for endpointing the beginning of speech proceeds to step 520 where Esilence is computed by averaging the energy across all five frames received by the endpointer. Esilence represents the average background/silence ofspeech signal 501 and is computed by averaging the energy values of the five frames. Following, atstep 522, the endpointer signals the feature extraction module, e.g.feature extraction module 302 ofFIG. 3 , to calculate Cmean, which represents the average spectral characteristics of background/silence of the five frames received by the endpoint detection system. As discussed above in relation toFIG. 3 , Cmean is computed according toEquation 1 shown above. Atstep 524, Dsilence is computed according toEquations 2 and 3 shown above, wherein NF is equal to five. Dsilence represents the average distance between the first five frames and the average cepstral vector representing background characteristics, Cmean. - Once Esilence, Cmean and Dsilence have been computed in
steps method 500 for endpointing the beginning of speech proceeds to step 526. Atstep 526,endpoint detection system 300 receives the following frame (“frame k”) ofspeech signal 501.Method 500 then proceeds to step 528 where the frame energy of frame k (“Ek”) is computed. Computation of Ek is done in a manner well known in the art. Following, atstep 530, the Euclidean distance (“dk”) between the cepstral vector for frame k and Cmean is computed. Euclidean distance dk is computed according to Equation 4 shown above. - Next,
method 500 for endpointing the beginning of speech proceeds to step 532 where the characteristics of frame k, i.e. Ek and dk, are utilized to determine whether frame k should be classified as speech or non-speech. More particularly, atstep 532, it is determined whether frame k satisfies any of three conditions utilized by the present endpoint detection system to classify input frames as speech or non-speech. These three conditions are shown above asConditions Conditions step 532, at least one of the threeConditions Method 500 for endpointing the beginning of speech then returns to step 526, where the next frame ofspeech signal 501 is received. - If it is determined, at
step 532, that frame k satisfies at least one of the threeConditions method 500 for endpointing the beginning of speech continues to step 536, where counter variable T is incremented by one. Next, atstep 538, it is determined whether counter variable T is equal to five. If counter variable T is not equal to five,method 500 for endpointing the beginning of speech returns to step 526 where the next frame ofspeech signal 501 is received by the endpoint detection system. On the other hand, if it is determined, atstep 538, that counter variable T is equal to five, it indicates that the endpointer has classified five consecutive frames, i.e. 100 msec, ofspeech signal 501 as having actual speech activity.Method 500 for endpointing the beginning of speech would then proceed to step 540, where the endpointer declares that the beginning of speech has been found. In one embodiment, the endpointer may be configured to “go back” approximately 100-200 msec ofinput speech signal 501 to ensure that no actual speech activity is bypassed. The endpointer can then signal the recognition component of the speech recognition system to begin “recognizing” the incoming speech. After the beginning of speech has been declared atstep 540,method 500 for endpointing the beginning of speech ends atstep 542. - Referring now to
FIG. 6 , a flow diagram ofmethod 600 for endpointing the end of speech, according to one embodiment of the present invention is illustrated.Method 600 for endpointing the end of speech begins at step 610, whereendpoint detection system 300 receives frame k ofspeech signal 601.Speech signal 601 can correspond to, for example, speech signal 301 ofFIG. 3 and speech signal 501 ofFIG. 5 . It is noted that prior to step 610, the beginning of actual speech activity inspeech signal 601 has already been declared by the endpointer. Thus,method 600 for endpointing the end of speech is directed towards determining when the speech activity inspeech signal 601 ends. Thus, frame k here represents the next frame received by the endpoint detection system following the declaration of beginning of speech. - Once frame k has been received at step 610,
method 600 for endpointing the end of speech proceeds to step 612, where endpointer 308 measures the energy of frame k (“Ek”) in a manner known in the art. Following, atstep 614, the Euclidean distance (“dk”) between the cepstral vector for frame k and Cmean is computed. Euclidean distance dk is computed according to Equation 4 shown above, while Cmean, which represents the average spectral characteristics of background/silence ofspeech signal 601, is computed according toEquation 1 shown above. - Next,
method 600 for endpointing the end of speech proceeds to step 616 where the characteristics of frame k, i.e. Ek and dk, are utilized to determine whether frame k should be classified as speech or non-speech. More particularly, atstep 616, it is determined whether frame k satisfies any of three conditions utilized by the present endpoint detection system to classify input frames as speech or non-speech. These three conditions are shown above asConditions Conditions speech signal 601 that have been classified as silence without encountering at least five consecutive frames classified as speech. Counter variable Y tracks the number of consecutive frames classified as speech, i.e. the number of consecutive frames that satisfy any of the threeConditions - After counter variable Y has been incremented at
step 618,method 600 for endpointing the end of speech proceeds to step 620 where it is determined whether counter variable Y is equal to or greater than five. Since counter variable Y represents the number of consecutive frames classified as speech, determining atstep 620 that counter variable Y is equal to or greater than five would indicate that at least 100 msec of actual speech activity have been consecutively classified. In such event,method 600 proceeds to step 622 where counter variable X is reset to zero. If it is instead determined, atstep 620, that counter variable Y is less than five,method 600 returns to step 610 where the next frame ofspeech signal 601 is received and processed. - Referring again to step 616 of
method 600 for endpointing the end of speech, if it is determined atstep 616 that the characteristics of frame k, i.e. Ek and dk, do not satisfy any of the threeConditions Method 600 then proceeds to step 624 where counter variable X is incremented by one, and counter variable Y is reset to zero. Counter variable Y is reset to zero because a non-speech frame has been classified. - Next,
method 600 for endpointing the end of speech proceeds to step 626, where it is determined whether counter variable X is equal to 20. According to the present embodiment, counter variable X equaling 20 indicates that the endpoint detection system has processed 20 frames or 400 msec ofspeech signal 601 without classifying consecutively at least 5 frames or 100 msec of actual speech activity. In other words, 400 consecutive milliseconds ofspeech signal 601 have been endpointed without encountering 100 consecutive milliseconds of speech activity. Thus, if it is determined atstep 626 that counter variable X is less than 20, thenmethod 600 returns to step 610, where the next frame ofspeech signal 601 can be received and endpointed. However, if it is determined instead that counter variable X is equal to 20,method 600 for endpointing the end of speech proceeds to step 628 where the endpointer can declare that the end of speech forspeech signal 601 has been found. In one embodiment, the endpointer may be configured to “go back” approximately 100-200 msec ofinput speech signal 601 and declare that speech actually ended approximately 100-200 msec prior to the current frame k. After end of speech has been declared atstep 628,method 600 for endpointing the end of speech ends atstep 630. - As described above in connection with some embodiments, the present invention overcomes many shortcomings of conventional approaches and has many advantages. For example, the present invention improves endpointing by relying on more than just the energy of the speech signal. More particularly, the spectral characteristics of the speech signal is taken into account, resulting in a more discerning endpointing mechanism. Further, because the characterization of background/silence is computed for each new input speech signal rather than being preset, greater endpointing accuracy is achieved. The characterization of background/silence for each input speech signal also translates to better handling of background noise, since the environmental conditions in which the speech signal is recorded are taken into account. Additionally, by using a readily available feature set, e.g. the cepstral feature set, the present invention is able to achieve improvements in endpointing speech with relatively low computational costs. Even more, the advantages of the present invention are accomplished in real-time.
- The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/438,715 US20120191455A1 (en) | 2001-03-02 | 2012-04-03 | System and Method for an Endpoint Detection of Speech for Improved Speech Recognition in Noisy Environments |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US27295601P | 2001-03-02 | 2001-03-02 | |
US09/948,331 US7277853B1 (en) | 2001-03-02 | 2001-09-05 | System and method for a endpoint detection of speech for improved speech recognition in noisy environments |
US11/903,290 US20080021707A1 (en) | 2001-03-02 | 2007-09-21 | System and method for an endpoint detection of speech for improved speech recognition in noisy environment |
US12/459,168 US8175876B2 (en) | 2001-03-02 | 2009-06-25 | System and method for an endpoint detection of speech for improved speech recognition in noisy environments |
US13/438,715 US20120191455A1 (en) | 2001-03-02 | 2012-04-03 | System and Method for an Endpoint Detection of Speech for Improved Speech Recognition in Noisy Environments |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/459,168 Continuation US8175876B2 (en) | 2001-03-02 | 2009-06-25 | System and method for an endpoint detection of speech for improved speech recognition in noisy environments |
Publications (1)
Publication Number | Publication Date |
---|---|
US20120191455A1 true US20120191455A1 (en) | 2012-07-26 |
Family
ID=38535897
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/948,331 Expired - Fee Related US7277853B1 (en) | 2001-03-02 | 2001-09-05 | System and method for a endpoint detection of speech for improved speech recognition in noisy environments |
US11/903,290 Abandoned US20080021707A1 (en) | 2001-03-02 | 2007-09-21 | System and method for an endpoint detection of speech for improved speech recognition in noisy environment |
US12/459,168 Expired - Fee Related US8175876B2 (en) | 2001-03-02 | 2009-06-25 | System and method for an endpoint detection of speech for improved speech recognition in noisy environments |
US13/438,715 Abandoned US20120191455A1 (en) | 2001-03-02 | 2012-04-03 | System and Method for an Endpoint Detection of Speech for Improved Speech Recognition in Noisy Environments |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/948,331 Expired - Fee Related US7277853B1 (en) | 2001-03-02 | 2001-09-05 | System and method for a endpoint detection of speech for improved speech recognition in noisy environments |
US11/903,290 Abandoned US20080021707A1 (en) | 2001-03-02 | 2007-09-21 | System and method for an endpoint detection of speech for improved speech recognition in noisy environment |
US12/459,168 Expired - Fee Related US8175876B2 (en) | 2001-03-02 | 2009-06-25 | System and method for an endpoint detection of speech for improved speech recognition in noisy environments |
Country Status (1)
Country | Link |
---|---|
US (4) | US7277853B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9437186B1 (en) * | 2013-06-19 | 2016-09-06 | Amazon Technologies, Inc. | Enhanced endpoint detection for speech recognition |
Families Citing this family (190)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7277853B1 (en) * | 2001-03-02 | 2007-10-02 | Mindspeed Technologies, Inc. | System and method for a endpoint detection of speech for improved speech recognition in noisy environments |
US6885735B2 (en) * | 2001-03-29 | 2005-04-26 | Intellisist, Llc | System and method for transmitting voice input from a remote location over a wireless data channel |
US7756709B2 (en) * | 2004-02-02 | 2010-07-13 | Applied Voice & Speech Technologies, Inc. | Detection of voice inactivity within a sound stream |
JP4667082B2 (en) * | 2005-03-09 | 2011-04-06 | キヤノン株式会社 | Speech recognition method |
US20070033042A1 (en) * | 2005-08-03 | 2007-02-08 | International Business Machines Corporation | Speech detection fusing multi-class acoustic-phonetic, and energy features |
US7962340B2 (en) * | 2005-08-22 | 2011-06-14 | Nuance Communications, Inc. | Methods and apparatus for buffering data for use in accordance with a speech recognition system |
JP2007057844A (en) * | 2005-08-24 | 2007-03-08 | Fujitsu Ltd | Speech recognition system and speech processing system |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US11881814B2 (en) | 2005-12-05 | 2024-01-23 | Solaredge Technologies Ltd. | Testing of a photovoltaic panel |
US10693415B2 (en) | 2007-12-05 | 2020-06-23 | Solaredge Technologies Ltd. | Testing of a photovoltaic panel |
US8775168B2 (en) * | 2006-08-10 | 2014-07-08 | Stmicroelectronics Asia Pacific Pte, Ltd. | Yule walker based low-complexity voice activity detector in noise suppression systems |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
JP5151102B2 (en) * | 2006-09-14 | 2013-02-27 | ヤマハ株式会社 | Voice authentication apparatus, voice authentication method and program |
US8963369B2 (en) | 2007-12-04 | 2015-02-24 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US11728768B2 (en) | 2006-12-06 | 2023-08-15 | Solaredge Technologies Ltd. | Pairing of components in a direct current distributed power generation system |
US11569659B2 (en) | 2006-12-06 | 2023-01-31 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US8319471B2 (en) | 2006-12-06 | 2012-11-27 | Solaredge, Ltd. | Battery power delivery module |
US8618692B2 (en) | 2007-12-04 | 2013-12-31 | Solaredge Technologies Ltd. | Distributed power system using direct current power sources |
US11309832B2 (en) | 2006-12-06 | 2022-04-19 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US11855231B2 (en) | 2006-12-06 | 2023-12-26 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US11735910B2 (en) | 2006-12-06 | 2023-08-22 | Solaredge Technologies Ltd. | Distributed power system using direct current power sources |
US8384243B2 (en) | 2007-12-04 | 2013-02-26 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US11687112B2 (en) | 2006-12-06 | 2023-06-27 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US9130401B2 (en) | 2006-12-06 | 2015-09-08 | Solaredge Technologies Ltd. | Distributed power harvesting systems using DC power sources |
US8947194B2 (en) | 2009-05-26 | 2015-02-03 | Solaredge Technologies Ltd. | Theft detection and prevention in a power generation system |
US9112379B2 (en) | 2006-12-06 | 2015-08-18 | Solaredge Technologies Ltd. | Pairing of components in a direct current distributed power generation system |
US8319483B2 (en) | 2007-08-06 | 2012-11-27 | Solaredge Technologies Ltd. | Digital average input current control in power converter |
US11296650B2 (en) | 2006-12-06 | 2022-04-05 | Solaredge Technologies Ltd. | System and method for protection during inverter shutdown in distributed power installations |
US9088178B2 (en) | 2006-12-06 | 2015-07-21 | Solaredge Technologies Ltd | Distributed power harvesting systems using DC power sources |
US11888387B2 (en) | 2006-12-06 | 2024-01-30 | Solaredge Technologies Ltd. | Safety mechanisms, wake up and shutdown methods in distributed power installations |
US8473250B2 (en) | 2006-12-06 | 2013-06-25 | Solaredge, Ltd. | Monitoring of distributed power harvesting systems using DC power sources |
US8816535B2 (en) | 2007-10-10 | 2014-08-26 | Solaredge Technologies, Ltd. | System and method for protection during inverter shutdown in distributed power installations |
US8013472B2 (en) | 2006-12-06 | 2011-09-06 | Solaredge, Ltd. | Method for distributed power harvesting using DC power sources |
US8886540B2 (en) | 2007-03-07 | 2014-11-11 | Vlingo Corporation | Using speech recognition results based on an unstructured language model in a mobile communication facility application |
US20110054898A1 (en) * | 2007-03-07 | 2011-03-03 | Phillips Michael S | Multiple web-based content search user interface in mobile search application |
US8635243B2 (en) | 2007-03-07 | 2014-01-21 | Research In Motion Limited | Sending a communications header with voice recording to send metadata for use in speech recognition, formatting, and search mobile search application |
US8949266B2 (en) | 2007-03-07 | 2015-02-03 | Vlingo Corporation | Multiple web-based content category searching in mobile search application |
US8880405B2 (en) | 2007-03-07 | 2014-11-04 | Vlingo Corporation | Application text entry in a mobile environment using a speech processing facility |
US8949130B2 (en) | 2007-03-07 | 2015-02-03 | Vlingo Corporation | Internal and external speech recognition use with a mobile communication facility |
US8886545B2 (en) | 2007-03-07 | 2014-11-11 | Vlingo Corporation | Dealing with switch latency in speech recognition |
US10056077B2 (en) | 2007-03-07 | 2018-08-21 | Nuance Communications, Inc. | Using speech recognition results based on an unstructured language model with a music system |
US8838457B2 (en) | 2007-03-07 | 2014-09-16 | Vlingo Corporation | Using results of unstructured language model based speech recognition to control a system-level function of a mobile communications facility |
CN101636784B (en) * | 2007-03-20 | 2011-12-28 | 富士通株式会社 | Speech recognition system, and speech recognition method |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US11264947B2 (en) | 2007-12-05 | 2022-03-01 | Solaredge Technologies Ltd. | Testing of a photovoltaic panel |
US8049523B2 (en) | 2007-12-05 | 2011-11-01 | Solaredge Technologies Ltd. | Current sensing on a MOSFET |
WO2009072075A2 (en) | 2007-12-05 | 2009-06-11 | Solaredge Technologies Ltd. | Photovoltaic system power tracking method |
EP2232663B2 (en) | 2007-12-05 | 2021-05-26 | Solaredge Technologies Ltd. | Safety mechanisms, wake up and shutdown methods in distributed power installations |
WO2009073867A1 (en) | 2007-12-05 | 2009-06-11 | Solaredge, Ltd. | Parallel connected inverters |
TWI356399B (en) * | 2007-12-14 | 2012-01-11 | Ind Tech Res Inst | Speech recognition system and method with cepstral |
US20090198490A1 (en) * | 2008-02-06 | 2009-08-06 | International Business Machines Corporation | Response time when using a dual factor end of utterance determination technique |
EP2269290B1 (en) | 2008-03-24 | 2018-12-19 | Solaredge Technologies Ltd. | Switch mode converter including active clamp for achieving zero voltage switching |
EP2294669B8 (en) | 2008-05-05 | 2016-12-07 | Solaredge Technologies Ltd. | Direct current power combiner |
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
US10255566B2 (en) | 2011-06-03 | 2019-04-09 | Apple Inc. | Generating and processing task items that represent tasks to perform |
CN102044242B (en) * | 2009-10-15 | 2012-01-25 | 华为技术有限公司 | Method, device and electronic equipment for voice activation detection |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US9634855B2 (en) | 2010-05-13 | 2017-04-25 | Alexander Poltorak | Electronic personal interactive device that determines topics of interest using a conversational agent |
US9465935B2 (en) | 2010-06-11 | 2016-10-11 | D2L Corporation | Systems, methods, and apparatus for securing user documents |
GB2485527B (en) | 2010-11-09 | 2012-12-19 | Solaredge Technologies Ltd | Arc detection and prevention in a power generation system |
US10673229B2 (en) | 2010-11-09 | 2020-06-02 | Solaredge Technologies Ltd. | Arc detection and prevention in a power generation system |
US10673222B2 (en) | 2010-11-09 | 2020-06-02 | Solaredge Technologies Ltd. | Arc detection and prevention in a power generation system |
US10230310B2 (en) | 2016-04-05 | 2019-03-12 | Solaredge Technologies Ltd | Safety switch for photovoltaic systems |
GB2486408A (en) | 2010-12-09 | 2012-06-20 | Solaredge Technologies Ltd | Disconnection of a string carrying direct current |
GB2483317B (en) | 2011-01-12 | 2012-08-22 | Solaredge Technologies Ltd | Serially connected inverters |
AU2012211067B2 (en) * | 2011-01-28 | 2016-07-21 | Metamodix, Inc. | Anchors and methods for intestinal bypass sleeves |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US8570005B2 (en) | 2011-09-12 | 2013-10-29 | Solaredge Technologies Ltd. | Direct current link circuit |
US20130090926A1 (en) * | 2011-09-16 | 2013-04-11 | Qualcomm Incorporated | Mobile device context information using speech detection |
GB2498365A (en) | 2012-01-11 | 2013-07-17 | Solaredge Technologies Ltd | Photovoltaic module |
GB2498790A (en) | 2012-01-30 | 2013-07-31 | Solaredge Technologies Ltd | Maximising power in a photovoltaic distributed power system |
GB2498791A (en) | 2012-01-30 | 2013-07-31 | Solaredge Technologies Ltd | Photovoltaic panel circuitry |
US9853565B2 (en) | 2012-01-30 | 2017-12-26 | Solaredge Technologies Ltd. | Maximized power in a photovoltaic distributed power system |
GB2499991A (en) | 2012-03-05 | 2013-09-11 | Solaredge Technologies Ltd | DC link circuit for photovoltaic array |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
US10115841B2 (en) | 2012-06-04 | 2018-10-30 | Solaredge Technologies Ltd. | Integrated photovoltaic panel circuitry |
US10354650B2 (en) * | 2012-06-26 | 2019-07-16 | Google Llc | Recognizing speech with mixed speech recognition models to generate transcriptions |
CN103117067B (en) * | 2013-01-19 | 2015-07-15 | 渤海大学 | Voice endpoint detection method under low signal-to-noise ratio |
DE112014000709B4 (en) | 2013-02-07 | 2021-12-30 | Apple Inc. | METHOD AND DEVICE FOR OPERATING A VOICE TRIGGER FOR A DIGITAL ASSISTANT |
US9886968B2 (en) * | 2013-03-04 | 2018-02-06 | Synaptics Incorporated | Robust speech boundary detection system and method |
US9548619B2 (en) | 2013-03-14 | 2017-01-17 | Solaredge Technologies Ltd. | Method and apparatus for storing and depleting energy |
US9941813B2 (en) | 2013-03-14 | 2018-04-10 | Solaredge Technologies Ltd. | High frequency multi-level inverter |
US10652394B2 (en) | 2013-03-14 | 2020-05-12 | Apple Inc. | System and method for processing voicemail |
EP3506370B1 (en) | 2013-03-15 | 2023-12-20 | Solaredge Technologies Ltd. | Bypass mechanism |
US10748529B1 (en) | 2013-03-15 | 2020-08-18 | Apple Inc. | Voice activated device for use with a voice-based digital assistant |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
EP3937002A1 (en) | 2013-06-09 | 2022-01-12 | Apple Inc. | Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant |
DE112014003653B4 (en) | 2013-08-06 | 2024-04-18 | Apple Inc. | Automatically activate intelligent responses based on activities from remote devices |
US8775191B1 (en) | 2013-11-13 | 2014-07-08 | Google Inc. | Efficient utterance-specific endpointer triggering for always-on hotwording |
US10296160B2 (en) | 2013-12-06 | 2019-05-21 | Apple Inc. | Method for extracting salient dialog usage from live data |
US8719032B1 (en) | 2013-12-11 | 2014-05-06 | Jefferson Audio Video Systems, Inc. | Methods for presenting speech blocks from a plurality of audio input data streams to a user in an interface |
US9318974B2 (en) | 2014-03-26 | 2016-04-19 | Solaredge Technologies Ltd. | Multi-level inverter with flying capacitor topology |
US9607613B2 (en) | 2014-04-23 | 2017-03-28 | Google Inc. | Speech endpointing based on word comparisons |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
TWI566107B (en) | 2014-05-30 | 2017-01-11 | 蘋果公司 | Method for processing a multi-part voice command, non-transitory computer readable storage medium and electronic device |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US10152299B2 (en) | 2015-03-06 | 2018-12-11 | Apple Inc. | Reducing response latency of intelligent automated assistants |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10460227B2 (en) | 2015-05-15 | 2019-10-29 | Apple Inc. | Virtual assistant in a communication session |
US10200824B2 (en) | 2015-05-27 | 2019-02-05 | Apple Inc. | Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US10186254B2 (en) * | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10121471B2 (en) * | 2015-06-29 | 2018-11-06 | Amazon Technologies, Inc. | Language model speech endpointing |
US10134425B1 (en) * | 2015-06-29 | 2018-11-20 | Amazon Technologies, Inc. | Direction-based speech endpointing |
US20160378747A1 (en) | 2015-06-29 | 2016-12-29 | Apple Inc. | Virtual assistant for media playback |
CN105261368B (en) * | 2015-08-31 | 2019-05-21 | 华为技术有限公司 | A kind of voice awakening method and device |
US10339917B2 (en) | 2015-09-03 | 2019-07-02 | Google Llc | Enhanced speech endpointing |
US20170069309A1 (en) | 2015-09-03 | 2017-03-09 | Google Inc. | Enhanced speech endpointing |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US10331312B2 (en) | 2015-09-08 | 2019-06-25 | Apple Inc. | Intelligent automated assistant in a media environment |
US10740384B2 (en) | 2015-09-08 | 2020-08-11 | Apple Inc. | Intelligent automated assistant for media search and playback |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
KR101942521B1 (en) | 2015-10-19 | 2019-01-28 | 구글 엘엘씨 | Speech endpointing |
US10269341B2 (en) | 2015-10-19 | 2019-04-23 | Google Llc | Speech endpointing |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10956666B2 (en) | 2015-11-09 | 2021-03-23 | Apple Inc. | Unconventional virtual assistant interactions |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10854192B1 (en) * | 2016-03-30 | 2020-12-01 | Amazon Technologies, Inc. | Domain specific endpointing |
US11177663B2 (en) | 2016-04-05 | 2021-11-16 | Solaredge Technologies Ltd. | Chain of power devices |
US12057807B2 (en) | 2016-04-05 | 2024-08-06 | Solaredge Technologies Ltd. | Chain of power devices |
US11018623B2 (en) | 2016-04-05 | 2021-05-25 | Solaredge Technologies Ltd. | Safety switch for photovoltaic systems |
US11227589B2 (en) | 2016-06-06 | 2022-01-18 | Apple Inc. | Intelligent list reading |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
US10474753B2 (en) | 2016-09-07 | 2019-11-12 | Apple Inc. | Language identification using recurrent neural networks |
CN106710606B (en) * | 2016-12-29 | 2019-11-08 | 百度在线网络技术(北京)有限公司 | Method of speech processing and device based on artificial intelligence |
US11204787B2 (en) | 2017-01-09 | 2021-12-21 | Apple Inc. | Application integration with a digital assistant |
US10417266B2 (en) | 2017-05-09 | 2019-09-17 | Apple Inc. | Context-aware ranking of intelligent response suggestions |
DK201770383A1 (en) | 2017-05-09 | 2018-12-14 | Apple Inc. | User interface for correcting recognition errors |
DK180048B1 (en) | 2017-05-11 | 2020-02-04 | Apple Inc. | MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION |
US10395654B2 (en) | 2017-05-11 | 2019-08-27 | Apple Inc. | Text normalization based on a data-driven learning network |
US10726832B2 (en) | 2017-05-11 | 2020-07-28 | Apple Inc. | Maintaining privacy of personal information |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
US11301477B2 (en) | 2017-05-12 | 2022-04-12 | Apple Inc. | Feedback analysis of a digital assistant |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770428A1 (en) * | 2017-05-12 | 2019-02-18 | Apple Inc. | Low-latency intelligent automated assistant |
DK201770411A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Multi-modal interfaces |
US20180336275A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Intelligent automated assistant for media exploration |
US20180336892A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Detecting a trigger of a digital assistant |
DK179560B1 (en) | 2017-05-16 | 2019-02-18 | Apple Inc. | Far-field extension for digital assistant services |
US10311144B2 (en) | 2017-05-16 | 2019-06-04 | Apple Inc. | Emoji word sense disambiguation |
US10929754B2 (en) | 2017-06-06 | 2021-02-23 | Google Llc | Unified endpointer using multitask and multidomain learning |
EP3577645B1 (en) | 2017-06-06 | 2022-08-03 | Google LLC | End of query detection |
CN108280188A (en) * | 2018-01-24 | 2018-07-13 | 成都安信思远信息技术有限公司 | Intelligence inspection business platform based on big data |
US10592604B2 (en) | 2018-03-12 | 2020-03-17 | Apple Inc. | Inverse text normalization for automatic speech recognition |
US10818288B2 (en) | 2018-03-26 | 2020-10-27 | Apple Inc. | Natural assistant interaction |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
US11145294B2 (en) | 2018-05-07 | 2021-10-12 | Apple Inc. | Intelligent automated assistant for delivering content from user experiences |
US10984780B2 (en) | 2018-05-21 | 2021-04-20 | Apple Inc. | Global semantic word embeddings using bi-directional recurrent neural networks |
US10892996B2 (en) | 2018-06-01 | 2021-01-12 | Apple Inc. | Variable latency device coordination |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
DK201870355A1 (en) | 2018-06-01 | 2019-12-16 | Apple Inc. | Virtual assistant operation in multi-device environments |
DK179822B1 (en) | 2018-06-01 | 2019-07-12 | Apple Inc. | Voice interaction at a primary device to access call functionality of a companion device |
US11386266B2 (en) | 2018-06-01 | 2022-07-12 | Apple Inc. | Text correction |
US11076039B2 (en) | 2018-06-03 | 2021-07-27 | Apple Inc. | Accelerated task performance |
US11010561B2 (en) | 2018-09-27 | 2021-05-18 | Apple Inc. | Sentiment prediction from textual data |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
US10839159B2 (en) | 2018-09-28 | 2020-11-17 | Apple Inc. | Named entity normalization in a spoken dialog system |
US11170166B2 (en) | 2018-09-28 | 2021-11-09 | Apple Inc. | Neural typographical error modeling via generative adversarial networks |
US11475898B2 (en) | 2018-10-26 | 2022-10-18 | Apple Inc. | Low-latency multi-speaker speech recognition |
US11638059B2 (en) | 2019-01-04 | 2023-04-25 | Apple Inc. | Content playback on multiple devices |
US11348573B2 (en) | 2019-03-18 | 2022-05-31 | Apple Inc. | Multimodality in digital assistant systems |
DK201970509A1 (en) | 2019-05-06 | 2021-01-15 | Apple Inc | Spoken notifications |
US11307752B2 (en) | 2019-05-06 | 2022-04-19 | Apple Inc. | User configurable task triggers |
US11423908B2 (en) | 2019-05-06 | 2022-08-23 | Apple Inc. | Interpreting spoken requests |
US11475884B2 (en) | 2019-05-06 | 2022-10-18 | Apple Inc. | Reducing digital assistant latency when a language is incorrectly determined |
US11140099B2 (en) | 2019-05-21 | 2021-10-05 | Apple Inc. | Providing message response suggestions |
DK180129B1 (en) | 2019-05-31 | 2020-06-02 | Apple Inc. | User activity shortcut suggestions |
US11496600B2 (en) | 2019-05-31 | 2022-11-08 | Apple Inc. | Remote execution of machine-learned models |
US11289073B2 (en) | 2019-05-31 | 2022-03-29 | Apple Inc. | Device text to speech |
DK201970510A1 (en) | 2019-05-31 | 2021-02-11 | Apple Inc | Voice identification in digital assistant systems |
US11360641B2 (en) | 2019-06-01 | 2022-06-14 | Apple Inc. | Increasing the relevance of new available information |
US11468890B2 (en) | 2019-06-01 | 2022-10-11 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US11488406B2 (en) | 2019-09-25 | 2022-11-01 | Apple Inc. | Text detection using global geometry estimators |
US11038934B1 (en) | 2020-05-11 | 2021-06-15 | Apple Inc. | Digital assistant hardware abstraction |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
US11984124B2 (en) | 2020-11-13 | 2024-05-14 | Apple Inc. | Speculative task flow execution |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4821325A (en) * | 1984-11-08 | 1989-04-11 | American Telephone And Telegraph Company, At&T Bell Laboratories | Endpoint detector |
US5305422A (en) * | 1992-02-28 | 1994-04-19 | Panasonic Technologies, Inc. | Method for determining boundaries of isolated words within a speech signal |
US5692104A (en) * | 1992-12-31 | 1997-11-25 | Apple Computer, Inc. | Method and apparatus for detecting end points of speech activity |
US5794195A (en) * | 1994-06-28 | 1998-08-11 | Alcatel N.V. | Start/end point detection for word recognition |
US6901362B1 (en) * | 2000-04-19 | 2005-05-31 | Microsoft Corporation | Audio segmentation and classification |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4868879A (en) * | 1984-03-27 | 1989-09-19 | Oki Electric Industry Co., Ltd. | Apparatus and method for recognizing speech |
CA2040025A1 (en) * | 1990-04-09 | 1991-10-10 | Hideki Satoh | Speech detection apparatus with influence of input level and noise reduced |
US5617508A (en) * | 1992-10-05 | 1997-04-01 | Panasonic Technologies Inc. | Speech detection device for the detection of speech end points based on variance of frequency band limited energy |
US6480823B1 (en) * | 1998-03-24 | 2002-11-12 | Matsushita Electric Industrial Co., Ltd. | Speech detection for noisy conditions |
US6321197B1 (en) * | 1999-01-22 | 2001-11-20 | Motorola, Inc. | Communication device and method for endpointing speech utterances |
US6324509B1 (en) * | 1999-02-08 | 2001-11-27 | Qualcomm Incorporated | Method and apparatus for accurate endpointing of speech in the presence of noise |
US6381570B2 (en) * | 1999-02-12 | 2002-04-30 | Telogy Networks, Inc. | Adaptive two-threshold method for discriminating noise from speech in a communication signal |
TW466471B (en) * | 2000-04-07 | 2001-12-01 | Ind Tech Res Inst | Method for performing noise adaptation in voice recognition unit |
US6850887B2 (en) * | 2001-02-28 | 2005-02-01 | International Business Machines Corporation | Speech recognition in noisy environments |
US7277853B1 (en) * | 2001-03-02 | 2007-10-02 | Mindspeed Technologies, Inc. | System and method for a endpoint detection of speech for improved speech recognition in noisy environments |
-
2001
- 2001-09-05 US US09/948,331 patent/US7277853B1/en not_active Expired - Fee Related
-
2007
- 2007-09-21 US US11/903,290 patent/US20080021707A1/en not_active Abandoned
-
2009
- 2009-06-25 US US12/459,168 patent/US8175876B2/en not_active Expired - Fee Related
-
2012
- 2012-04-03 US US13/438,715 patent/US20120191455A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4821325A (en) * | 1984-11-08 | 1989-04-11 | American Telephone And Telegraph Company, At&T Bell Laboratories | Endpoint detector |
US5305422A (en) * | 1992-02-28 | 1994-04-19 | Panasonic Technologies, Inc. | Method for determining boundaries of isolated words within a speech signal |
US5692104A (en) * | 1992-12-31 | 1997-11-25 | Apple Computer, Inc. | Method and apparatus for detecting end points of speech activity |
US5794195A (en) * | 1994-06-28 | 1998-08-11 | Alcatel N.V. | Start/end point detection for word recognition |
US6901362B1 (en) * | 2000-04-19 | 2005-05-31 | Microsoft Corporation | Audio segmentation and classification |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9437186B1 (en) * | 2013-06-19 | 2016-09-06 | Amazon Technologies, Inc. | Enhanced endpoint detection for speech recognition |
Also Published As
Publication number | Publication date |
---|---|
US20100030559A1 (en) | 2010-02-04 |
US20080021707A1 (en) | 2008-01-24 |
US7277853B1 (en) | 2007-10-02 |
US8175876B2 (en) | 2012-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7277853B1 (en) | System and method for a endpoint detection of speech for improved speech recognition in noisy environments | |
EP1019904B1 (en) | Model enrollment method for speech or speaker recognition | |
KR100312919B1 (en) | Method and apparatus for speaker recognition | |
Martin et al. | Robust speech/non-speech detection using LDA applied to MFCC | |
EP0691022B1 (en) | Speech recognition with pause detection | |
US6223155B1 (en) | Method of independently creating and using a garbage model for improved rejection in a limited-training speaker-dependent speech recognition system | |
US8271283B2 (en) | Method and apparatus for recognizing speech by measuring confidence levels of respective frames | |
KR100754384B1 (en) | Method and apparatus for robust speaker localization and camera control system employing the same | |
US20150112682A1 (en) | Method for verifying the identity of a speaker and related computer readable medium and computer | |
EP1159737B9 (en) | Speaker recognition | |
US7072836B2 (en) | Speech processing apparatus and method employing matching and confidence scores | |
US20020165713A1 (en) | Detection of sound activity | |
Moattar et al. | A new approach for robust realtime voice activity detection using spectral pattern | |
EP1023718B1 (en) | Pattern recognition using multiple reference models | |
Özaydın | Examination of energy based voice activity detection algorithms for noisy speech signals | |
US5806031A (en) | Method and recognizer for recognizing tonal acoustic sound signals | |
JPH0222960B2 (en) | ||
Mengusoglu et al. | Use of acoustic prior information for confidence measure in ASR applications. | |
US7292981B2 (en) | Signal variation feature based confidence measure | |
KR100940641B1 (en) | Utterance verification system and method using word voiceprint models based on probabilistic distributions of phone-level log-likelihood ratio and phone duration | |
JPS60114900A (en) | Voice/voiceless discrimination | |
Lee et al. | Space-time voice activity detection | |
Ming et al. | Union: a model for partial temporal corruption of speech | |
Renevey et al. | Introduction of a reliability measure in missing data approach for robust speech recognition | |
JPH034918B2 (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MINDSPEED TECHNOLOGIES, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CONEXANT SYSTEMS, INC.;REEL/FRAME:028044/0187 Effective date: 20030627 Owner name: WIAV SOLUTIONS, LLC, VIRGINIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MINDSPEED TECHNOLOGIES, INC.;REEL/FRAME:028044/0394 Effective date: 20100917 Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BOU-GHAZALE, SAHAR E.;ASADI, AYMAN;ASSALEH, KHALED;SIGNING DATES FROM 20010830 TO 20010831;REEL/FRAME:028043/0479 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |