This disclosure relates to the fields of noise suppressors and perceptual audio coding, and more particularly relates to psychoacoustic adaptive notch filtering.
Noise suppressors address the problem of unknown external sources adding noise to an audio signal of interest by attempting to reduce the noise.
Traditional noise suppressors use generic information when dealing with noise because, in general, noise can include one of many types of noise, which may have distinct spectral densities (e.g., white noise, Brownian noise, grey noise, etc.) and/or distinct probability distributions (e.g., Gaussian, Poisson, Cauchy, etc.). Traditional noise suppressors also estimate the level of noise in certain critical bands of frequencies, and based on these estimates, they also perform suppression of the entire critical bands.
In audio coding, an incoming, continuous audio signal may be converted into a predetermined number of discrete bits. As part of this conversion, quantization noise may be added into the audio signal. For example, many audio coders introduce noise in both time and frequency. The key difference between the noise introduced by audio coding compared to noise added by an unknown external source is that the former is added to certain frequency bands in a known way.
Components of a system may also introduce noise into a signal of interest. As with audio coding, the noise introduced by system components may also have deterministic characteristics. For example, electronic components may introduce noise centered around a particular frequency (e.g., noise generated by an electronic component, where the noise can vary, but is known to be concentrated in limited frequencies or limited frequency bands (e.g., based on the characteristics of the electronic component)).
Whenever a noise suppressor performs suppression on a primary signal, distortion of the primary signal can occur. Additionally, if a traditional noise suppressor performs suppression of an entire critical band or a wide band of frequencies, information may be lost. Accordingly, more effective strategies for dealing with undesirable noise components of an audio signal are needed.
Improved systems and methods for psychoacoustic adaptive notch filtering are provided. By accounting for psychoacoustic properties of an audio signal, as well as finer characteristics of noise that may be present in the audio signal (e.g., the shape of the spectral density of the noise), more effective strategies for dealing with undesirable components of the audio signal may be realized. For example, adaptive notch filtering can be employed to vary the degree of suppression of a narrow (or limited) band of frequencies of an audio signal as a function of the psychoacoustic properties of the signal. Additionally, adaptive notch filtering may avoid suppressing an entire critical band of the audio signal. Psychoacoustic principles can involve making critical band energy estimates over time. For example, to determine how much a desirable signal (e.g., an audio signal) masks an undesirable signal (i.e., noise), critical band energies of the desirable signal for a range of time t, where t1<=t<=t2, can be used. In at least one embodiment, t can be equal to t1 and t2 (e.g., where only a current energy is used). However, in at least another embodiment, multiple energy samples can be taken over a range of time.
In at least one embodiment, a method for performing adaptive notch filtering is provided. The method can include receiving an input signal, and determining whether tone-like noise is present in a particular critical band of the input signal. In response to a determination that the tone-like noise is present, the method can also include estimating an amplitude of the tone-like noise, and estimating how much energy is contained in the particular critical band. The method can also include determining at least one suppression factor for the tone-like noise based on the estimated amplitude and energy, selecting a notch filter based on the determined at least one suppression factor, and applying the selected notch filter to the input signal.
In at least one embodiment, a method for performing adaptive notch filtering is provided. The method can include receiving an input signal, determining how much energy is contained in at least one predefined frequency band of the input signal, determining a level of tone-like noise present in the at least one predefined band based on the determined amount of energy, selecting a notch filter based on the determined level, and applying the selected notch filter to the input signal.
In at least one embodiment, an electronic is provided. The electronic device can include a receiver configured to receive an input signal, and an adaptive notch filtering system. The filtering system can be configured to determine how much energy is contained in at least one predefined frequency band of the input signal, determine a level of tone-like noise present in the at least one predefined band based on the determined amount of energy, select a notch filter based on the determined level, and apply the selected notch filter to the input signal.
In at least one embodiment, a non-transitory computer readable medium is provided. The computer readable medium can store a program configured to cause a computer to execute an adaptive notch filtering process. The filtering process can include identifying an input signal, determining how much energy is contained in at least one predefined frequency band of the input signal, determining a level of tone-like noise present in the at least one predefined band based on the determined amount of energy, selecting a notch filter based on the determined level, and applying the selected notch filter to the input signal.
The above and other features of the present invention, its nature and various advantages will be more apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings in which:
Improved systems and methods for psychoacoustic adaptive notch filtering are provided are provided and described with reference to
Noise in an audio signal can be tone-like and/or noise-like. As used herein, the term “tone-like” is intended to describe signals with at least one discernible peak in their power spectral density. Additionally, a tone-like signal may include more than one peak. The additional peaks may represent harmonics of the discernible peak or may be unrelated to the discernible peak. As used herein, the term “noise-like” is intended to describe signals with a relatively flat power spectral density (e.g., white noise) or a power spectral density that does not contain any easily discernible peaks (e.g., Brownian noise or grey noise). One skilled in the art will appreciate that a given signal may contain both tone-like and noise-like components.
The extent to which an individual perceives noise within an audio signal depends both on the nature of the audio signal (e.g., whether the audio signal is a tone-like signal or whether the audio signal is a noisy signal) and the nature of the noise (e.g., whether the noise is tone-like or noise-like). Traditional noise suppressors, however, only consider the scenario where the noise within the audio signal is noise-like. Noise suppressors are generally agnostic to the case where the noise is tone-like.
In some situations, noise in an audio signal can be tone-like. Referring now to
The tone-like noise centered at each of frequencies 121-123 may each be contained within bands 131-133, respectively. Bands 131-133 may correspond to critical bands. As used herein, the term “critical band” may refer to a bandwidth in which an individual's auditory frequency-analysis mechanism may be unable to resolve inputs whose frequency difference is smaller than the bandwidth. In order to isolate the energy information of a particular band, band pass filters may be utilized. For example, band-pass filters 111-113 may be used to extract information in bands 131-133. Band pass filters 111-113 may be sized such that their bandwidths correspond to critical bands 131-133, respectively. Although three band pass filters are shown in
Knowing that the noise contained in signal 101 is tone-like provides additional flexibility when dealing with the noise. For example, the tone-like noise centered at frequency 121 can be targeted using a notch filter. Notch filtering may be advantageous for getting rid of narrow, specific portions of the audio spectrum. As a result, the tone-like noise centered at frequency 121 may be suppressed without requiring suppression of the entirety of band 131. Additionally, that noise centered at frequency 121 is tone-like may allow for varying degrees of suppression (e.g., via notch filters with varying depths) depending on the overall frequency content of signal 101. For example, if signal 101 contains a significant amount of energy in band 131 besides the tone-like noise centered at frequency 121, the noise may be suppressed less than it would otherwise need to be suppressed. Alternatively, the noise may not need to be suppressed at all.
System 300 may accept signal 301 as an input and produce signal 302 as an output. Signal 301 may contain noise similar to the noise described with respect to
Band energy estimation block 310 may measure the energy contained in a number of bands. To accomplish this task, band energy estimation block 310 may utilize band pass filters. For example, band energy estimation block 310 may implement band pass filters 111-113 shown in
According to some embodiments, tone energy estimation block 320 may estimate the energy levels of tone-like noise contained in signal 301. Tone energy estimation block 320 may provide real-time estimates of the energy contained in each of a number of tone-like noise components found in signal 301. Tone energy estimation block 320 may operate during quiet periods (e.g., when the overall energy level of signal 301 is below a predetermined level). For example, system 300 may be part of an electronic device (e.g., electronic device 800 described in more detail below) that contains a voice activity detector (not shown), and the voice activity detector may notify tone energy estimation block 320 when a suitable quiet period occurs. Alternatively, a predetermined level of energy that the tone-like noise will not exceed may be defined. Any time signal 301 exceeds the predetermined level, system 300 may recognize that information besides noise (e.g., voice information) may be present in signal 301. When the energy level of signal 301 is below a suitable predetermined level, a tacit assumption may be made that the dominant portion of signal 301 corresponds to tone-like noise.
Tone energy estimation block 320 may obtain its estimates of the energy contained in each of a number of tone-like noise components by utilizing notch filters. For example, tone energy estimation block 320 may target tone-like noise centered around a particular frequency. Tone energy estimation block 320 may make comparisons between filtered and unfiltered versions of signals 301 and/or 312 in order to estimate the energy contained in a particular tone-like noise component. Tone energy estimation block 320 may pass output signal 321 to tone suppression determination block 330. Signal 321 may indicate whether any tone-like noise portions of signal 301 dominate. Alternatively, signal 321 may indicate what percentage of signal 301 corresponds to tone-like noise.
Tone energy estimation block 320 may operate system 400 during suitable quiet periods. Notch filter block 410 may apply a notch filter to incoming signal 401. For example, notch filter block 410 may apply notch filter 201 to signal 401 to target tone-like noise centered around a particular frequency 205. Frequency 205 may correspond to any suitable frequency of an audio signal at which tone-like noise may be present. For example, frequency 205 may correspond to any one of frequencies 121-123. Signal power calculation block 420 may calculate the energy in a filtered signal 411. Similarly, signal power calculation block 430 may calculate the energy in signal 401. The output signals 421 and 431 of signal power calculation blocks 420 and 430 may be compared (e.g., signal 421 may be subtracted from signal 431) via a comparator 440 to generate an output signal 402. Tone energy estimation block 320 may compare signals 401 and 402 in order to estimate the amount of the overall energy of signal 401 that corresponds to the tone-like noise. For example, if the energy of signal 402 is very different from the energy of signal 401 (e.g., the energy of signal 402 is significantly less than the energy of signal 401), then the tone-like noise portion of signal 401 may dominate. Alternatively, if the energy of signal 402 is similar to the energy of signal 401, then the tone-like noise in signal 401 may be dominated by other energy in signal 401.
In some embodiments, tone energy estimation block 320 may operate system 400 multiple times. In these embodiments, the number of operation cycles can correspond to the number of filtered signals received from band energy estimation block 310. Alternatively, tone energy estimation block 320 may employ several systems similar to system 400 concurrently. For example, tone energy estimation block 320 can employ a number of systems that correspond to the number of filtered signals received from band energy estimation block 310.
Referring back to
Tone suppression determination block 330 may receive signals 311 and 321, and may use these signals to determine whether suppression of tone-like noise is necessary. For example, tone suppression determination block 330 may use the information about energy contained within a given band from signal 311 and compare it to the information about whether tone-like noise dominates the given band from signal 321. Using these two pieces of information, tone suppression determination block 330 may determine the level of notch filtering required for the given band. For example, if an audio signal contains no information other than tone-like noise (e.g., a silent room), then a higher level of suppression may be necessary. Tone suppression determination block 330 may perform this determination for each of the bands indicated by signals 311 and 321. Tone suppression determination block 330 may then pass information regarding the level of notch filtering required to notch level selector 340 via a signal 331.
In certain bands, tone suppression determination block 330 may find that signal 301 effectively masks any undesirable noise and that no notch filtering may be required.
Notch level selector 340 may receive signal 331 from tone suppression determination block 330 and determine an appropriate notch filter for a given band of signal 301. For example, an appropriate notch filter may correspond to any one of a family of notch filters as described with respect to
Notch filter bank 350 may receive signal 341 indicating a set of notch filters that should be applied to signal 301. In response, notch filter bank 350 may apply the set of notch filters to signal 301 to produce output signal 302. Notch filter bank 350 may contain any number of families of notch filters. For example, notch filter bank 350 may contain families of notch filters similar to those described above with respect to
System 600 may include a band energy estimator 610, a tone energy estimator 620, a suppression determination block 630, a suppression level determination block 640, a filter bank 650, and a noise characteristic estimator 660.
Band energy estimator 610 and tone energy estimator 620 may perform similar tasks as described with respect to band energy estimation block 310 and tone energy estimation block 320 of
Noise characteristic estimator 660 may estimate the characteristics of any noise present in input signal 601. For example, noise characteristic estimator 660 may be able to determine whether a given band of signal 601 contains noise-like noise or tone-like noise. To accomplish this task, noise characteristic estimator 660 may only operate during quiet periods as described with respect to tone energy estimation block 320 of
Suppression determination block 630 may operate in a similar way to tone suppression determination block 330 of
Suppression level determination block 640 may receive signal 631 from suppression determination block 630 and determine an appropriate filter for a given band of signal 601. Suppression level determination block 640 may generally operate in a manner similar to notch level selector 340. However, unlike notch level selector 340, suppression level determination block 640 may choose between both notch filters and band pass filters. For example, for bands that contain tone-like noise, suppression level determination block 640 may operate identically to notch filter selector 340 of
Filter bank 650 may receive signal 641, which can indicate a set of filters that should be applied to signal 601. Filter bank 650 may operate in a manner similar to notch filter bank 350, except that filter bank 650 may contain both families of notch filters and families of band pass filters. In response to signal 641, filter bank 650 may apply the set of filters to signal 601 to produce an output signal 602.
Electronic device 800 may include a housing 801, a processor or control circuitry 802, memory 804, communications circuitry 806, power supply 808, input component 810, display assembly 812, and microphones 814. Electronic device 800 may also include a bus 803 that may provide a data transfer path for transferring data and/or power, to, from, or between various other components of device 800. In some embodiments, one or more components of electronic device 800 may be combined or omitted. Moreover, electronic device 800 may include other components not combined or included in
Memory 804 may include one or more storage mediums, including for example, a hard-drive, flash memory, permanent memory such as read-only memory (“ROM”), semi-permanent memory such as random access memory (“RAM”), any other suitable type of storage component, or any combination thereof. Memory 804 may include cache memory, which may be one or more different types of memory used for temporarily storing data for electronic device applications. Memory 804 may store media data (e.g., music, image, and video files), software (e.g., for implementing functions on device 800), firmware, preference information (e.g., media playback preferences), lifestyle information (e.g., food preferences), exercise information (e.g., information obtained by exercise monitoring equipment), transaction information (e.g., information such as credit card information), wireless connection information (e.g., information that may enable device 800 to establish a wireless connection), subscription information (e.g., information that keeps track of podcasts or television shows or other media a user subscribes to), contact information (e.g., telephone numbers and e-mail addresses), calendar information, any other suitable data, or any combination thereof.
Communications circuitry 806 may be provided to allow device 800 to communicate with one or more other electronic devices or servers using any suitable communications protocol. For example, communications circuitry 806 may support Wi-Fi™ (e.g., an 802.11 protocol), Ethernet, Bluetooth™, high frequency systems (e.g., 900 MHz, 2.4 GHz, and 5.6 GHz communication systems), infrared, transmission control protocol/internet protocol (“TCP/IP”) (e.g., any of the protocols used in each of the TCP/IP layers), hypertext transfer protocol (“HTTP”), BitTorrent™, file transfer protocol (“FTP”), real-time transport protocol (“RTP”), real-time streaming protocol (“RTSP”), secure shell protocol (“SSH”), any other communications protocol, or any combination thereof. Communications circuitry 906 may also include circuitry that can enable device 900 to be electrically coupled to another device (e.g., a computer or an accessory device) and communicate with that other device, either wirelessly or via a wired connection.
Power supply 808 may provide power to one or more of the components of device 800. In some embodiments, power supply 808 can be coupled to a power grid (e.g., when device 800 is not a portable device, such as a desktop computer). In some embodiments, power supply 808 can include one or more batteries for providing power (e.g., when device 800 is a portable device, such as a cellular telephone). As another example, power supply 808 can be configured to generate power from a natural source (e.g., solar power using one or more solar cells).
One or more input components 810 may be provided to permit a user to interact or interface with device 800. For example, input component 810 can take a variety of forms, including, but not limited to, a track pad, dial, click wheel, scroll wheel, touch screen, one or more buttons (e.g., a keyboard), mouse, joy stick, track ball, and combinations thereof. For example, input component 810 may include a multi-touch screen. Each input component 810 can be configured to provide one or more dedicated control functions for making selections or issuing commands associated with operating device 800.
Electronic device 800 may also include one or more output components that may present information (e.g., textual, graphical, audible, and/or tactile information) to a user of device 800. An output component of electronic device 800 may take various forms, including, but not limited, to audio speakers, headphones, audio line-outs, visual displays, antennas, infrared ports, rumblers, vibrators, or combinations thereof.
For example, electronic device 800 may include display assembly 812 as an output component. Display 812 may include any suitable type of display or interface for presenting visible information to a user of device 800. In some embodiments, display 812 may include a display embedded in device 800 or coupled to device 800 (e.g., a removable display). Display 812 may include, for example, a liquid crystal display (“LCD”), a light emitting diode (“LED”) display, an organic light-emitting diode (“OLED”) display, a surface-conduction electron-emitter display (“SED”), a carbon nanotube display, a nanocrystal display, any other suitable type of display, or combination thereof. Alternatively, display 812 can include a movable display or a projecting system for providing a display of content on a surface remote from electronic device 800, such as, for example, a video projector, a head-up display, or a three-dimensional (e.g., holographic) display. As another example, display 812 may include a digital or mechanical viewfinder. In some embodiments, display 812 may include a viewfinder of the type found in compact digital cameras, reflex cameras, or any other suitable still or video camera.
It should be noted that one or more input components and one or more output components may sometimes be referred to collectively as an I/O interface (e.g., input component 810 and display 812 as I/O interface 811). It should also be noted that input component 810 and display 812 may sometimes be a single I/O component, such as a touch screen that may receive input information through a user's touch of a display screen and that may also provide visual information to a user via that same display screen.
Processor 802 of device 800 may control the operation of many functions and other circuitry provided by device 800. For example, processor 802 may receive input signals from input component 810 and/or drive output signals to display assembly 812. Processor 802 may load a user interface program (e.g., a program stored in memory 804 or another device or server) to determine how instructions or data received via an input component 810 may manipulate the way in which information is provided to the user via an output component (e.g., display 812). For example, processor 802 may control the viewing angle of the visible information presented to the user by display 812 or may otherwise instruct display 812 to alter the viewing angle.
Microphones 814 can include any suitable number of microphones integrated within device 800. The number of microphones can be one or more.
Electronic device 800 may also be provided with a housing 801 that may at least partially enclose one or more of the components of device 800 for protecting them from debris and other degrading forces external to device 800. In some embodiments, one or more of the components may be provided within its own housing (e.g., input component 810 may be an independent keyboard or mouse within its own housing that may wirelessly or through a wire communicate with processor 802, which may be provided within its own housing).
The systems and methods described herein may each be implemented by software, but may also be implemented in hardware, firmware, or any combination of software, hardware, and firmware. They each may also be embodied as machine-readable code recorded on a machine-readable medium. The machine-readable medium may be any data storage device that can store data that can thereafter be read by a computer system. Examples of the machine-readable medium may include, but are not limited to, read-only memory, random-access memory, flash memory, CD-ROMs, DVDs, magnetic tape, and optical data storage devices. The machine-readable medium can also be distributed over network-coupled computer systems so that the machine-readable code is stored and executed in distributed fashion.
The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is understood that one or more features of an embodiment can be combined with one or more features of another embodiment to provide systems and/or methods without deviating from the spirit and scope of the invention.
Moreover, the previously described embodiments are presented for purposes of illustration and not of limitation. Those skilled in the art will appreciate that the invention can be practiced by other than the described embodiments, and the invention is limited only by the claims which follow.
This application claims the benefit of U.S. Provisional Patent Application No. 61/657,473 filed on Jun. 8, 2012, the disclosure of which is hereby incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61657473 | Jun 2012 | US |