This application claims the benefit of priority from European Patent Application No. 12 176 133, filed Jul. 12, 2012, which is incorporated by reference.
1. Technical Field
The invention relates to the field of sound synthesis, particularly to synthesizing the sound of a combustion engine.
2. Related Art
The growing popularity of hybrids and electric vehicles gives rise to new safety issues in urban environments, as many of the aural cues associated with (combustion) engine noise can be missing. The solution is to intelligently make vehicles noisier. In fact, several countries have established laws which require vehicles to radiate a minimum level of sound in order to warn other traffic participants of an approaching vehicle.
An engine sound synthesis system is capable of analyzing sound. In accordance with one example, operation of the system includes: providing an input sound signal to be analyzed and determining a fundamental frequency of the input signal from the input signal or from at least one guide signal. Furthermore, the frequencies of higher harmonics of the fundamental frequency are determined, thus determining harmonic model parameters. A harmonic signal based on the harmonic model parameters is synthesized and a residual signal is estimated by subtracting the harmonic signal from the input signal. Residual model parameters are estimated based on the residual signal.
Furthermore, engine sound synthesis system is also capable of synthesizing a sound signal. The synthesizing is based on harmonic model parameters and residual model parameters that may be, for example, determined in accordance with the previously described analysis of sound. In accordance with one example operation of the system includes: receiving at least one guide signal and calculating the fundamental frequency and frequencies of a number of higher harmonics based on the at least one guide signal. Furthermore, the residual model parameters and the harmonic model parameters that are associated with the calculated frequencies can be provided. A harmonic signal is synthesized using the harmonic model parameters for the calculated fundamental frequency, and frequencies of higher harmonics. Additionally, a residual signal is synthesized using the residual model parameters. The total sound signal can be calculated by superposing the synthesized harmonic signal and residual signal.
Other systems, methods, features and advantages will be, or will become, apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the following claims.
The engine sound synthesis system can be better understood with reference to the following drawings and descriptions. The components in the figures are not necessarily to scale, instead emphasis is placed upon illustrating the principles of the engine sound synthesis system. Moreover, in the figures, like reference numerals designate corresponding parts. In the drawings:
Examples of the engine sound synthesis system are described below in the context of engine or motor sound synthesis. However, the methods for analyzing and synthesizing sound presented herein may also be applied outside the automotive field, as well as for other purposes. As mentioned above, it may be used for electric or hybrid vehicles to radiate a minimum level of sound to allow people, particularly pedestrians and people with reduced hearing capabilities, to hear an approaching vehicle. The typical sound of a combustion engine may also be desired in the interior of a vehicle to provide the driver with an acoustic feedback about the operational status of the vehicle (with regard to the throttle control or the like). The sound perceivable from the outside of a vehicle is dominated by the engine sound for a driving speed up to 30 to 40 km per hour. Therefore, particularly in urban regions where the driving speeds are low, the sound of the engine can be the dominant “alarm signal” that warns other traffic participants of an approaching vehicle.
In many applications, the signals of interest are composed of a plurality of sinusoidal signal components corrupted by broadband noise. For analyzing and modelling such signals a sinusoidal or “harmonic” model is appropriate. In addition, signals mainly consisting of sinusoidal components can be found in different applications such as, for example, formant frequencies in speech processing. Sinusoidal modelling may also be successfully applied for analysing and synthesizing the sound produced by musical instruments since they generally produce harmonic or nearly harmonic signals with relatively slowly varying sinusoidal components. Sinusoidal modelling offers a parametric representation of audible signal components such that the original signal can be recovered by synthesis, such as by addition (for example superposition) of the (harmonic and residual) components.
Rotating mechanical systems such as the combustion engine of a vehicle can have a high harmonic content plus a broadband noise signal and thus a model, such as a “sinusoids plus residual” model is suitable for analyzing and synthesizing the sound produced by a real world combustion engine. For this purpose the sound generated by a combustion engine may be recorded using one or more microphones positioned outside the vehicle while the vehicle is placed, for example, in a chassis roller dynamometer and operated in different load conditions and at various rotational engine speeds. The resulting audio data may be analyzed to “extract” model parameters from the audio data which may be later used (for example, in an electric vehicle) to reproduce the motor sound in an easy manner by using an appropriate audio signal generation device, such as a synthesizer. The model parameters are generally not constant, but may vary, for example particularly dependent on the rotational engine speed.
Some research has been conducted in the field of analyzing and synthesizing sound signals, particularly in the context of speech processing. However, the known methods and algorithms typically require powerful digital signal processors which are not suitable for low-cost applications, such as the applications used in the automotive industry. Thus there is a need for an efficient method for synthesizing sound, particularly the sound of a combustion engine.
In accordance with the engine sound synthesis system illustrated in
x[n]=A0·sin(ω0n+φ0)+A1·sin(ω1n+φ1)+ . . . +AN·sin(ωNn+φN)+r[n] (1)
That is, the input signal x[n] can be modeled as a superposition of the following: a sinusoid signal having the fundamental frequency f0 (corresponds to the angular frequency ω0), N harmonic sinusoids having the frequencies f1 to fN (correspond to the angular frequencies ω1 to ωN, respectively), and a broadband, non-periodic residual signal r[n]. The result of the sinusoidal signal estimation module (block 30) can be three corresponding vectors including the estimated frequencies f=(f0, f1, . . . , fN) as well as the corresponding magnitudes A=(A0, A1, . . . , AN) and phase values φ=(φ0, φ1, . . . , φN), wherein the phase φ0 of the fundamental frequency may be set to zero. These vectors f, A, φ containing frequency, magnitude, and phase values may be determined for various different fundamental frequencies, such as corresponding to rotational speeds of the engine of, for example, 900 rpm, 1000 rpm, 1100 rpm, or any other rotational speed which corresponds to a fundamental frequency. Further, the vectors f, A, φ may be determined for different engine loads or for other non-acoustical parameters (gear number, reverse gear active, or any other parameters) which represent the operational mode of the engine.
Each module and/or unit described herein, such as the sinusoidal signal estimation module 30, frequency estimation unit 31, and the harmonic sinusoids unit 32 is hardware, or a combination of hardware and software. For example, each module or unit may include and/or initiate execution of an application specific integrated circuit (ASIC), a Field Programmable Gate Array (FPGA), a circuit, a digital logic circuit, an analog circuit, a combination of discrete circuits, gates, or any other type of hardware, or combination thereof. Accordingly, as used herein, execution of a module or unit by a processor can also refer to logic based processing by the module or unit that is initiated directly or indirectly by a processor to complete a process or obtain a result. Alternatively or in addition, each module or unit can include memory hardware, such as at least a portion of a memory, for example, that includes instructions executable with a processor to implement one or more of the features of the module or unit. When any one of the modules or units includes instructions stored in memory and executable with the processor, the module or unit may or may not include the processor. In some examples, each module or unit may include only memory storing instructions executable with a processor to implement the features of the corresponding module or unit without the module or unit including any other hardware. Because each module or unit includes at least some hardware, even when the included hardware includes software, each module or unit may be interchangeably referred to as a hardware module or hardware unit, such as the sinusoidal signal estimation hardware module, the frequency estimation hardware unit, and the harmonic sinusoids hardware unit.
To estimate the residual signal r[n], which may also be dependent on one or more non-acoustical parameters (gear number, reverse gear active, etc.), the estimated model parameters, such as the vectors f, A, and φ are used to synthesize the total (estimated) harmonic content of the input signal by combining them, such as by superposition of the individual sinusoids. This is accomplished by a block which is the synthesize harmonics unit 40 in
Having thus obtained the “harmonic” signal model parameters for different fundamental frequencies as well as the residual signal model parameters for different non-acoustical parameters (such as rotational speed values of the engine, gear number, engine load, or other vehicle engine related parameters), these model parameters may later be used to synthesize a realistic engine sound which corresponds to the sound produced by the engine analysed in accordance with
For a guided sinusoid signal estimation the following signal model may be used. Accordingly, the input signal x[n] can be modelled as:
wherein n is the time index, i denotes the number of the harmonic, f0 denotes the fundamental frequency, and Ai and φi are the amplitude and phase, respectively, of the ith harmonic. As mentioned above, the fundamental frequency and the frequencies of the higher harmonics are not estimated from the input signal x[n] but can be directly derived from the guide signal, for example, rpm[n]. This functionality of estimating the fundamental frequency and the frequencies of higher harmonics is represented by the block, which is a harmonic sinusoids generation module 25 labelled “generation of N harmonic sinusoids” in
The weighing factors a, b can be determined by the optimization module 302, which may be a least mean square (LMS) optimization module. The optimization module 302 is configured to adjust the weighing factors a and b such that an error signal is minimized (in a least square sense, such as an l2 norm of the signal is minimized). The residual signal R(ejω) obtained using the residual extraction 60 shown in
The signal analysis illustrated in
In order to determine the model parameters, the rotational speed of the engine of the vehicle under test may be continuously ramped up from the minimum to the maximum rpm value. In this case the model parameters determined for rpm values within a given interval (such as from 950 rpm to 1049 rpm) may be averaged and associated with the center value of the interval (such as 1000 rpm in the present example). If other or additional guide signals (e.g. engine load) are to be considered, the data acquisition and model parameter estimation is performed analogously to the case described with regard to the rpm signal as guide signal.
The model parameters describing the residual signal are provided to a envelope synthesizer module 140 included in the engine sound synthesis module, which recovers the magnitude M(ejω) of the residual signal. In the present example the phase of the residual signal is recovered by filtering with a filter module 150, such as all-pass filtering white noise (thus obtaining the phase signal P(ejω)) and adding the phase signal P(ejω) to the magnitude signal M(ejω) so as to generate the total residual signal Rest(ejω). The white noise is generated by a noise generator module 120 included in, or external to the engine sound synthesis module. The filter module 150 may be an all pass filter that implements a phase filter by mapping the white noise supplied to the filter input into the phase region 0 to 2π thus providing the phase signal P(ejω). The synthesized engine sound signal Xest(ejω) can then be obtained by adding the recovered harmonic signal Hest(ejω) and the recovered residual signal Rest(ejω). The resulting sound signal in the frequency domain may then be transformed to the time domain, amplified and reproduced using common audio reproduction devices.
Below some aspects of the engine sound synthesis system are summarized. It should be noted, however, that the following discussion is not regarded to be exhaustive or complete.
One aspect of operation of the engine sound synthesis system relates to analyzing sound, such as engine sound signals picked up near a combustion engine. The engine sound synthesis system can also determine a fundamental frequency of an input signal to be analyzed, thereby making use of the input signal or at least one guide signal. Furthermore, the frequencies of higher harmonics of the fundamental frequency can be determined, thus obtaining harmonic model parameters. The engine sound synthesis system further includes synthesizing a harmonic signal based on the harmonic model parameters and subtracting the harmonic signal from the input signal to obtain a residual signal. Finally, residual model parameters can be estimated based on the residual signal.
The input signal may be transformed to the frequency domain, thus providing a frequency domain input signal, before being further processed. In this case the number of higher harmonics which can be considered is only limited to the length of the input vectors used, e.g., by the FFT (fast Fourier transform) algorithm that provides the transformation into the frequency domain. Generally, the processing of an input signal may be fully performed in the frequency domain and thus the harmonic signal and the residual signal may also be calculated in the frequency domain.
The fundamental frequency and the frequencies of the higher harmonics may be derived from the at least one guide signal, in order to avoid an estimation of the fundamental frequency (and of the frequencies of the higher harmonics) directly from the input signal which typically is computationally complex.
The harmonic model parameters may include a frequency vector (f) of the fundamental frequency and the frequencies of the higher harmonics, a corresponding amplitude vector (A), and a corresponding phase vector (φ). Determining the harmonic model parameters may include estimating phase and amplitude values associated with the fundamental frequency and the frequencies of higher harmonics. Generally, determining the harmonic model parameters may include a fine-tuning of the fundamental frequency and the frequencies of the higher harmonics obtained from, or based on, the at least one guide signal. Such fine-tuning may entail an iterative modification of the frequencies of higher harmonics and their corresponding (estimated) amplitude and phase values such that a norm of the residual signal is minimized, such as an L2 norm. This fine-tuning can be regarded as a kind of optimization process.
The residual signal may be filtered using a filter, such as a non-linear filter, to smooth the residual signal before estimating the residual model parameters. Determining the residual model parameters may include calculating the power spectrum of the residual signal. The power spectral density may be calculated for different frequency bands in accordance with a psycho-acoustically motivated frequency scale so as to consider psycho-acoustically critical band limits.
Another aspect of the engine sound synthesis system relates to a method for synthesizing a sound signal based on harmonic model parameters and residual model parameters, wherein the parameters may particularly be determined in accordance with the below summary description. Operation of the engine sound synthesis system may include the calculation of the fundamental frequency and frequencies of a number of higher harmonics based on the at least one guide signal. The residual model parameters and the harmonic model parameters that are associated with the calculated frequencies can be provided, and a harmonic signal can be synthesized using the harmonic model parameters for the calculated fundamental frequency and frequencies of higher harmonics. Furthermore, a residual signal can be synthesized using the residual model parameters. The total sound signal can then be calculated by superposing the synthesized harmonic signal and residual signal.
Pre-filtered white noise may be added to the total sound signal. Particularly, the pre-filtering may include the mapping of amplitude values of the white noise into the 0 to 2π phase range, thus generating a phase signal to be added to the total sound signal. Generally, synthesizing the residual signal may include the generation of a noise signal having a power spectral density which corresponds to a power spectral density represented by the residual model parameters.
Furthermore, the engine sound synthesis system, or one or more aspects of the engine sound synthesis system, may include a portion or all of one or more computing devices of various kinds, such as the computer system 200 in
The computer system 200 may be implemented using electronic devices that provide voice, audio, video or data communication. While a single computer system 200 is illustrated, the term “system” may include any collection of systems or sub-systems that individually or jointly execute a set, or multiple sets, of instructions to perform one or more computer functions.
The computer system 200 may include a processor 202, such as a central processing unit (CPU), a graphics processing unit (GPU), or both. The processor 202 may be a component in a variety of systems. Also, the processor 202 may include one or more general processors, digital signal processors, application specific integrated circuits, field programmable gate arrays, servers, networks, digital circuits, analog circuits, combinations thereof, or other now known or later developed devices for analyzing and processing data. The processor 202 may implement a software program, such as code generated manually or programmed.
The computer system 200 may include memory, such as a memory 204 that can communicate via a bus 210. The memory 204 may be or include a main memory, a static memory, or a dynamic memory. The memory 204 may include any non-transitory memory device. The memory 204 may also include computer readable storage media such as various types of volatile and non-volatile storage media including random access memory, read-only memory, programmable read-only memory, electrically programmable read-only memory, electrically erasable read-only memory, flash memory, a magnetic tape or disk, optical media and the like. Also, the memory may include a non-transitory tangible medium upon which software may be stored. The software may be electronically stored as an image or in another format, such as through an optical scan, then compiled, or interpreted or otherwise processed or executed.
In one example, the memory 204 may include a cache or random access memory for the processor 202. In alternative examples, the memory 204 may be separate from the processor 202, such as a cache memory of a processor, the system memory, or other memory. The memory 204 may be or include an external storage device or database for storing data. Examples include a hard drive, compact disc (CD), digital video disc (DVD), memory card, memory stick, floppy disc, universal serial bus (USB) memory device, or any other device operative to store data. For example, the computer system 200 may also include a disk or optical drive unit 208. The drive unit 208 may include a computer-readable medium 222 in which one or more sets of software or instructions, such as the instructions 224, can be embedded. The processor 202 and the memory 204 may also include a computer-readable storage medium with instructions or software.
The memory 204 may be operable to store instructions executable by the processor 202. The functions, acts or tasks illustrated in the figures or described may be performed by the programmed processor 202 executing the instructions stored in the memory 204. The functions, acts or tasks may be independent of the particular type of instructions set, storage media, processor or processing strategy and may be performed by software, hardware, integrated circuits, firmware, microcode and the like, operating alone or in combination. Likewise, processing strategies may include multiprocessing, multitasking, parallel processing and the like.
The instructions 224 may include the methods and/or logic described herein, including aspects or modules of the computer system 200 and/or one or more example components of the engine sound synthesis system, such as the sinusoidal signal estimation module 30. The instructions 224 may reside completely, or partially, in the memory 204 or in the processor 202 during execution by the computer system 200. For example, software aspects or modules of the engine sound synthesis system, such as the sinusoidal signal estimation module 30, may include examples of various signal processors that may reside completely, or partially, in the memory 204 or in the processor 202 during execution by the computer system 200.
With respect to various signal processors that may be used by the engine sound synthesis system, hardware or software implementations of such processors may include analog and/or digital signal processing modules and analog-to-digital and/or digital-to-analog converters. The analog signal processing modules may include linear electronic circuits such as passive filters, active filters, additive mixers, integrators and delay lines. Analog processing modules may also include non-linear circuits such as compandors, multiplicators (frequency mixers and voltage-controlled amplifiers), voltage-controlled filters, voltage-controlled oscillators and phase-locked loops. The digital or discrete signal processing modules may include sample and hold circuits, analog time-division multiplexers, analog delay lines and analog feedback shift registers, for example. In other implementations, the digital signal processing modules may include ASICs, field-programmable gate arrays or specialized digital signal processors (DSP chips). Either way, such digital signal processing modules may enhance an image signal via arithmetical operations that include fixed-point and floating-point, real-valued and complex-valued, multiplication, and/or addition. Other operations may be supported by circular buffers and/or look-up tables. Such operations may include Fast Fourier transform (FFT), finite impulse response (FIR) filter, infinite impulse response (IIR) filter, and/or adaptive filters.
Further, the computer system 200 may include a computer-readable medium that may include the instructions 224 or receives and executes the instructions 224 responsive to a propagated signal so that a device, can communicate voice, video, audio, images or any other data to the computer system 200 and/or another electronic device. The instructions 224 may be transmitted or received via a communication port or interface 220, or using a bus 210. The communication port or interface 220 may be a part of the processor 202 or may be a separate component. The communication port or interface 220 may be created in software or may be a physical connection in hardware. The communication port or interface 220 may be configured to connect with a network, external media, one or more input/output devices 214, or any other components in the computer system 200, or combinations thereof. The connection with a network may be a physical connection, such as a wired Ethernet connection or may be established wirelessly. The additional connections with other components of the computer system 200 may be physical connections or may be established wirelessly.
The communication interface 220 may include communication over wired networks, wireless networks, Ethernet AVB networks, a CAN bus, a MOST bus, or combinations thereof. The wireless network may be or include a cellular telephone network, an 802.11, 802.16, 802.20, 802.1Q or WiMax network. The wireless network may also include a wireless LAN, implemented via WI-FI or BLUETOOTH technologies. One or more components of the computer system 200 may communicate with each other by or through the communication interface 220.
The one or more input/output devices 214 may be configured to allow a user to interact with any of the components of the computer system 200. The one or more input/output devices 214 may include a keypad, a keyboard, a cursor control device, such as a mouse, or a joystick. Also, the one or more input/output devices 214 may include a microphone, one or more visual displays, speakers, remote controls, touchscreen displays or any other devices operative to interact with the computer system 200, such as any device operative to act as an interface between the computer system and one or more users and/or other electronic devices.
The term “computer-readable medium” may include a single storage medium or multiple storage media, such as a centralized or distributed database, or associated caches and servers that store one or more sets of instructions. The term “computer-readable medium” may also include any medium that is capable of storing, encoding or carrying a set of instructions for execution by a processor or that cause a computer system to perform any one or more of the methods or operations disclosed. The “computer-readable medium” may be non-transitory, and may be tangible.
In alternative examples, dedicated hardware implementations, such as application specific integrated circuits, programmable logic arrays and other hardware devices, may be constructed to implement various aspects of the system. One or more examples described may implement functions using two or more specific interconnected hardware modules or devices with related control and data signals that can be communicated between and through modules, or as portions of an application-specific integrated circuit. The system may encompass software, firmware, and hardware implementations.
The system described may be implemented by software programs executable by a computer system. Implementations can include distributed processing, component/object distributed processing, and parallel processing. Alternatively, virtual computer system processing can be constructed to implement various aspects of the system.
To clarify the use in the pending claims and to hereby provide notice to the public, the phrases “at least one of <A>, <B>, . . . and <N>” or “at least one of <A>, <B>, . . . <N>, or combinations thereof” are defined by the Applicant in the broadest sense, superseding any other implied definitions herebefore or hereinafter unless expressly asserted by the Applicant to the contrary, to mean one or more elements selected from the group comprising A, B, . . . and N, that is to say, any combination of one or more of the elements A, B, . . . or N including any one element alone or in combination with one or more of the other elements which may also include, in combination, additional elements not listed.
Although various exemplary embodiments of the engine sound synthesis system have been disclosed, it will be apparent to those skilled in the art that various changes and modifications can be made which will achieve some of the advantages of the system without departing from the spirit and scope of the engine sound synthesis system. It will be obvious to those reasonably skilled in the art that other components performing the same functions may be suitably substituted. Particularly, signal processing functions may be performed either in the time domain or in the frequency domain while achieving substantially equal results. It should be mentioned that features explained with reference to a specific figure may be combined with features of other figures, even in those where not explicitly been mentioned. Further, the methods of the engine sound synthesis system may be achieved in either all software implementations, using the appropriate processor instructions, or in hybrid implementations that utilize a combination of hardware logic and software logic to achieve the same results. Such modifications to the inventive concept are intended to be covered by the appended claims, and it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
12 176 133 | Jul 2012 | EP | regional |
Number | Name | Date | Kind |
---|---|---|---|
5410606 | Imai et al. | Apr 1995 | A |
5999897 | Yeldener | Dec 1999 | A |
20080267425 | Le Faucheur | Oct 2008 | A1 |
Number | Date | Country |
---|---|---|
1 577 879 | Sep 2005 | EP |
WO 0133543 | May 2001 | WO |
WO 2009028790 | Mar 2009 | WO |
Entry |
---|
Serra, “Musical Sound Modeling with Sinusoids plus Noise”, in Musical Signal Processing, 1997, by publishers: Swets & Zeitlinger and editors: C. Roads, S. Pope, A. Picialli, G. De Poli, p. 1-25. |
Smit, et al “Guided Harmonic Sinusoid Estimation in a Multi-Pitch Environment”, IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, Oct. 18-21, 2009, New Paltz, NY, p. 41-44. |
Extended European Search Report, dated Mar. 7, 2013, pp. 1-14, European Patent Application No. 12176133.2, European Patent Office, Munich, Germany. |
Das, D.P., Panda, G., Kuo, S.M., “New block filtered-X LMS algorithms for active noise control systems,” Jun. 7, 2007, pp. 73-81, IET Signal Process, vol. 1, No. 2, XP006028980, © The Institution of Engineering and Technology 2007. |
Kuo, S.M., Tahernezhadi, M., Ji, L., “Frequency-Domain Periodic Active Noise Control and Equalization,” Jul. 1, 1997, pp. 348-358, vol. 5, No. 4, XP011054259, IEEE Transactions on Speech and Audio Processing, IEEE Service Center, New York, NY © 1997 IEEE. |
Smit, C., Ellis, D.P.W., “Guided Harmonic Sinusoid Estimation in a Multi-Pitch Environment,” Oct. 18 to Oct. 21, 2009, pp. 1-4, 2009 IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, New Paltz, NY. |
Fastl, H., Zwicker, E., “Psychoacoustics Facts and Models,” Springer Series in Information Sciences, Aug. 2006, pp. Preface -462, ISBN-10 3-540-65063-6 2nd Ed., Springer-Verlag Berlin Heidelberg New York, © Springer-Verlag Berlin Heidelberg, 1990, 1999, 2007. |
Number | Date | Country | |
---|---|---|---|
20140016792 A1 | Jan 2014 | US |