Learned road condition representation for active road noise cancellation
By compressing the reference signal of the current reference condition of the vehicle into a potential space vector and matching it with the cluster group in the database, retrieving relevant configuration properties and generating anti-noise signals, the problem of slow response of noise cancellation systems in the prior art is solved, and a better noise cancellation effect is achieved.
Patent Information
- Application Number
- CN202411088306.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-07-22
- Filing Date
- 2024-08-09
- Publication Date
- 2025-02-25
AI Technical Summary
The existing noise cancellation technology responds slowly when the vehicle environment changes, resulting in poor noise suppression effect.
By receiving a reference signal representing the current reference condition of the vehicle, compressing it into a potential space vector, and matching the cluster group stored in the database, the associated configuration properties are retrieved to generate an anti-noise signal.
Fast response in the environment changes is achieved, and noise cancellation is improved, especially in the process of switching from one noise condition to another, providing at least 3-5 dB of cancellation improvements.
Smart Images

Figure CN119516990A_ABST
Abstract
Description
[0001] Priority claim
[0002] This patent application claims priority to U.S. Provisional Patent Application Serial No. 63 / 578,448, filed on August 24, 2023, entitled “Learned Road Condition Representation for Active Road Noise Cancellation,” the entire contents of which are incorporated herein by reference. Technical Field
[0003] The present disclosure relates generally to parameter tuning of noise cancellation systems, and in particular active noise cancellation for vehicles. Background Art
[0004] Cabin noise can be problematic because it can cause driver fatigue and hinder entertainment and voice-controlled devices. Cabin noise can be more noticeable in electric vehicles, which don’t have an engine to mask some of the noise.
[0005] Noise cancellation (also known as road noise cancellation) can suppress noise in the vehicle cabin using certain filtering techniques. Sources of noise in the vehicle cabin may include road noise generated by the suspension and tire contact with the road surface, which is typically relatively low frequency. Other noise sources include engine noise (typically narrow band) and weather-related noise such as wind, rain, etc. Different noise sources and combinations may require different filter configurations. When dealing with traditional noise cancellation techniques, latency can become an issue, especially as the vehicle moves to different environmental (road) conditions and the noise cancellation system is slow to react to the changing conditions. Summary of the invention
[0006] A method for providing active noise cancellation is disclosed herein, the method comprising: receiving a set of reference signals representing current reference conditions of a vehicle, the set of reference signals being defined in m dimensions; compressing the set of reference signals into a latent space vector defined in n dimensions, where m is greater than n; matching the latent space vector with a cluster group stored in a database, the cluster group representing a previously encountered reference condition; retrieving configuration attributes associated with the matched cluster group; and generating an anti-noise signal based on the retrieved configuration attributes.
[0007] In addition, the present invention discloses a system comprising: one or more processors of a machine; and a memory storing instructions which, when executed by the one or more processors, cause the machine to perform the following operations: receive a set of reference signals representing current reference conditions of a vehicle, the set of reference signals being defined in m dimensions; compress the set of reference signals into a latent space vector defined in n dimensions, where m is greater than n; match the latent space vector with a cluster group stored in a database, the cluster group representing a previously encountered reference condition; retrieve configuration attributes associated with the matched cluster group; and generate an anti-noise signal based on the retrieved configuration attributes.
[0008] In addition, the present invention discloses a machine-readable storage medium, which contains instructions. When the machine executes these instructions, it causes the machine to perform the following operations: receive a set of reference signals representing current reference conditions of the vehicle, the set of reference signals being defined in m dimensions; compress the set of reference signals into a latent space vector defined in n dimensions, where m is greater than n; match the latent space vector with a cluster group stored in a database, the cluster group representing a previously encountered reference condition; retrieve configuration attributes associated with the matched cluster group; and generate an anti-noise signal based on the retrieved configuration attributes. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The various figures in the drawings depict only example embodiments of the present disclosure and should not be considered limiting of its scope.
[0010] Figure 1 A block diagram of an example portion of an active noise cancellation system is shown.
[0011] Figure 2 An example output of the encoder over a reference data history is shown.
[0012] Figure 3 An example mechanism for dynamically loading taps based on reference / noise conditions is shown.
[0013] Figure 4 An example of a parameter gradient search for the step size parameter is shown.
[0014] Figure 5 Examples of the results of encoding different windows of reference signal data into the 2D latent space are shown.
[0015] Figure 6 A block diagram illustrating an example portion of the architecture of an active noise cancellation system.
[0016] Figure 7 An example portion of a sampling rate adaptive filtering component is shown.
[0017] Figure 8 A flow chart of a method of active noise cancellation technique with coarse and fine tuning is shown.
[0018] Fig. 9 Examples of points classified in different cluster groups are shown.
[0019] Fig.10 A set of results for an example using active noise cancellation techniques is shown.
[0020] Fig.11 A block diagram is shown that includes an example of a machine on which any one or more of the techniques (eg, methodologies) discussed herein may be performed. DETAILED DESCRIPTION
[0021] Improved active noise cancellation techniques are described herein. These techniques use an encoder to compress current reference conditions into a lower dimensional latent space vector. These techniques also store a database of latent space vectors that represent previously encountered reference conditions, along with associated configuration parameters such as filter coefficients / taps. Therefore, when the vehicle transitions from the current state to a different state (e.g., road conditions), the system can match it to the previously encountered state and quickly load the corresponding configuration parameters for active noise cancellation. Therefore, these techniques can provide improved active noise cancellation, especially during transitions from one noise condition to another.
[0022] Figure 1 A block diagram of an example portion of an active noise cancellation system 100 (also referred to as an active road noise cancellation system) is shown. As shown, the active noise cancellation system 100 can be disposed inside a vehicle. The active noise cancellation system 100 includes a plurality of reference sensors 102, a processor 104 (e.g., a digital signal processor (DSP)), a plurality of speakers 106, and a plurality of error microphones 108.
[0023] The reference sensor 102 may be configured as an accelerometer placed near a wheel of the vehicle. The reference sensor 102 may sense vibrations that may be associated with road noise entering the vehicle cabin. In some embodiments, four reference sensors 102 may be provided, one reference sensor (e.g., accelerometer) for each wheel of the vehicle. In some examples, each reference sensor 102 may include three axes, resulting in twelve reference signal channels.
[0024] The processor 104 may be provided as one or more microprocessors, such as a digital signal processor (DSP). The processor 104 may receive a reference signal from the reference sensor 102 and may generate an anti-noise signal based on the reference signal. The anti-noise signal may be 180° out of phase with the noise wave detected in the reference signal, so that the anti-noise signal destructively interferes with the detected noise wave to cancel the noise in the vehicle cabin. The anti-noise signal may be transmitted to the speaker 106, which may output the anti-noise signal. The error microphone 108 may detect the noise level in the vehicle and may transmit the information to the processor 104 in a feedback loop to modify the noise cancellation accordingly.
[0025] In some examples, the processor 104 can use adaptive filtering techniques to incrementally converge to an estimate of the noise immunity to play the speaker. Conventional systems can use adaptive filtering to gradually converge to the best noise immunity estimate to play the speaker. Different road conditions can use different adaptive filter taps and other configuration parameters. In conventional systems, each time the vehicle encounters different road conditions, it takes several seconds to several minutes for the adaptive filter to converge, during which the noise suppression effect is poor.
[0026] The noise cancellation techniques described herein reduce this latency problem and improve noise cancellation. The techniques described herein train the encoder to learn a low-dimensional "latent space" representation of the reference signal, which allows the system to recognize previously seen reference conditions and load previously converged adaptive filter taps and other configuration parameters. For example, these techniques can provide substantial improvements (e.g., at least 3-5dB) in noise cancellation performance under dynamically changing conditions.
[0027] The encoder can transform the reference signal (from the reference sensor as described above) from a high-dimensional space (raw or pre-processed accelerometer data) into a low-dimensional "latent" space. The encoder can be provided as a neural network.
[0028] Figure 2 An example output of the encoder over the history of reference data is shown. A scatter plot of data points in the 2D latent space encoding of the reference signal is shown. Different sets of points can be classified into clusters, where each cluster represents a different reference condition. Clusters 202, 204, 206 correspond to samples from different road conditions. Here, the points in clusters 202, 204, 206 correspond to samples seen from three different reference conditions, respectively. The encoder can convert a new window of reference data into a point in the latent space as a new window becomes available (e.g., every 200 milliseconds). The system can detect large jumps in the latent space corresponding to changes in road conditions and load previously saved taps (associated with black points) from the database. In some examples, the previously saved taps can correspond to the centers of the individual clusters. The database may be user / car specific. That is, car A can build its database based on the noise conditions encountered during use, and car B (which may be the same or different model as car A) can build its database based on the noise conditions encountered during use.
[0029] The system can detect a jump in the latent space, in this example from cluster 202 to cluster 204. This jump triggers the system to load a set of adaptive filter taps that were saved when it was previously in the "red" region of the latent space. That is, previously the system could jump directly from point 208 to point 210. However, the system can detect the jump from cluster 202 to cluster 204, and the system can load the previously saved tap 212 (here, the center of cluster 204). The jump is then made from point 212 to point 210. This jumping technique provides faster convergence and better cancellation than if an adaptive filter (e.g., filtered least mean squares (FxLMS)) were to perform gradient descent starting from the blue region of the latent space.
[0030] Figure 3 An example mechanism for dynamically loading taps based on reference / noise conditions is shown. A {key, value} dictionary is used to associate adaptive filter taps (values) or other configuration parameters with corresponding latent vectors (keys). The encoder computes a latent vector that is used to query a database of filter taps that is accumulated online while the system is running. When a jump in the latent space is detected, the system can compare the current latent space position to the available keys in the dictionary and select the tap corresponding to the closest latent vector. If no sufficiently close vector exists, the system can simply continue with its default behavior.
[0031] As part of an autoencoder-based neural network architecture, the encoder can be trained offline in advance. Figure 4 An example portion of the architecture of an autoencoder 400 is shown. The autoencoder includes an encoder 402, a latent space 404, and a decoder 406. The input and output of the autoencoder 400 are both in the same high-dimensional space. The autoencoder 400 is trained to reconstruct the input signal at the output layer. In the middle of the network is a smaller, low-dimensional layer that acts as a "bottleneck" and is forced to retain only the important information needed to reconstruct as much of the high-dimensional signal as possible. The autoencoder can be interpreted as a combined encoder 402 and decoder 406, and after training, the encoder 402 can be run alone to transform samples from the input space to the latent space.
[0032] One of the main advantages of the autoencoder approach is unsupervised training. Most machine learning today uses supervised training, where each training data sample requires a label (a class ID in a classification problem or a target value in a regression problem). With unsupervised training, the system uses a variety of unlabeled data, and the autoencoder learns to compress this data. Labeling data is expensive, time-consuming, and error-prone, so the ability to use unsupervised learning can be advantageous. Additionally, the system can handle unseen road conditions gracefully. When the system observes new latent space samples in areas with little or no data, the system adds this information to the database accordingly.
[0033] As described above, the encoder can be programmed offline before being deployed in a vehicle. The encoder can be vehicle specific. For example, different car models of the same car manufacturer may have their own trained encoders. That is, car model A may include trained encoder 1, car model B may include trained encoder 2, and so on.
[0034] Figure 5 An example of the result of encoding different windows of reference signal data into a 2D latent space is shown. The dataset includes four groups 502, 504, 506, 508 corresponding to four different road conditions. As mentioned above, these datasets are roughly labeled for illustration purposes because the algorithm does not use labels. In this example, group 502 may correspond to a vehicle traveling on a rumble strip at 50km / h. Group 504 may correspond to a car traveling on a bumpy local road at 50km / h. Group 506 may correspond to a car traveling on a highway at 100km / h. Group 508 may correspond to a car traveling at 120km / h. The figure shows a successful result, where different samples of the same or similar road conditions end up clustered together, while different road condition clusters occupy different regions in the latent space that are separated from each other.
[0035] Figure 6 A block diagram of an example portion of an architecture 600 for an active noise cancellation system is shown. As shown, the architecture 600 includes a coarse tuning portion and a fine tuning portion. A reference signal can be received by the architecture. As described above, an encoder 602 that has been trained offline can compress a high-dimensional reference signal into a low-dimensional latent space vector. The latent space vector can represent a reference condition seen by the vehicle in an instantaneous time window. A cluster component 604 can determine whether the latent space vector data belongs to the current cluster or a different cluster based on a database 606 of learned cluster information (such as a decision boundary), as described in further detail below. If the latent vector is identified as belonging to a cluster different from the current cluster, the configuration attributes associated with the new cluster can be retrieved from the database.
[0036] The decision logic 608 can input the retrieved configuration properties (e.g., filter taps / coefficients) to the sampling rate adaptive filtering component 610. The retrieved configuration parameters can be associated with the value of the cluster center. The filtering component 610 can use the configuration properties of the newly identified cluster and continue its fine-tuning and generation of the anti-noise signal played by the speaker.
[0037] Figure 7An example portion of a sampling rate adaptive filtering component 610 is shown. The sampling rate adaptive filtering component 610 (e.g., FxLMS) can receive a reference signal and include a primary path 702 and a secondary path 704 for generating an anti-noise signal. The sampling rate adaptive filtering component 610 can also include a feedback path 706 (e.g., an input received from an error microphone) that can fine-tune the adaptive filter component (W), such as filter coefficients / taps.
[0038] Figure 8 A flow chart of a method 800 for active noise cancellation techniques with coarse and fine adjustments according to some examples of the present subject matter is shown. As described above, the method 800 can be performed by one or more processors.
[0039] At operation 802, a reference signal is received. As described herein, the reference signal may be received from a plurality of reference sensors. The reference signal may be sampled in respective windows (e.g., 200 ms). For example, a respective window may include thousands of samples of the reference signal sampled during the window. Thus, the reference signal may be provided in a high dimensional space (e.g., m-dimensional).
[0040] At operation 804, the reference signal is compressed into a latent space vector using an encoder as described herein. The encoder may be trained offline, as described herein. In some examples, the encoder may continue its training during runtime operation of the vehicle. The encoder may compress the high-dimensional reference data into a low-dimensional latent space vector (e.g., n-dimensional), where m is greater than n (m>n). For example, the latent space vector may be provided in two dimensions or other low-dimensional values. The latent space vector may represent a reference condition (e.g., a road condition) in a corresponding window.
[0041] At operation 806, the system compares the latent space vector to a decision boundary associated with the current cluster. As described herein, a decision boundary may be associated with a previously determined and stored series of values representing the same or similar roads of the current reference (road) condition.
[0042] For example, a cluster can be defined by a Gaussian ellipse, where the decision boundary corresponds to the standard deviation value from the cluster center to the edge of the ellipse. Fig. 9 Examples of points classified in different cluster groups are shown. Clusters 902, 904, 906 can be defined by Gaussian ellipses. The decision boundary is defined by the standard deviation of the individual centers of the clusters. Cluster 902 can correspond to a first driving condition. Cluster 904 can correspond to a second driving condition. Cluster 906 can correspond to a third driving condition.
[0043] Back to Figure 8If the latent space vector is within the decision boundary, the system determines that the vehicle is still operating under the same reference / noise conditions and fine-tunes the active noise cancellation system, such as updating the filter coefficients of the sampling rate adaptive filter component (e.g., FxLMS), at operation 808. In addition, at operation 810, the system saves the refined configuration parameters associated with the current cluster group (e.g., optimized filter coefficient values based on the fine-tuning).
[0044] If the latent space vector exceeds the decision boundary, the system compares the latent space vector to stored cluster groups representing different reference conditions previously encountered by the vehicle at operation 812 .
[0045] If there is no match with the previously stored cluster group, then at operation 814, the system fine-tunes the active noise cancellation system, such as updating the filter coefficients of the sampling rate adaptive filtering component (e.g., FxLMS). In addition, at operation 816, the system saves the configuration parameters associated with the latent space vector (e.g., the optimized filter coefficient values based on the fine-tuning) as a new cluster group.
[0046] If there is a match with a previously stored cluster group, then at operation 818, the system retrieves matching configuration properties (e.g., filter coefficients) associated with the matching cluster group. That is, the system matches the current reference condition with the previously encountered reference condition. At operation 820, the system sets (or loads) configuration properties based on the retrieved configuration properties and then fine-tunes the active noise cancellation system, such as updating the filter coefficients of a sampling rate adaptive filtering component (e.g., FxLMS). Jumping to the retrieved configuration properties can speed up fine-tuning, thereby improving active noise cancellation by improving noise cancellation when transitioning from one condition to another.
[0047] Fig.10 A set of results for an example using the active noise cancellation technique described herein is shown compared to a conventional technique (baseline). Fig.10Results from a run are shown where the system stitched together 5 seconds of condition A (e.g., “highway 100 km / h” road conditions) with 5 seconds of condition B (e.g., “rumble strip 50 km / h” road conditions). The graph shows noise cancellation over time. Graph 502 shows cancellation with the encoder-based tap loading mechanism as described herein, and Graph 504 shows cancellation without the techniques described herein (traditional). Graphs 504 and 502 show the amount of noise cancellation achieved over time under baseline and latent space tap loading conditions, respectively. The latent space approach detects condition A at startup, condition B after the change, and loads filter taps for each condition. The system finds nearby previously converged taps in the latent space after the first reference data window and after a change in road conditions (detected by a large jump in the latent space). This allows the system to achieve at least 3-5dB of cancellation improvement, which will provide significant benefits to the user.
[0048] As described above, different configuration parameters may be loaded based on a match to a previously encountered reference condition. For example, the step size of an active noise cancellation system may be loaded based on a match. In some examples, active noise cancellation may be suspended based on a match. For example, if the system detects that the vehicle is traveling on a gravel road by matching the current latent space vector to a previously encountered gravel road condition, the system may suspend active noise cancellation. Noise cancellation may not be able to counteract the significant noise of a gravel road, so suspending active noise cancellation may be worthwhile, for example, to prevent increased in-vehicle noise from rock impacts near a reference sensor.
[0049] The techniques shown and described in this document may be performed using part or all of the active noise cancellation system described above, or using the following in combination with Fig.11 The machine 1100 discussed is used for execution. Fig.11 A block diagram is shown that includes an example of a machine 1100 on which any one or more of the techniques (e.g., methods) discussed herein may be performed. In various examples, the machine 1100 may operate as a standalone device or may be connected (e.g., networked) to other machines.
[0050] In a networked deployment, the machine 1100 can operate as a server machine, a client machine, or both in a server-client network environment. In one example, the machine 1100 can act as a peer machine in a peer-to-peer (P2P) (or other distributed) network environment. The machine 1100 can be a vehicle host / infotainment system, a vehicle electronic control unit (ECU), a personal computer (PC), a tablet device, a set-top box (STB), a personal digital assistant (PDA), a mobile phone, a network device, a network router, a switch or a bridge, or any machine capable of executing instructions (sequentially or otherwise) specifying the actions to be taken by the machine. In addition, although only a single machine is shown, the term "machine" should also be deemed to include any machine collection that executes a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein, such as cloud computing, software as a service (SaaS), and other computer cluster configurations.
[0051] As described herein, examples may include or be operated by logic or multiple components or mechanisms. A circuit is a collection of circuits implemented in a tangible entity, including hardware (e.g., simple circuits, gates, logic, etc.). Circuit membership may be flexible over time and as the underlying hardware changes. A circuit includes members that can perform specified operations individually or in combination when in operation. In one example, the hardware of the circuit may be designed invariably to perform a specific operation (e.g., hardwired). In one example, the hardware including the circuit may include variably connected physical components (e.g., execution units, transistors, simple circuits, etc.), including physically modified computer-readable media (e.g., magnetic, electrical, such as by a change in physical state or a transformation of another physical property, etc.) to encode instructions for a specific operation. When connecting the physical components, the underlying electrical properties of the hardware components may change, for example, from insulating properties to conductive properties, or vice versa. The instructions enable embedded hardware (e.g., execution units or loading mechanisms) to create members of the circuit in hardware through variable connections to perform a portion of a specific operation when in operation. Thus, when the device is operating, the computer-readable medium is communicatively coupled to the other components of the circuit. In one example, any physical component can be used in multiple members of multiple circuits. For example, under operation, an execution unit can be used in a first circuit of a first circuit at one point in time and reused by a second circuit in the first circuit or a third circuit in the second circuit at a different time.
[0052] The machine 1100 (e.g., a computer system) may include a hardware-based processor 1101 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory 1103, and a static memory 1105, some or all of which may communicate with each other via an interconnect 1130 (e.g., a bus). The machine 1100 may also include a display device 1109, an input device 1111 (e.g., an alphanumeric keyboard), and a user interface (UI) navigation device 1113 (e.g., a mouse). In one example, the display device 1109, the input device 1111, and the UI navigation device 1113 may include at least a portion of a touch screen display. The machine 1100 may also include a storage device 1120 (e.g., a drive unit), a signal generating device 1117 (e.g., a speaker), a network interface device 1150, and one or more sensors 1115, such as a global positioning system (GPS) sensor, a compass, an accelerometer, or other sensors. The machine 1100 may include an output controller 1119, such as a serial controller or interface (e.g., a universal serial bus (USB)), a parallel controller or interface, or other wired or wireless (e.g., an infrared (IR) controller or interface, near field communication (NFC), etc.), which is coupled to communicate or control one or more peripheral devices (e.g., a printer, a card reader, etc.).
[0053] The storage device 1120 may include a machine-readable medium on which is stored one or more sets of data structures or instructions 1124 (e.g., software or firmware) embodying or used by any one or more of the techniques or functions described herein. The instructions 1124 may also reside, completely or at least partially, within the main memory 1103, within the static memory 1105, within the mass storage device 1107, or within the hardware-based processor 1101 during execution of the instructions 1124 by the machine 1100. In one example, one or any combination of the hardware-based processor 1101, the main memory 1103, the static memory 1105, or the storage device 1120 may constitute a machine-readable medium.
[0054] Although the machine-readable medium is considered a single medium, the term “machine-readable medium” may include a single medium or multiple media (eg, a centralized or distributed database and / or associated caches and servers) configured to store one or more instructions 1124 .
[0055] The term "machine-readable medium" may include any medium that can store, encode, or carry instructions executed by the machine 1100 and cause the machine 1100 to perform any one or more of the techniques of the present disclosure, or any medium that can store, encrypt, or carry data structures used by or associated with these instructions. Non-limiting examples of machine-readable media may include solid-state memory and optical and magnetic media. Therefore, machine-readable media are not transient propagating signals. Specific examples of mass machine-readable media may include: non-volatile memory, such as semiconductor memory devices (e.g., electrically programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM)) and flash memory devices; magnetic or other phase change or state change memory circuits; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
[0056] The instructions 1124 may also be transmitted or received over the communication network 1121 using a transmission medium via the network interface device 1150 using any of a variety of transmission protocols (e.g., frame relay, Internet Protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.). Example communication networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), a mobile phone network (e.g., a cellular network), a plain old telephone (POTS) network, and a wireless data network (e.g., a wireless network such as a wireless network). The Institute of Electrical and Electronics Engineers (IEEE) 802.22 family of standards, known as The IEEE 802.26 family of standards), the IEEE 802.27.4 family of standards, peer-to-peer (P2P) networks, etc. In one example, the network interface device 1150 may include one or more physical jacks (e.g., Ethernet, coaxial, or telephone jacks) or one or more antennas to connect to the communication network 1121. In one example, the network interface device 1150 may include multiple antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-input (MIMO), or multiple-input single-output (MISO) technology. The term "transmission medium" shall be deemed to include any intangible medium capable of storing, encoding, or carrying instructions executed by the machine 1100, and includes digital or analog communication signals or other intangible media to facilitate the communication of such software.
[0057] Various annotations
[0058] Each of the non-limiting aspects described above may stand alone or in various permutations or combinations with one or more of the other aspects or other subject matter described in this document.
[0059] The above detailed description includes reference to the accompanying drawings that form a part of the detailed description. The accompanying drawings show specific embodiments in which the present invention can be put into practice by way of illustration. These implementations are also generally referred to as "examples". In addition to the elements shown or described, these examples may also include other elements. However, the inventors also consider examples that only provide the elements shown or described. In addition, the inventors also consider examples of any combination or permutation of those elements shown or described (or one or more aspects thereof), whether with respect to a specific example (or one or more aspects thereof) or with respect to other examples shown or described herein (or one or more aspects thereof).
[0060] In the event of an inconsistency in usage between this document and any document incorporated by reference, the usage in this document shall control.
[0061] In this document, the terms "a" or "an" are common in patent documents and are used to include one or more, independent of any other instances or uses of "at least one" or "one or more." In this document, the term "or" is used to refer to a non-exclusive or, such that "A or B" includes "A but not B," "B but not A," and "A and B," unless otherwise noted. In this document, the terms "including" and "wherein" are used as synonyms for the respective terms "comprising" and "wherein." In addition, in the following aspects, the terms "including" and "comprising" are open-ended, that is, a system, device, article, composition, formulation, or process that includes additional elements in addition to the elements listed after the term in an aspect is still considered to be within the scope of that aspect. In addition, in the following aspects, the terms "first," "second," and "third," etc. are used merely as labels and are not intended to impose numerical requirements on their objects.
[0062] The method examples described herein may be implemented at least in part by a machine or computer. Some examples may include a computer-readable medium or a machine-readable medium encoded with instructions, which may be operable to configure an electronic device to perform the method described in the above examples. The implementation of this method may include code, such as microcode, assembly language code, high-level language code, etc. Such code may include computer-readable instructions for performing various methods. The code may form a part of a computer program product. In addition, in one example, the code may be tangibly stored on one or more volatile, non-transient or non-volatile tangible computer-readable media, such as during execution or at other times. Examples of these tangible computer-readable media may include, but are not limited to, hard disks, removable disks, removable optical disks (e.g., optical disks and digital video disks), cassettes, memory cards or memory sticks, random access memories (RAM), read-only memories (ROM), etc.
[0063] The above description is intended to illustrate rather than limit. For example, the above examples (or one or more aspects thereof) may be used in combination with each other. Other implementations may be used, such as those that may be used by a person of ordinary skill in the art after reading the above description. The abstract is provided to allow the reader to quickly determine the nature of the technical disclosure. The premise of submitting this document is that this document shall not be used to interpret or limit the scope or meaning of these aspects. In addition, in the above detailed description, various features may be combined together to simplify the disclosure. This should not be interpreted as meaning that unclaimed public features are essential to any claim. On the contrary, the subject matter of the present invention may lie in the partial features of a specific disclosed embodiment. Therefore, the following aspects are incorporated into the detailed description as examples or implementations, each of which exists independently as a separate implementation, and it is conceivable that these implementations may be combined with each other in various combinations or arrangements.
Claims
1. A method for providing active noise cancellation, the method comprising: receiving a set of reference signals representing current reference conditions of the vehicle, the set of reference signals being defined in m dimensions; compressing the set of reference signals into a latent space vector defined in n dimensions, where m is greater than n; matching the latent space vectors to cluster groups stored in a database, the cluster groups representing previously encountered reference conditions; retrieving configuration properties associated with the matching cluster group; and A noise-resistant signal is generated based on the retrieved configuration properties.
2. The method of claim 1, wherein the compression is performed by a neural network encoder, and The neural network encoder is trained offline based on an autoencoder architecture using unsupervised training.
3. The method according to claim 2, wherein the autoencoder architecture comprises an encoder part, a latent space part and a decoder part, wherein the encoder part has an input layer for receiving an input signal, the latent space part is used to compress the input signal to generate a compressed signal, and the decoder part has a trained output layer for reconstructing the input signal from the compressed signal. The method of claim 1 , wherein the configuration properties include filter coefficients for a sampling rate adaptive filter.
5. The method according to claim 4, further comprising: Loading the filter coefficients into a sampling rate adaptive filter; fine-tuning the sampling rate adaptive filter to generate modified filter coefficients based on at least one feedback error signal; and The anti-noise signal is generated based on the modified filter coefficients.
6. The method of claim 1, wherein the configuration properties include a step size of an active noise cancellation system.
7. The method of claim 1, wherein the reference signal is sampled outputs from a plurality of accelerometers in a reference window.
8. The method according to claim 1, further comprising: The latent space vector is compared to a decision boundary associated with a current cluster group, wherein matching the latent space vector to the cluster group is performed in response to the latent temporal vector exceeding the decision boundary.
9. A system comprising: one or more processors of the machine; as well as A memory storing instructions that, when executed by the one or more processors, cause the machine to perform the following operations: receiving a set of reference signals representing current reference conditions of the vehicle, the set of reference signals being defined in m dimensions; compressing the set of reference signals into a latent space vector defined in n dimensions, where m is greater than n; matching the latent space vectors to cluster groups stored in a database, the cluster groups representing previously encountered reference conditions; Retrieve configuration properties associated with the matching cluster group; and A noise-resistant signal is generated based on the retrieved configuration properties.
10. The system of claim 9, wherein the compression is performed by a neural network encoder, and The neural network encoder is trained offline based on an autoencoder architecture using unsupervised training.
11. The system of claim 10, wherein the autoencoder architecture comprises an encoder portion having an input layer for receiving an input signal, a latent space portion for compressing the input signal to generate a compressed signal, and a decoder portion having a trained output layer for reconstructing the input signal from the compressed signal.
12. The system of claim 9, wherein the configuration properties include filter coefficients for a sampling rate adaptive filter.
13. The system of claim 12, further comprising: Loading the filter coefficients into a sampling rate adaptive filter; fine-tuning the sampling rate adaptive filter to generate modified filter coefficients based on at least one feedback error signal; and The anti-noise signal is generated based on the modified filter coefficients.
14. The system of claim 9, wherein the configuration properties include a step size of an active noise cancellation system.
15. The system of claim 9, wherein the reference signal is sampled outputs from a plurality of accelerometers in a reference window.
16. The system of claim 9, further comprising: The latent space vector is compared to a decision boundary associated with a current cluster group, wherein matching the latent space vector to the cluster group is performed in response to the latent temporal vector exceeding the decision boundary.
17. A machine-readable storage medium containing instructions that, when executed by a machine, cause the machine to perform the following operations: receiving a set of reference signals representing current reference conditions of the vehicle, the set of reference signals being defined in m dimensions; compressing the set of reference signals into a latent space vector defined in n dimensions, where m is greater than n; matching the latent space vectors to cluster groups stored in a database, the cluster groups representing previously encountered reference conditions; Retrieve configuration properties associated with the matching cluster group; and A noise-resistant signal is generated based on the retrieved configuration properties.
18. The machine-readable storage medium of claim 17, wherein the compressing is performed by a neural network encoder, and The neural network encoder is trained offline based on an autoencoder architecture using unsupervised training.
19. A machine-readable storage medium according to claim 18, wherein the autoencoder architecture includes an encoder part, a latent space part and a decoder part, wherein the encoder part has an input layer for receiving an input signal, the latent space part is used to compress the input signal to generate a compressed signal, and the decoder part has a trained output layer for reconstructing the input signal from the compressed signal.
20. The machine-readable storage medium of claim 17, wherein the configuration properties include filter coefficients for a sampling rate adaptive filter.
21. The machine-readable storage medium of claim 20, further comprising: Loading the filter coefficients into a sampling rate adaptive filter; fine-tuning the sampling rate adaptive filter to generate modified filter coefficients based on at least one feedback error signal; and The anti-noise signal is generated based on the modified filter coefficients.