The disclosed embodiments relate to systems and methods for detecting and processing a desired signal in the presence of acoustic noise.
Many noise suppression algorithms and techniques have been developed over the years. Most of the noise suppression systems in use today for speech communication systems are based on a single-microphone spectral subtraction technique first develop in the 1970's and described, for example, by S. F. Boll in “Suppression of Acoustic Noise in Speech using Spectral Subtraction,” IEEE Trans. on ASSP, pp. 113-120, 1979. These techniques have been refined over the years, but the basic principles of operation have remained the same. See, for example, U.S. Pat. No. 5,687,243 of McLaughlin, et al., and U.S. Pat. No. 4,811,404 of Vilmur, et al. Generally, these techniques make use of a microphone-based Voice Activity Detector (VAD) to determine the background noise characteristics, where “voice” is generally understood to include human voiced speech, unvoiced speech, or a combination of voiced and unvoiced speech.
The VAD has also been used in digital cellular systems. As an example of such a use, see U.S. Pat. No. 6,453,291 of Ashley, where a VAD configuration appropriate to the front-end of a digital cellular system is described. Further, some Code Division Multiple Access (CDMA) systems utilize a VAD to minimize the effective radio spectrum used, thereby allowing for more system capacity. Also, Global System for Mobile Communication (GSM) systems can include a VAD to reduce co-channel interference and to reduce battery consumption on the client or subscriber device.
These typical microphone-based VAD systems are significantly limited in capability as a result of the addition of environmental acoustic noise to the desired speech signal received by the single microphone, wherein the analysis is performed using typical signal processing techniques. In particular, limitations in performance of these microphone-based VAD systems are noted when processing signals having a low signal-to-noise ratio (SNR), and in settings where the background noise varies quickly. Thus, similar limitations are found in noise suppression systems using these microphone-based VADs.
The following description provides specific details for a thorough understanding of, and enabling description for, embodiments of the noise suppression system. However, one skilled in the art will understand that the invention may be practiced without these details. In other instances, well-known structures and functions have not been shown or described in detail to avoid unnecessarily obscuring the description of the embodiments of the noise suppression system. In the following description, “signal” represents any acoustic signal (such as human speech) that is desired, and “noise” is any acoustic signal (which may include human speech) that is not desired. An example would be a person talking on a cellular telephone with a radio in the background. The person's speech is desired and the acoustic energy from the radio is not desired. In addition, “user” describes a person who is using the device and whose speech is desired to be captured by the system.
Also, “acoustic” is generally defined as acoustic waves propagating in air. Propagation of acoustic waves in media other than air will be noted as such. References to “speech” or “voice” generally refer to human speech including voiced speech, unvoiced speech, and/or a combination of voiced and unvoiced speech. Unvoiced speech or voiced speech is distinguished where necessary. The term “noise suppression” generally describes any method by which noise is reduced or eliminated in an electronic signal.
Moreover, the term “VAD” is generally defined as a vector or array signal, data, or information that in some manner represents the occurrence of speech in the digital or analog domain. A common representation of VAD information is a one-bit digital signal sampled at the same rate as the corresponding acoustic signals, with a zero value representing that no speech has occurred during the corresponding time sample, and a unity value indicating that speech has occurred during the corresponding time sample. While the embodiments described herein are generally described in the digital domain, the descriptions are also valid for the analog domain.
The noise removal element 205 also receives a signal from a voice activity detection (VAD) element 204. The VAD 204 uses physiological information to determine when a speaker is speaking. In various embodiments, the VAD can include at least one of an accelerometer, a skin surface microphone in physical contact with skin of a user, a human tissue vibration detector, a radio frequency (RF) vibration and/or motion detector/device, an electroglottograph, an ultrasound device, an acoustic microphone that is being used to detect acoustic frequency signals that correspond to the user's speech directly from the skin of the user (anywhere on the body), an airflow detector, and a laser vibration detector.
The transfer functions from the signal source 100 to MIC 1 and from the noise source 101 to MIC 2 are assumed to be unity. The transfer function from the signal source 100 to MIC 2 is denoted by H2(z), and the transfer function from the noise source 101 to MIC 1 is denoted by H1(z). The assumption of unity transfer functions does not inhibit the generality of this algorithm, as the actual relations between the signal, noise, and microphones are simply ratios and the ratios are redefined in this manner for simplicity.
In conventional two-microphone noise removal systems, the information from MIC 2 is used to attempt to remove noise from MIC 1. However, an (generally unspoken) assumption is that the VAD element 204 is never perfect, and thus the denoising must be performed cautiously, so as not to remove too much of the signal along with the noise. However, if the VAD 204 is assumed to be perfect such that it is equal to zero when there is no speech being produced by the user, and equal to one when speech is produced, a substantial improvement in the noise removal can be made.
In analyzing the single noise source 101 and the direct path to the microphones, with reference to
M1(z)=S(z)+N2(z)
M2(z)=N(z)+S2(z)
with
N2(z)=N(z)H1(z)
S2(z)=S(z)H2(z),
so that
M1(z)=S(z)+N(z)H1(z)
M2(z)=N(z)+S(z)H2(z) Eq. 1
This is the general case for all two microphone systems. In a practical system there is always going to be some leakage of noise into MIC 1, and some leakage of signal into MIC 2. Equation 1 has four unknowns and only two known relationships and therefore cannot be solved explicitly.
However, there is another way to solve for some of the unknowns in Equation 1. The analysis starts with an examination of the case where the signal is not being generated, that is, where a signal from the VAD element 204 equals zero and speech is not being produced. In this case, s(n) S(z)=0, and Equation 1 reduces to
M1n(z)=N(z)H1(z)
M2n(z)=N(z),
where the n subscript on the M variables indicate that only noise is being received. This leads to
The function H1(z) can be calculated using any of the available system identification algorithms and the microphone outputs when the system is certain that only noise is being received. The calculation can be done adaptively, so that the system can react to changes in the noise.
A solution is now available for one of the unknowns in Equation 1. Another unknown, H2(z), can be determined by using the instances where the VAD equals one and speech is being produced. When this is occurring, but the recent (perhaps less than 1 second) history of the microphones indicate low levels of noise, it can be assumed that n(s)=N(z)˜0. Then Equation 1 reduces to
M1s(z)=S(z)
M2s(z)=S(z)H2(z),
which in turn leads to
which is the inverse of the H1(z) calculation. However, it is noted that different inputs are being used (now only the signal is occurring whereas before only the noise was occurring). While calculating H2(z), the values calculated for H1(z) are held constant and vice versa. Thus, it is assumed that while one of H1(z) and H2(z) are being calculated, the one not being calculated does not change substantially.
After calculating H1(z) and H2(z), they are used to remove the noise from the signal. If Equation 1 is rewritten as
S(z)=M1(z)−N(z)H1(z)
N(z)=M2(z)−S(z)H2(z)
S(z)=M1(z)−[M2(z)−S(z)H2(z)]H1(z)′
S(z)[1−H2(z)H1(z)]=M1(z)−M2(z)H1(z),
then N(z) may be substituted as shown to solve for S(z) as
If the transfer functions H1(z) and H2(z) can be described with sufficient accuracy, then the noise can be completely removed and the original signal recovered. This remains true without respect to the amplitude or spectral characteristics of the noise. The only assumptions made include use of a perfect VAD, sufficiently accurate H1(z) and H2(z), and that when one of H1(z) and H2(z) are being calculated the other does not change substantially. In practice these assumptions have proven reasonable.
The noise removal algorithm described herein is easily generalized to include any number of noise sources.
M1(z)=S(z)+N1(z)H1(z)+N2(z)H2(z)+ . . . Nn(z)Hn(z)
M2(z)=S(z)H0(z)+N1(z)G1(z)+N2(z)G2(z)+ . . . Nn(z)Gn(z) Eq. 4
When there is no signal (VAD=0), then (suppressing z for clarity)
M1n=N1H1+N2H2+ . . . NnHn
M2n=N1G1+N2G2+ . . . NnGn. Eq. 5
A new transfer function can now be defined as
where {tilde over (H)}1 is analogous to H1(z) above. Thus {tilde over (H)}1 depends only on the noise sources and their respective transfer functions and can be calculated any time there is no signal being transmitted. Once again, the “n” subscripts on the microphone inputs denote only that noise is being detected, while an “s” subscript denotes that only signal is being received by the microphones.
Examining Equation 4 while assuming an absence of noise produces
M1s=S
M2s=SH0.
Thus, H0 can be solved for as before, using any available transfer function calculating algorithm. Mathematically, then,
Rewriting Equation 4, using {tilde over (H)}1 defined in Equation 6, provides,
Solving for S yields,
which is the same as Equation 3, with H0 taking the place of H2, and {tilde over (H)}1 taking the place of H1. Thus the noise removal algorithm still is mathematically valid for any number of noise sources, including multiple echoes of noise sources. Again, if H0 and {tilde over (H)}1 can be estimated to a high enough accuracy, and the above assumption of only one path from the signal to the microphones holds, the noise may be removed completely.
The most general case involves multiple noise sources and multiple signal sources.
The input into the microphones now becomes
M1(z)=S(z)+S(z)H01(z)+N1(z)H1(z)+N2(z)H2(z)+ . . . Nn(z)Hn(z)
M2(z)=S(z)H00(z)+S(z)H02(z)+N1(z)G1(z)+N2(z)G2(z)+ . . . Nn(z)Gn(z). Eq. 9
When the VAD=0, the inputs become (suppressing z again)
M1n=N1H1+N2H2+ . . . NnHn
M2n=N1G1+N2G2+ . . . NnGn,
which is the same as Equation 5. Thus, the calculation of {tilde over (H)}1 in Equation 6 is unchanged, as expected. In examining the situation where there is no noise, Equation 9 reduces to
M1s=S+SH01
M2s=SH00+SH02.
This leads to the definition of {tilde over (H)}2 as
Rewriting Equation 9 again using the definition for {tilde over (H)}1 (as in Equation 7) provides
Some algebraic manipulation yields
and finally
Equation 12 is the same as equation 8, with the replacement of H0 by {tilde over (H)}2, and the addition of the (1+H01) factor on the left side. This extra factor (1+H01) means that S cannot be solved for directly in this situation, but a solution can be generated for the signal plus the addition of all of its echoes. This is not such a bad situation, as there are many conventional methods for dealing with echo suppression, and even if the echoes are not suppressed, it is unlikely that they will affect the comprehensibility of the speech to any meaningful extent. The more complex calculation of {tilde over (H)}2 is needed to account for the signal echoes in MIC 2, which act as noise sources.
An algorithm for noise removal, or denoising algorithm, is described herein, from the simplest case of a single noise source with a direct path to multiple noise sources with reflections and echoes. The algorithm has been shown herein to be viable under any environmental conditions. The type and amount of noise are inconsequential if a good estimate has been made of {tilde over (H)}1 and {tilde over (H)}2, and if one does not change substantially while the other is calculated. If the user environment is such that echoes are present, they can be compensated for if coming from a noise source. If signal echoes are also present, they will affect the cleaned signal, but the effect should be negligible in most environments.
In operation, the algorithm of an embodiment has shown excellent results in dealing with a variety of noise types, amplitudes, and orientations. However, there are always approximations and adjustments that have to be made when moving from mathematical concepts to engineering applications. One assumption is made in Equation 3, where H2(z) is assumed small and therefore H2(z)H1(z)≈0, so that Equation 3 reduces to
S(z)≈M1(z)−M2(z)H1(z).
This means that only H1(z) has to be calculated, speeding up the process and reducing the number of computations required considerably. With the proper selection of microphones, this approximation is easily realized.
Another approximation involves the filter used in an embodiment. The actual H1(z) will undoubtedly have both poles and zeros, but for stability and simplicity an all-zero Finite Impulse Response (FIR) filter is used. With enough taps the approximation to the actual H1(z) can be very good.
To further increase the performance of the noise suppression system, the spectrum of interest (generally about 125 to 3700 Hz) is divided into subbands. The wider the range of frequencies over which a transfer function must be calculated, the more difficult it is to calculate it accurately. Therefore the acoustic data was divided into 16 subbands, and the denoising algorithm was then applied to each subband in turn. Finally, the 16 denoised data streams were recombined to yield the denoised acoustic data. This works very well, but any combinations of subbands (i.e., 4, 6, 8, 32, equally spaced, perceptually spaced, etc.) can be used and all have been found to work better than a single subband.
The amplitude of the noise was constrained in an embodiment so that the microphones used did not saturate (that is, operate outside a linear response region). It is important that the microphones operate linearly to ensure the best performance. Even with this restriction, very low signal-to-noise ratio (SNR) signals can be denoised (down to −10 dB or less).
The calculation of H1(z) is accomplished every 10 milliseconds using the Least-Mean Squares (LMS) method, a common adaptive transfer function. An explanation may be found in “Adaptive Signal Processing” (1985), by Widrow and Steams, published by Prentice-Hall, ISBN 0-13-004029-0. The LMS was used for demonstration purposes, but many other system idenfication techniques can be used to identify H1(z) and H2(z) in
The VAD for an embodiment is derived from a radio frequency sensor and the two microphones, yielding very high accuracy (>99%) for both voiced and unvoiced speech. The VAD of an embodiment uses a radio frequency (RF) vibration detector interferometer to detect tissue motion associated with human speech production, but is not so limited. The signal from the RF device is completely acoustic-noise free, and is able to function in any acoustic noise environment. A simple energy measurement of the RF signal can be used to determine if voiced speech is occurring. Unvoiced speech can be determined using conventional acoustic-based methods, by proximity to voiced sections determined using the RF sensor or similar voicing sensors, or through a combination of the above. Since there is much less energy in unvoiced speech, its detection accuracy is not as critical to good noise suppression performance as is voiced speech.
With voiced and unvoiced speech detected reliably, the algorithm of an embodiment can be implemented. Once again, it is useful to repeat that the noise removal algorithm does not depend on how the VAD is obtained, only that it is accurate, especially for voiced speech. If speech is not detected and training occurs on the speech, the subsequent denoised acoustic data can be distorted.
Data was collected in four channels, one for MIC 1, one for MIC 2, and two for the radio frequency sensor that detected the tissue motions associated with voiced speech. The data were sampled simultaneously at 40 kHz, then digitally filtered and decimated down to 8 kHz. The high sampling rate was used to reduce any aliasing that might result from the analog to digital process. A four-channel National Instruments A/D board was used along with Labview to capture and store the data. The data was then read into a C program and denoised 10 milliseconds at a time.
The noise removal algorithm of an embodiment has been shown to be viable under any environmental conditions. The type and amount of noise are inconsequential if a good estimate has been made of {tilde over (H)}1 and {tilde over (H)}2. If the user environment is such that echoes are present, they can be compensated for if coming from a noise source. If signal echoes are also present, they will affect the cleaned signal, but the effect should be negligible in most environments.
When using the VAD devices and methods described herein with a noise suppression system, the VAD signal is processed independently of the noise suppression system, so that the receipt and processing of VAD information is independent from the processing associated with the noise suppression, but the embodiments are not so limited. This independence is attained physically (i.e., different hardware for use in receiving and processing signals relating to the VAD and the noise suppression), but is not so limited.
The VAD devices/methods described herein generally include vibration and movement sensors, but are not so limited. In one embodiment, an accelerometer is placed on the skin for use in detecting skin surface vibrations that correlate with human speech. These recorded vibrations are then used to calculate a VAD signal for use with or by an adaptive noise suppression algorithm in suppressing environmental acoustic noise from a simultaneously (within a few milliseconds) recorded acoustic signal that includes both speech and noise.
Another embodiment of the VAD devices/methods described herein includes an acoustic microphone modified with a membrane so that the microphone no longer efficiently detects acoustic vibrations in air. The membrane, though, allows the microphone to detect acoustic vibrations in objects with which it is in physical contact (allowing a good mechanical impedance match), such as human skin. That is, the acoustic microphone is modified in some way such that it no longer detects acoustic vibrations in air (where it no longer has a good physical impedance match), but only in objects with which the microphone is in contact. This configures the microphone, like the accelerometer, to detect vibrations of human skin associated with the speech production of that human while not efficiently detecting acoustic environmental noise in the air. The detected vibrations are processed to form a VAD signal for use in a noise suppression system, as detailed below.
Yet another embodiment of the VAD described herein uses an electromagnetic vibration sensor, such as a radiofrequency vibrometer (RF) or laser vibrometer, which detect skin vibrations. Further, the RF vibrometer detects the movement of tissue within the body, such as the inner surface of the cheek or the tracheal wall. Both the exterior skin and internal tissue vibrations associated with speech production can be used to form a VAD signal for use in a noise suppression system as detailed below.
The vibration/movement-based VAD devices described herein include the physical hardware devices for use in receiving and processing signals relating to the VAD and the noise suppression. As a speaker or user produces speech, the resulting vibrations propagate through the tissue of the speaker and, therefore can be detected on and beneath the skin using various methods. These vibrations are an excellent source of VAD information, as they are strongly associated with both voiced and unvoiced speech (although the unvoiced speech vibrations are much weaker and more difficult to detect) and generally are only slightly affected by environmental acoustic noise (some devices/methods, for example the electromagnetic vibrometers described below, are not affected by environmental acoustic noise). These tissue vibrations or movements are detected using a number of VAD devices including, for example, accelerometer-based devices, skin surface microphone (SSM) devices, and electromagnetic (EM) vibrometer devices including both radio frequency (RF) vibrometers and laser vibrometers.
Accelerometer-Based VAD Devices/Methods
Accelerometers can detect skin vibrations associated with speech. As such, and with reference to
where i is the digital sample subscript and ranges from the beginning of the window to the end of the window.
Referring to
The calculated, or normalized, energy values are compared to a threshold, at block 812. The speech corresponding to the accelerometer data is designated as voiced speech when the energy of the accelerometer data is at or above a threshold value, at block 814. Likewise, the speech corresponding to the accelerometer data is designated as unvoiced speech when the energy of the accelerometer data is below the threshold value, at block 816. Noise suppression systems of alternative embodiments can use multiple threshold values to indicate the relative strength or confidence of the voicing signal, but are not so limited. Multiple subbands may also be processed for increased accuracy.
Skin Surface Microphone (SSM) VAD Devices/Methods
Referring again to
During speech, when the SSM is placed on the cheek or neck, vibrations associated with speech production are easily detected. However, airborne acoustic data is not significantly detected by the SSM. The tissue-borne acoustic signal, upon detection by the SSM, is used to generate the VAD signal in processing and denoising the signal of interest, as described above with reference to the energy/threshold method used with accelerometer-based VAD signal and
Electromagnetic (EM) Vibrometer VAD Devices/Methods
Returning to
The RF vibrometer operates in the radio to microwave portion of the electromagnetic spectrum, and is capable of measuring the relative motion of internal human tissue associated with speech production. The internal human tissue includes tissue of the trachea, cheek, jaw, and/or nose/nasal passages, but is not so limited. The RF vibrometer senses movement using low-power radio waves, and data from these devices has been shown to correspond very well with calibrated targets. As a result of the absence of acoustic noise in the RF vibrometer signal, the VAD system of an embodiment uses signals from these devices to construct a VAD using the energy/threshold method described above with reference to the accelerometer-based VAD and
An example of an RF vibrometer is the General Electromagnetic Motion Sensor (GEMS) radiovibrometer available from Aliph, located in Brisbane, Calif. Other RF vibrometers are described in the Related Applications and by Gregory C. Burnett in “The Physiological Basis of Glottal Electromagnetic Micropower Sensors (GEMS) and Their Use in Defining an Excitation Function for the Human Vocal Tract”, Ph.D. Thesis, University of California Davis, January 1999.
Laser vibrometers operate at or near the visible frequencies of light, and are therefore restricted to surface vibration detection only, similar to the accelerometer and the SSM described above. Like the RF vibrometer, there is no acoustic noise associated with the signal of the laser vibrometers. Therefore, the VAD system of an embodiment uses signals from these devices to construct a VAD using the energy/threshold method described above with reference to the accelerometer-based VAD and
Aspects of the noise suppression system may be implemented as functionality programmed into any of a variety of circuitry, including programmable logic devices (PLDs), such as field programmable gate arrays (FPGAs), programmable array logic (PAL) devices, electrically programmable logic and memory devices and standard cell-based devices, as well as application specific integrated circuits (ASICs). Some other possibilities for implementing aspects of the noise suppression system include: microcontrollers with memory (such as electronically erasable programmable read only memory (EEPROM)), embedded microprocessors, firmware, software, etc. If aspects of the noise suppression system are embodied as software at least one stage during manufacturing (e.g. before being embedded in firmware or in a PLD), the software may be carried by any computer readable medium, such as magnetically- or optically-readable disks (fixed or floppy), modulated on a carrier signal or otherwise transmitted, etc.
Furthermore, aspects of the noise suppression system may be embodied in microprocessors having software-based circuit emulation, discrete logic (sequential and combinatorial), custom devices, fuzzy (neural) logic, quantum devices, and hybrids of any of the above device types. Of course the underlying device technologies may be provided in a variety of component types, e.g., metal-oxide semiconductor field-effect transistor (MOSFET) technologies like complementary metal-oxide semiconductor (CMOS), bipolar technologies like emitter-coupled logic (ECL), polymer technologies (e.g., silicon-conjugated polymer and metal-conjugated polymer-metal structures), mixed analog and digital, etc.
Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise,” “comprising,” and the like are to be construed in an inclusive sense as opposed to an exclusive or exhaustive sense; that is to say, in a sense of “including, but not limited to.” Words using the singular or plural number also include the plural or singular number respectively. Additionally, the words “herein,” “hereunder,” “above,” “below,” and words of similar import, when used in this application, shall refer to this application as a whole and not to any particular portions of this application. When the word “or” is used in reference to a list of two or more items, that word covers all of the following interpretations of the word: any of the items in the list, all of the items in the list and any combination of the items in the list.
The above descriptions of embodiments of the noise suppression system are not intended to be exhaustive or to limit the noise suppression system to the precise forms disclosed. While specific embodiments of, and examples for, the noise suppression system are described herein for illustrative purposes, various equivalent modifications are possible within the scope of the noise suppression system, as those skilled in the relevant art will recognize. The teachings of the noise suppression system provided herein can be applied to other processing systems and communication systems, not only for the processing systems described above.
The elements and acts of the various embodiments described above can be combined to provide further embodiments. These and other changes can be made to the noise suppression system in light of the above detailed description.
All of the above references and United States patent applications are incorporated herein by reference. Aspects of the noise suppression system can be modified, if necessary, to employ the systems, functions and concepts of the various patents and applications described above to provide yet further embodiments of the noise suppression system.
In general, in the following claims, the terms used should not be construed to limit the noise suppression system to the specific embodiments disclosed in the specification and the claims, but should be construed to include all processing systems that operate under the claims to provide a method for compressing and decompressing data files or streams. Accordingly, the noise suppression system is not limited by the disclosure, but instead the scope of the noise suppression system is to be determined entirely by the claims.
While certain aspects of the noise suppression system are presented below in certain claim forms, the inventors contemplate the various aspects of the noise suppression system in any number of claim forms. For example, while only one aspect of the noise suppression system is recited as embodied in computer-readable medium, other aspects may likewise be embodied in computer-readable medium. Accordingly, the inventors reserve the right to add additional claims after filing the application to pursue such additional claim forms for other aspects of the noise suppression system.
This patent application is a continuation-in-part of U.S. patent application Ser. No. 09/905,361, filed Jul. 12, 2001, now abandoned which claims priority from U.S. patent application Ser. No. 60/219,297, filed Jul. 19, 2000. This patent application also claims priority from U.S. patent application Ser. No. 10/383,162, filed Mar. 5, 2003.
Number | Name | Date | Kind |
---|---|---|---|
3789166 | Sebesta | Jan 1974 | A |
4006318 | Sebesta et al. | Feb 1977 | A |
4591668 | Iwata | May 1986 | A |
4901354 | Gollmar et al. | Feb 1990 | A |
5097515 | Baba | Mar 1992 | A |
5212764 | Ariyoshi | May 1993 | A |
5400409 | Linhard | Mar 1995 | A |
5406622 | Silverberg et al. | Apr 1995 | A |
5414776 | Sims, Jr. | May 1995 | A |
5463694 | Bradley et al. | Oct 1995 | A |
5473701 | Cezanne et al. | Dec 1995 | A |
5473702 | Yoshida et al. | Dec 1995 | A |
5515865 | Scanlon et al. | May 1996 | A |
5517435 | Sugiyama | May 1996 | A |
5539859 | Robbe et al. | Jul 1996 | A |
5590241 | Park et al. | Dec 1996 | A |
5633935 | Kanamori et al. | May 1997 | A |
5649055 | Gupta et al. | Jul 1997 | A |
5684460 | Scanlon et al. | Nov 1997 | A |
5729694 | Holzrichter et al. | Mar 1998 | A |
5754665 | Hosoi | May 1998 | A |
5835608 | Warnaka et al. | Nov 1998 | A |
5853005 | Scanlon | Dec 1998 | A |
5917921 | Sasaki et al. | Jun 1999 | A |
5966090 | McEwan | Oct 1999 | A |
5986600 | McEwan | Nov 1999 | A |
6006175 | Holzrichter | Dec 1999 | A |
6009396 | Nagata | Dec 1999 | A |
6069963 | Martin et al. | May 2000 | A |
6191724 | McEwan | Feb 2001 | B1 |
6266422 | Ikeda | Jul 2001 | B1 |
6430295 | Handel et al. | Aug 2002 | B1 |
6707910 | Valve et al. | Mar 2004 | B1 |
20020039425 | Burnett et al. | Apr 2002 | A1 |
20030228023 | Burnett et al. | Dec 2003 | A1 |
Number | Date | Country |
---|---|---|
0 637 187 | Feb 1995 | EP |
0 795 851 | Sep 1997 | EP |
0 984 660 | Mar 2000 | EP |
2000 312 395 | Nov 2000 | JP |
2001 189 987 | Jul 2001 | JP |
WO 02 07151 | Jan 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20040133421 A1 | Jul 2004 | US |
Number | Date | Country | |
---|---|---|---|
60219297 | Jul 2000 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09905361 | Jul 2001 | US |
Child | 10667207 | US |