Adaptive sensing one-dimensional discrete time signal activity detection method and system

By adopting adaptive follow-up energy threshold adjustment and post-stage identification neural network-assisted adjustment methods in the end-side device, the problem of limited signal detection accuracy and power consumption reduction in the prior art is solved, and more efficient and accurate Signal activity detection and adapt to diverse application scenarios.

CN119400202AActive Publication Date: 2025-02-07UNIV OF ELECTRONICS SCI & TECH OF CHINA

Patent Information

Application Number
CN202411520261.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-29
Publication Date
2025-02-07
Estimated Expiration
2044-10-29

AI Technical Summary

Technical Problem

In the prior art, when the end-side device processes one-dimensional discrete time signals, the setting of a fixed threshold leads to a reduction in signal detection accuracy, limited power consumption reduction, and cannot effectively adapt to diverse application scenarios.

Method used

A one-dimensional discrete time signal activity detection method and system for adaptive perception is proposed, and the adaptive follow-up energy threshold adjustment and subsequent recognition neural network assisted adjustment is adopted to dynamically adjust the energy threshold to improve the efficiency and accuracy of signal activity detection.

Benefits of technology

Through adaptive threshold adjustment, the accuracy of signal activity detection is improved, the power consumption of equipment is reduced, and it is adapted to diverse application scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119400202A_ABST
    Figure CN119400202A_ABST
Patent Text Reader

Abstract

The invention provides a self-adaptive sensing one-dimensional discrete time signal activity detection method and system, and the method comprises the steps: firstly compensating the spectrum attenuation of a one-dimensional discrete time signal through pre-emphasis, then dividing a pre-emphasis one-dimensional time signal flow into a plurality of short time frames according to a fixed length, carrying out the windowing of a frame signal, and carrying out the windowing of the frame signal. Then, the short-time energy integral of the single-frame signal is calculated, dynamic energy threshold adjustment is carried out, the threshold adjustment comprises self-adaptive following threshold adjustment and post-stage recognition neural network auxiliary adjustment, a current energy threshold is obtained after adjustment, a constant is added on the basis of the obtained current energy threshold to serve as a judgment threshold, and the judgment threshold is used as a judgment threshold; and finally, performing signal activity detection by adopting the judgment threshold to obtain a real-time classification result of the signal frames. Through dynamic energy threshold adjustment, the final energy threshold follows around the signal amplitude, so that the purpose of self-adaption to the environment is achieved, the accuracy of signal activity detection is greatly improved, and the power consumption of equipment is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of speech signal processing, and in particular to an adaptively perceptual one-dimensional discrete time signal activity detection method and system. Background Art

[0002] One-dimensional time signal refers to a one-dimensional data sequence that changes over time. One-dimensional time signal has a wide range of applications in many fields, such as audio signal processing and data transmission in the field of communications, electrocardiogram and electroencephalogram in medicine and biomedical engineering, and stock price analysis in finance and economics. Neural networks have become an important pillar in the field of artificial intelligence. They have achieved great success in computer vision, natural language processing, speech recognition, etc., and are driving innovation and progress in science and technology and industry. At the same time, they have shown the potential for wide application in the fields of medicine, finance, transportation, etc., and are regarded as one of the key technologies driving the development of an intelligent society. The key issues that the end-side neural network processor needs to focus on include the balance between performance and power consumption, model compatibility, low-latency real-time reasoning capabilities, security and privacy protection, and flexibility to adapt to diverse application scenarios. While achieving high efficiency, the processor needs to ensure that models of different scales and complexities can be effectively supported, and provide low power consumption and latency to meet the needs of end-side devices for real-time response and long-term use. In addition, considering the diversity and security requirements of the end-side environment, the processor also needs to have a high security and privacy protection mechanism to deal with potential security threats and privacy leakage risks.

[0003] At the same time, reducing the power consumption generated by network inference is crucial for the deployment of AI on the end side, because the end-side devices are usually limited by battery life and heat dissipation capabilities, and the high-power inference process will accelerate battery consumption and cause the device to overheat. By reducing power consumption, the end-side devices can extend the use time, improve performance stability, and be more suitable for deployment in mobile environments and wireless networks, thereby providing users with a better experience and a wider range of application scenarios. In addition, low-power AI processors also help reduce energy consumption, reduce environmental burden, and conform to the trend of sustainable development. There are many ways to reduce the power consumption caused by network inference on the end side: such as model compression and lightweight, through pruning, quantization, distillation, sparse representation and other technologies to reduce model parameters and calculations, reduce the computing requirements during inference, and thus reduce power consumption. Or dynamically allocate computing resources, dynamically adjust the allocation of computing resources according to the actual inference load, and reduce power consumption in idle or low-load conditions.

[0004] The above-mentioned technical means to reduce the power consumption of the end-side equipment are all implemented in the inference stage of the neural network. In real applications, a large number of invalid inferences triggered by a continuous stream of input signals are the main part of the power consumption of the end-side equipment, that is, the front-end data processing part that is always turned on in the neural network inference system. Most of the existing end-side devices that use neural networks to identify one-dimensional discrete time signals use fixed threshold activity detection methods and systems based on experience and poor environmental adaptability. A fixed threshold that is set manually and has a significant impact on the filtering accuracy is used to filter out invalid signals whose signal and amplitude-related features are lower than the threshold and are useless for the subsequent neural network inference, so as to achieve data processing before the neural network inference and achieve the purpose of reducing power consumption. However, the setting of a fixed threshold will reduce the accuracy of signal detection, and the reduction in power consumption is also relatively limited. Summary of the invention

[0005] In response to the above problems, the present invention proposes an adaptively perceptual one-dimensional discrete-time signal activity detection method and system, the purpose of which is to filter out the invalid part of the continuous input signal before the neural network reasoning, reduce the startup frequency of the subsequent neural network, and thus reduce the power consumption of the terminal device due to invalid reasoning. At the same time, the present invention proposes an environment-adaptive threshold adjustment mechanism to improve the efficiency and accuracy of signal activity detection.

[0006] In one aspect, the present invention provides a method for detecting activity of a one-dimensional discrete-time signal with noise adaptive perception, the method comprising:

[0007] Step S1: pre-emphasis. Pre-emphasis compensates for the spectrum attenuation of the one-dimensional time signal by enhancing the high-frequency components, thereby making the high-frequency part of the signal more prominent. The processing method of pre-emphasis is: y[n] = x[n]-αx[n-1], where x[n] is the original signal at the current moment, x[n-1] is the original signal at the previous moment, y[n] is the signal after pre-emphasis at the current moment, and α is the pre-emphasis coefficient;

[0008] Step S2: signal framing, dividing the one-dimensional time signal stream after pre-emphasis processing into multiple short time frames of fixed length;

[0009] Step S3: Windowing the frame signal. Windowing reduces the influence of both ends of the frame on energy calculation by applying a weight to the edge of the frame. The window functions used include Hamming window and Hanning window. The expression of Hamming window is: Where N is the number of sampling points contained in each frame. After windowing the signal frame x[n], the windowed signal x is obtained. ω [n],x ω [n] = x[n]·ω[n];

[0010] Step S4: Calculate the short-time energy integral of the single-frame signal. For each frame of signal x ω [n], its short-time energy integral E is expressed as: Where N is the number of sampling points contained in each frame;

[0011] Step S5: Dynamic energy threshold adjustment. The adjustment of the energy threshold includes two parallel sub-processes: one is adaptive following threshold adjustment. The energy threshold will always be updated in the direction of following the signal amplitude; the other is the post-stage recognition neural network auxiliary adjustment. After the post-stage neural network recognizes an active frame or an inactive frame, the threshold will be updated in the direction that is more likely to generate an active frame.

[0012] Step S6: signal activity detection. After the above-mentioned energy threshold adjustment, a decision threshold is set. A larger threshold is obtained by adding a constant to the energy threshold obtained after the above-mentioned threshold adjustment as the decision threshold. Then, the decision threshold is used to perform signal activity detection to obtain the real-time classification result of the frame, that is, the short-time energy integral of the frame is compared with the decision threshold. A frame with a short-time energy integral greater than or equal to the decision threshold is classified as an active frame, and a frame with a short-time energy integral less than the decision threshold is classified as an inactive frame.

[0013] Furthermore, the adaptive following threshold adjustment includes:

[0014] Determine the initial threshold: Adaptive following is based on the results of frame judgments in the past period of time to decide whether and how to adjust the threshold. The period of time is in frames, called the adjustment window length. At the beginning of the whole process, an initial threshold is set manually based on experience.

[0015] Cumulative judgment result: When the number of frames does not reach the adjusted window length, the short-time energy integral of the frame is compared with the current energy threshold to determine whether the frame is an active frame or an inactive frame. At the same time, the number of active frames is continuously accumulated. When the short-time energy integral of the frame is greater than the current energy threshold, the frame is an active frame, and the active frame count is increased by 1.

[0016] Determine the direction of threshold adjustment: After the number of frames reaches the adjustment window length, the number of active frames in the accumulated number of frames of the past adjustment window length is used to determine whether the current energy threshold setting is appropriate. Two values ​​N are set based on actual experience. less and N more , N less <N more , N less To lower the threshold, N more To increase the threshold, when the number of active frames is less than N less When the number of active frames is greater than N, it means that the number of active frames is too small, that is, the current energy threshold is too high and the threshold needs to be lowered. moreWhen the number of active frames is N, it means that there are too many active frames, that is, the current energy threshold is too low and the threshold needs to be raised. less and N more When it is between , it means the number of active frames is appropriate, that is, the current energy threshold is appropriate and does not need to be adjusted;

[0017] Threshold adjustment: After determining the threshold adjustment direction, select a fixed threshold adjustment range or a non-fixed threshold adjustment range bound to the current energy threshold to adjust the threshold.

[0018] Furthermore, the post-stage recognition neural network auxiliary adjustment includes:

[0019] Determine the direction of threshold adjustment: the frame signal considered as an active frame by SAD will be sent to the recognition neural network of the next stage. The recognition neural network of the next stage will perform an inference after accumulating active frames that meet the minimum inference frame length. The result of the inference will be fed back to SAD to determine whether the frames sent to the next stage before are active frames. If the inference feedback of the next stage neural network is: SAD classification is correct, SAD will lower the threshold to ensure that subsequent signals are easier to send to the next stage neural network and avoid the loss of valid signals; if the feedback is: SAD classification is wrong, SAD will increase the threshold to ensure that subsequent invalid signals will not be sent to the next stage neural network again, so as to reduce the power consumption of erroneous inference;

[0020] Threshold adjustment: After determining the direction of threshold adjustment, SAD will immediately correct the energy threshold. The amplitude of threshold adjustment can be fixed or non-fixed.

[0021] On the other hand, the present invention also provides an adaptively perceived one-dimensional discrete time signal activity detection system, the system comprising a pre-emphasis module, a data cache module, a windowing module, a short-time energy integral extraction module, a follow-up threshold update module and a decision module;

[0022] Pre-emphasis module: The pre-emphasis module compensates for the spectrum attenuation of the one-dimensional time signal by enhancing the high-frequency components, making the high-frequency part of the signal more prominent. The pre-emphasis processing method is: y[n] = x[n]-αx[n-1], where x[n] is the original signal at the current moment, x[n-1] is the original signal at the previous moment, y[n] is the signal after pre-emphasis at the current moment, and α is the pre-emphasis coefficient;

[0023] Data cache module: The signal stream processed by the pre-emphasis module will be continuously sent to the data cache module. The module uses different memories to ping-pong to store the data of different half frames of the same channel, and stores the data of different channels in different address segments of the same memory. The cache process will complete the signal framing operation at the same time;

[0024] Windowing module: The windowing module uses a window function to apply a weight to the edge of the frame, so that the influence of both ends of the frame on the energy calculation is reduced. The window function includes the Hamming window and the Hanning window. The expression of the Hamming window is: Where N is the number of sampling points contained in each frame. After windowing the signal frame x[n], the windowed signal x is obtained. ω [n],x ω [n] = x[n]·ω[n];

[0025] Short-time energy integral extraction module: The short-time energy integral extraction module calculates the short-time energy integral of the frame signal after being framed by the data buffer module. For each frame signal x ω [n], its short-time energy integral E is expressed as: Where N is the number of sampling points contained in each frame;

[0026] Following threshold update module: This module completes the adjustment of the adaptive following threshold through the short-time energy integral provided by the energy integral extraction module and the adjustment of the adaptive threshold assisted by the inference result feedback of the post-stage recognition neural network;

[0027] Decision module: A decision threshold is set according to the following energy threshold provided by the following threshold update module. A larger threshold is obtained by adding a constant to the above following energy threshold as the decision threshold. Then the decision threshold is used to detect signal activity to obtain the real-time classification result of the frame, that is, the short-time energy integral of the frame is compared with the decision threshold. A frame with a short-time energy integral greater than or equal to the decision threshold is classified as an active frame, and a frame with a short-time energy integral less than the decision threshold is classified as an inactive frame. The classification result will be used to control whether the frame data is output or not.

[0028] Furthermore, the adaptive following threshold adjustment includes:

[0029] Determine the initial threshold: Adaptive following is based on the results of frame judgments in the past period of time to decide whether and how to adjust the threshold. The period of time is in frames, called the adjustment window length. At the beginning of the whole process, an initial threshold is set manually based on experience.

[0030] Cumulative judgment result: When the number of frames does not reach the adjusted window length, the short-time energy integral of the frame is compared with the current energy threshold to determine whether the frame is an active frame or an inactive frame. At the same time, the number of active frames is continuously accumulated. When the short-time energy integral of the frame is greater than the current energy threshold, the frame is an active frame, and the active frame count is increased by 1.

[0031] Determine the direction of threshold adjustment: After the number of frames reaches the adjustment window length, the number of active frames in the accumulated number of frames of the past adjustment window length is used to determine whether the current energy threshold setting is appropriate. Two values ​​N are set based on actual experience. less and N more , N less <N more , N less To lower the threshold, N more To increase the threshold, when the number of active frames is less than N less When the number of active frames is greater than N, it means that the number of active frames is too small, that is, the current energy threshold is too high and the threshold needs to be lowered. more When the number of active frames is N, it means that there are too many active frames, that is, the current energy threshold is too low and the threshold needs to be raised. less and N more When it is between , it means the number of active frames is appropriate, that is, the current energy threshold is appropriate and does not need to be adjusted;

[0032] Threshold adjustment: After determining the threshold adjustment direction, select a fixed threshold adjustment range or a non-fixed threshold adjustment range bound to the current energy threshold to adjust the threshold.

[0033] Furthermore, the post-stage recognition neural network auxiliary adjustment includes:

[0034] Determine the direction of threshold adjustment: the frame signal considered as an active frame by SAD will be sent to the recognition neural network of the next stage. The recognition neural network of the next stage will perform an inference after accumulating active frames that meet the minimum inference frame length. The result of the inference will be fed back to SAD to determine whether the frames sent to the next stage before are active frames. If the inference feedback of the next stage neural network is: SAD classification is correct, SAD will lower the threshold to ensure that subsequent signals are easier to send to the next stage neural network and avoid the loss of valid signals; if the feedback is: SAD classification is wrong, SAD will increase the threshold to ensure that subsequent invalid signals will not be sent to the next stage neural network again, so as to reduce the power consumption of erroneous inference;

[0035] Threshold adjustment: After determining the direction of threshold adjustment, SAD will immediately correct the energy threshold. The amplitude of threshold adjustment can be fixed or non-fixed.

[0036] Furthermore, the short-time energy integral extraction module is divided into two branches to extract features from the frame signal. The left branch includes an absolute value sum module, which calculates the absolute values ​​of all sampling values ​​of a frame signal and adds them up as the short-time energy integral of the frame signal; the right branch squares all sampling values ​​of a frame signal and adds them up as the short-time energy integral of the frame signal. The right branch includes a zero-jumping multiplication module and a dynamic quantization module. The zero-jumping multiplication module regards the square of a sampling point with a very small value as zero, and the dynamic quantization module decides whether to perform rounding calculations according to the size of the data shifted to reduce the loss in the quantization process.

[0037] The beneficial technical effects of the present invention are as follows:

[0038] (1) The present invention proposes an adaptive sensing one-dimensional discrete time signal activity detection method, which adopts adaptive following energy threshold adjustment and integrates the inference feedback of the post-stage recognition neural network. The energy threshold is adjusted according to the inference feedback. Through adaptive following energy threshold adjustment and post-stage recognition neural network auxiliary energy threshold adjustment, the final energy threshold will follow the signal amplitude, achieving the purpose of adaptive environment, making the accuracy of signal activity detection much higher than the traditional fixed threshold based on short-time energy integration, and reducing the power consumption of the device;

[0039] (2) The present invention also proposes a low-power and low-cost signal activity detection system based on a configurable architecture. By adopting ping-pong operation, zero-skipping multiplication and dynamic quantization, circuit multiplexing and integration of approximate operations are achieved to reduce circuit power consumption, thereby realizing a multi-mode configurable signal activity detection system with low additional hardware overhead. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0041] Figure 1 is a flow chart of an adaptive sensing one-dimensional discrete time signal activity detection method provided by an embodiment of the present invention;

[0042] Figure 2 is a structural diagram of an adaptive sensing one-dimensional discrete time signal activity detection system provided by an embodiment of the present invention;

[0043] Figure 3 It is a structural diagram of a short-time energy integration extraction module provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0044] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0045] Signal Activity Detection (SAD) is a process designed to detect active parts from a signal stream. The application scope of SAD is very wide, covering various fields from communication systems to sensor networks. Its significance and advantages are also obvious. For example, SAD can be used to distinguish between speech or non-speech parts in the process of speech signal processing, thereby reducing the system's storage overhead and power consumption overhead when there is no speech.

[0046] The features commonly used to realize SAD include time domain features, frequency domain features, time-frequency joint features, statistical features and machine learning features. The present invention selects time domain short-time energy, which is easy to extract and easy to build in a system with high real-time requirements, as the detection feature used to distinguish between active and inactive parts in the signal stream.

[0047] An adaptive sensing method for activity detection of one-dimensional discrete-time signals, such as Figure 1 As shown, the method includes:

[0048] Step S1: Pre-emphasis. The spectrum of a natural speech signal usually shows that the high-frequency component decays quickly, that is, the low-frequency component occupies the main energy. This phenomenon is called spectral attenuation. Pre-emphasis can compensate for this attenuation by enhancing the high-frequency component, making the high-frequency part of the signal (the part that changes rapidly) more prominent. In a speech signal, pre-emphasis will make the edge part of the speech signal (such as consonants and plosives) have higher energy and easier to detect. The essence of pre-emphasis is a high-pass filter:

[0049] y[n]=x[n]-αx[n-1]

[0050] Where x[n] is the original signal at the current moment, x[n-1] is the original signal at the previous moment, y[n] is the signal after pre-emphasis at the current moment, and α is the pre-emphasis coefficient, which is between 0.9 and 1.0;

[0051] Pre-emphasis is optional and may not be used when resources are limited.

[0052] Step S2: signal framing, dividing the pre-emphasized one-dimensional time signal stream into multiple short time frames (usually between 10 milliseconds and 30 milliseconds) according to a fixed length. Because the characteristics of the one-dimensional time signal are relatively stable in a short time, subsequent processes are further processed on the basis of frames.

[0053] Step S3: Windowing the frame signal. After the signal is framed, it is equivalent to truncating each frame signal, resulting in discontinuity of the signal at the truncation point. This phenomenon is called the boundary effect. The influence of the frame boundary may cause inaccurate calculation of the short-term energy of the frame. Windowing reduces the influence of the two ends of the frame on the energy calculation by applying a smaller weight to the edge of the frame, thereby more accurately reflecting the energy of the central part of the signal. Commonly used window functions include Hamming window, Hanning window, etc. This embodiment uses the Hamming window to window each frame signal. The mathematical expression of the Hamming window is:

[0054]

[0055] Where N is the number of sampling points contained in each frame. After windowing the signal frame x[n], the windowed signal x is obtained. ω [n]:

[0056] x ω [n] = x[n]·ω[n]

[0057] Step S4: Calculate the short-time energy integral of the single-frame signal. For each frame of signal x ω [n], its short-time energy integral E is expressed as:

[0058]

[0059] Where N is the number of sampling points contained in each frame;

[0060] Frame signal windowing is also optional and may not be used when resources are limited.

[0061] Step S5: Dynamic energy threshold adjustment. The adjustment of the energy threshold includes two parallel sub-processes. One is adaptive following threshold adjustment. The energy threshold will always be updated in the direction of following the signal amplitude. The other is the auxiliary adjustment of the post-stage recognition neural network. Signal activity detection often does not work independently. It is often used as a pre-process of the post-stage recognition neural network. After the post-stage neural network recognizes an active frame or an inactive frame, the threshold will be updated in the direction that is more likely to generate an active frame.

[0062] According to the traditional mechanism, the classification result of the frame, i.e., active frame or inactive frame, can be obtained by comparing the short-term energy integral of the frame with the set fixed empirical energy threshold. However, in the mechanism proposed by us, the energy threshold used to obtain the classification result is not fixed, but can be adaptively adjusted as the environment changes;

[0063] The adaptive following threshold adjustment includes:

[0064] Determine the initial threshold: Adaptive following determines whether and how to adjust the threshold based on the results of frame judgments in the past period of time. The period of time is manually configured in frames and is called the adjustment window length. At the beginning of the whole process, an initial threshold is manually determined based on experience. Different initial threshold settings will affect the time required for the threshold to reach the environmental level.

[0065] Cumulative judgment result: When the number of frames does not reach the adjustment window length, the short-time energy integral of the frame is compared with the current energy threshold to determine whether the frame is an active frame or an inactive frame. At the same time, the number of active frames is continuously accumulated. When the short-time energy integral of the frame is greater than the current energy threshold, the frame is an active frame, and the active frame count is increased by 1.

[0066] Determine the direction of threshold adjustment: After the number of frames reaches the adjustment window length, the number of active frames in the accumulated number of frames of the past adjustment window length is used to determine whether the current energy threshold setting is appropriate. Two values ​​N are set based on actual experience. less and N more , N less <N more , N less To lower the threshold, N more To increase the threshold, the typical value is N less =Adjust window length*0.3, N more =Adjust window length*0.8, when the number of active frames is less than N less When the number of active frames is greater than N, it is considered that the number of active frames is too small, that is, the current energy threshold is too high, and the threshold needs to be lowered; when the number of active frames is greater than N more When the number of active frames is N, it is considered that there are too many active frames, that is, the current energy threshold is too low, and the threshold needs to be raised; when the number of active frames is N less and N more When the number of active frames is between , it is considered that the current energy threshold is appropriate and no adjustment is required;

[0067] Threshold adjustment: After determining the direction of threshold adjustment, start adjusting the threshold. You can choose a fixed threshold adjustment range or a non-fixed threshold adjustment range that is always bound to the current energy threshold. The fixed threshold adjustment range is more stable during adjustment than the non-fixed threshold adjustment range. The non-fixed threshold adjustment range can follow the environmental signal faster.

[0068] The post-stage recognition neural network auxiliary adjustment includes:

[0069] Determine the direction of threshold adjustment: In common application scenarios, frame signals that are considered to be active frames by SAD will be sent to the subsequent recognition neural network. The subsequent recognition neural network will not perform reasoning at the frame level, but will often perform reasoning after accumulating active frames that meet the minimum reasoning frame length. The reasoning result will be fed back to SAD to determine whether the frames sent to the subsequent stage before are active frames, thereby building a feedback mechanism to let SAD know whether the current threshold is appropriate; if the reasoning feedback of the subsequent recognition neural network is: SAD classification is correct, SAD will lower the energy threshold to ensure that subsequent signals are easier to send to the subsequent neural network and avoid the loss of valid signals; if the feedback is: SAD classification is wrong, SAD will increase the energy threshold to ensure that subsequent invalid signals will not be sent to the subsequent neural network again, thereby reducing the power consumption of erroneous reasoning;

[0070] Threshold adjustment: After determining the inference direction, SAD will immediately correct the energy threshold. It will not wait for an adjustment window length like the adaptive following threshold adjustment. The adjustment range can also be fixed or non-fixed. The energy threshold adjustment range in this process will be larger than the adjustment range in the adaptive following threshold adjustment.

[0071] Step S6: signal activity detection. After the above-mentioned threshold adjustment, the energy threshold will follow the signal amplitude to achieve the purpose of adaptive environment. The goal of SAD is to remove the inactive part and only obtain the active part. Therefore, a decision threshold is set. The decision threshold is directly related to the following energy threshold obtained in the above process. A larger threshold can be obtained by adding a constant to the above-mentioned following energy threshold as the decision threshold. Then, the decision threshold is used to perform signal activity detection to obtain the real-time classification result of the frame, that is, the short-time energy integral of the frame is compared with the decision threshold. The short-time energy integral is greater than or equal to the decision threshold and is classified as an active frame, and the short-time energy integral is less than the decision threshold and is classified as an inactive frame.

[0072] On the other hand, the present invention proposes an adaptive sensing one-dimensional discrete time signal activity detection system, such as Figure 2 As shown in the figure, the functions realized by the signal activity detection system are: signal stream preprocessing, dividing the continuous signal stream into signal segments in frames, extracting the features of the signal segments and obtaining the classification results of the signal segments based on the features - whether they belong to active signal segments or inactive signal segments, and deciding whether the corresponding signal segments should be sent to the subsequent recognition neural network based on the classification results.

[0073] The signal activity detection system comprises a pre-emphasis module, a data buffer module, a windowing module, a short-time energy integral extraction module, a follow-up threshold updating module and a judgment module.

[0074] Pre-emphasis module: The pre-emphasis module compensates for the spectral attenuation of the signal by enhancing the high-frequency components, making the high-frequency part of the signal more prominent; the pre-emphasis processing method is: y[n] = x[n]-αx[n-1], where x[n] is the original signal at the current moment, x[n-1] is the original signal at the previous moment, y[n] is the signal after pre-emphasis at the current moment, and α is the pre-emphasis coefficient; in actual applications, the pre-emphasis module can be replaced by various types of filters, noise elimination, echo cancellation and other pre-processing. The main purpose is to increase the SAD accuracy and provide higher quality signals for different subsequent processing algorithms / hardware. In the SAD work, the pre-emphasis module can be configured to switch different pre-processing methods or skip to meet the needs of different subsequent processing algorithms / hardware.

[0075] Data cache module: The signal stream processed by the pre-emphasis module will be continuously sent to the data cache module. This module uses different memories to ping-pong store data of different half frames of the same channel, and stores data of different channels in different address segments of the same memory. The caching process will complete the framing operation at the same time.

[0076] Windowing module: The windowing module uses a window function to apply a smaller weight to the edge of the frame, so that the influence of the two ends of the frame on the energy calculation is reduced, thereby more accurately reflecting the energy of the central part of the signal. The window function includes the Hamming window and the Hanning window. The mathematical expression of the Hamming window is: n=0,1,...N-1, where N is the number of sampling points contained in each frame. After windowing the signal frame x[n], the windowed signal x is obtained. ω [n],x ω [n] = x[n]·ω[n];

[0077] Short-time energy integral extraction module: The short-time energy integral extraction module calculates the short-time energy integral of the frame signal after being framed by the data buffer module. For each frame signal x ω [n], its short-time energy integral E is expressed as: Where N is the number of sampling points contained in each frame;

[0078] The short-time energy integral extraction module is divided into two branches to extract features of frame signals, such as Figure 3As shown, the left branch includes an absolute value sum module, which calculates the absolute value of all sampling values ​​of a frame signal and adds them up as the short-time energy integral of the frame signal. The right branch squares all sampling values ​​of a frame signal and adds them up as the short-time energy integral of the frame signal. The right branch includes a zero-skipping multiplication module and a dynamic quantization module. The zero-skipping multiplication module regards the square of a sampling point with a very small value as zero; the dynamic quantization module decides whether to perform rounding calculations according to the size of the data shifted away to minimize the loss in the quantization process. Because fixed-point numbers are operated in hardware, the position of the decimal point will change after the fixed-point numbers are multiplied, and the decimal point needs to be returned to its original position by shifting. This process is called quantization. The zero-skipping multiplication module and the dynamic quantization module are both technical means to reduce hardware computing overhead in the process of squaring the sampling value.

[0079] Following threshold updating module: This module completes the adjustment of the adaptive following threshold and the adaptive energy threshold of the inference result feedback adjustment of the post-stage recognition neural network through the short-time energy integral provided by the short-time energy integral extraction module;

[0080] Adaptive follow threshold adjustment includes:

[0081] Determine the initial threshold: Adaptive following determines whether and how to adjust the threshold based on the results of frame judgments in the past period of time. The period of time is manually configured in frames and is called the adjustment window length. At the beginning of the whole process, an initial threshold is manually determined based on experience. Different initial threshold settings will affect the time required for the threshold to reach the environmental level.

[0082] Cumulative judgment result: When the number of frames does not reach the adjustment window length, the short-time energy integral of the frame is compared with the current energy threshold to determine whether the frame is an active frame or an inactive frame. At the same time, the number of active frames is continuously accumulated. When the short-time energy integral of the frame is greater than the current energy threshold, the frame is an active frame, and the active frame count is increased by 1.

[0083] Determine the direction of threshold adjustment: After the number of frames reaches the adjustment window length, the number of active frames in the accumulated number of frames of the past adjustment window length is used to determine whether the current energy threshold setting is appropriate. Two values ​​N are set based on actual experience. less and N more , N less <N more , N less To lower the threshold, N more To increase the threshold, the typical value is N less =Adjust window length*0.3, N more =Adjust window length*0.8, when the number of active frames is less than N lessWhen the number of active frames is greater than N, it is considered that the number of active frames is too small, that is, the current energy threshold is too high, and the threshold needs to be lowered; when the number of active frames is greater than N more When the number of active frames is N, it is considered that there are too many active frames, that is, the current energy threshold is too low, and the threshold needs to be raised; when the number of active frames is N less and N more When the number of active frames is between , it is considered that the current energy threshold is appropriate and no adjustment is required;

[0084] Threshold adjustment: After determining the direction of threshold adjustment, start adjusting the threshold. You can choose a fixed threshold adjustment range or a non-fixed threshold adjustment range that is always bound to the current energy threshold. The fixed threshold adjustment range is more stable during adjustment than the non-fixed threshold adjustment range. The non-fixed threshold adjustment range can follow the environmental signal faster.

[0085] The post-stage recognition neural network auxiliary adjustment includes:

[0086] Determine the direction of threshold adjustment: In common application scenarios, frame signals that are considered to be active frames by SAD will be sent to the subsequent recognition neural network. The subsequent recognition neural network will not perform reasoning at the frame level, but will often perform reasoning after accumulating active frames that meet the minimum reasoning frame length. The reasoning result will be fed back to SAD to determine whether the frames sent to the subsequent stage before are active frames, thereby building a feedback mechanism to let SAD know whether the current threshold is appropriate; if the reasoning feedback of the subsequent recognition neural network is: SAD classification is correct, SAD will lower the energy threshold to ensure that subsequent signals are easier to send to the subsequent neural network and avoid the loss of valid signals; if the feedback is: SAD classification is wrong, SAD will increase the energy threshold to ensure that subsequent invalid signals will not be sent to the subsequent neural network again, thereby reducing the power consumption of erroneous reasoning;

[0087] Threshold adjustment: After determining the inference direction, SAD will immediately correct the energy threshold. It will not wait for an adjustment window length like the adaptive following threshold adjustment. The adjustment range can also be fixed or non-fixed. The energy threshold adjustment range in this process will be larger than the adjustment range in the adaptive following threshold adjustment.

[0088] Decision module: After the above threshold adjustment, the energy threshold will follow the signal amplitude to achieve the purpose of adaptive environment, and the goal of SAD is to remove the inactive part and only get the active part. Therefore, a decision threshold is set according to the following energy threshold provided by the following threshold update module. The decision threshold is directly related to the following energy threshold obtained in the above process. A larger threshold can be obtained by adding a constant to the following energy threshold as the decision threshold, and then the decision threshold is used to perform signal activity detection to obtain the real-time classification result of the frame, that is, the short-time energy integral of the frame is compared with the decision threshold. The short-time energy integral is greater than or equal to the decision threshold and is classified as an active frame. The short-time energy integral is less than the decision threshold and is classified as an inactive frame. The classification result will be used to control whether the frame data is output or not.

[0089] The above-mentioned adaptive sensing one-dimensional discrete time signal activity detection system is designed with multi-mode application scenarios in mind. Therefore, in order to meet diverse processing requirements, most of the functional modules of the circuit are configurable. By configuring the circuit modules during initialization, the required functional modules can be selected to achieve different signal processing. The system supports one-dimensional discrete time signals with a maximum number of channels equivalent to the number of memories (allowing single / multi-channel mode to be switched during processing). Each additional channel requires the size of a half frame to be expanded on each memory. Considering that the energy values ​​of the signals of multiple channels are not much different, the channel data is separated in the dual / multi-channel mode, and only the signal of one of the channels is framed and calculated; the system also supports the configuration of whether there is overlap between frames. The overlapping mode allows the module to better extract the connection information between frames.

[0090] In order to further reduce the computational overhead on the basis of a streamlined architecture, the above signal activity detection system adopts the following two methods:

[0091] (1) Near-zero ignore: Considering that in some scenarios, there is mostly no active signal, a zero skipping mechanism is added during the calculation process to filter out near-zero data in the sampled signal that is less than the preset threshold, further reducing power consumption and calculations while ensuring accuracy;

[0092] (2) Dynamic quantization: After performing square sum operations on the data, in order to maintain the consistency of data accuracy, quantization control is performed through external configuration to achieve dynamic quantization processing.

[0093] Through the scheme of the present invention, taking the hit rate of the binary classification index as the evaluation standard, in a random signal-to-noise ratio environment of -4dB to 20dB, the dynamically adjusted energy threshold of the present invention has a hit rate improvement of nearly 30% compared with the traditional fixed threshold SAD, thereby improving the accuracy of signal activity detection and reducing cost and power consumption.

[0094] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. An adaptive sensing one-dimensional discrete time signal activity detection method, characterized in that: The method comprises: Step S1: pre-emphasis. Pre-emphasis compensates for the spectrum attenuation of the one-dimensional time signal by enhancing the high-frequency components, thereby making the high-frequency part of the signal more prominent. The processing method of pre-emphasis is: y[n] = x[n]-αx[n-1], where x[n] is the original signal at the current moment, x[n-1] is the original signal at the previous moment, y[n] is the signal after pre-emphasis at the current moment, and α is the pre-emphasis coefficient; Step S2: signal framing, dividing the one-dimensional time signal stream after pre-emphasis processing into multiple short time frames of fixed length; Step S3: Windowing the frame signal. Windowing reduces the influence of both ends of the frame on energy calculation by applying a weight to the edge of the frame. The window functions used include Hamming window and Hanning window. The expression of Hamming window is: Where N is the number of sampling points contained in each frame. After windowing the signal frame x[n], the windowed signal x is obtained. ω [n],x ω [n] = x[n]·ω[n]; Step S4: Calculate the short-time energy integral of the single-frame signal. For each frame of signal x ω [n], its short-time energy integral E is expressed as: Where N is the number of sampling points contained in each frame; Step S5: Dynamic energy threshold adjustment. The adjustment of the energy threshold includes two parallel sub-processes: one is adaptive following threshold adjustment. The energy threshold will always be updated in the direction of following the signal amplitude; the other is the post-stage recognition neural network auxiliary adjustment. After the post-stage neural network recognizes an active frame or an inactive frame, the threshold will be updated in the direction that is more likely to generate an active frame. Step S6: signal activity detection. After the above-mentioned energy threshold adjustment, a decision threshold is set. A larger threshold is obtained by adding a constant to the energy threshold obtained after the above-mentioned threshold adjustment as the decision threshold. Then, the decision threshold is used to perform signal activity detection to obtain the real-time classification result of the frame, that is, the short-time energy integral of the frame is compared with the decision threshold. A frame with a short-time energy integral greater than or equal to the decision threshold is classified as an active frame, and a frame with a short-time energy integral less than the decision threshold is classified as an inactive frame.

2. The method according to claim 1, characterized in that In step S5, the adaptive following threshold adjustment includes: Determine the initial threshold: Adaptive following is based on the results of frame judgments in the past period of time to decide whether and how to adjust the threshold. The period of time is in frames, called the adjustment window length. At the beginning of the whole process, an initial threshold is set manually based on experience. Cumulative judgment result: When the number of frames does not reach the adjusted window length, the short-time energy integral of the frame is compared with the current energy threshold to determine whether the frame is an active frame or an inactive frame. At the same time, the number of active frames is continuously accumulated. When the short-time energy integral of the frame is greater than the current energy threshold, the frame is an active frame, and the active frame count is increased by 1. Determine the direction of threshold adjustment: After the number of frames reaches the adjustment window length, the number of active frames in the accumulated number of frames of the past adjustment window length is used to determine whether the current energy threshold setting is appropriate. Two values ​​N are set based on actual experience. less and N more , N less <N more , N less To lower the threshold, N more To increase the threshold, when the number of active frames is less than N less When the number of active frames is greater than N, it means that the number of active frames is too small, that is, the current energy threshold is too high and the threshold needs to be lowered. more When the number of active frames is N, it means that there are too many active frames, that is, the current energy threshold is too low and the threshold needs to be raised. less and N more When it is between , it means the number of active frames is appropriate, that is, the current energy threshold is appropriate and does not need to be adjusted; Threshold adjustment: After determining the threshold adjustment direction, select a fixed threshold adjustment range or a non-fixed threshold adjustment range bound to the current energy threshold to adjust the threshold.

3. The method according to claim 1, characterized in that In step S5, the post-stage recognition neural network auxiliary adjustment includes: Determine the direction of threshold adjustment: the frame signal considered as an active frame by SAD will be sent to the recognition neural network of the next stage. The recognition neural network of the next stage will perform an inference after accumulating active frames that meet the minimum inference frame length. The result of the inference will be fed back to SAD to determine whether the frames sent to the next stage before are active frames. If the inference feedback of the next stage neural network is: SAD classification is correct, SAD will lower the threshold to ensure that subsequent signals are easier to send to the next stage neural network and avoid the loss of valid signals; if the feedback is: SAD classification is wrong, SAD will increase the threshold to ensure that subsequent invalid signals will not be sent to the next stage neural network again, so as to reduce the power consumption of erroneous inference; Threshold adjustment: After determining the direction of threshold adjustment, SAD will immediately correct the energy threshold. The amplitude of threshold adjustment can be fixed or non-fixed.

4. An adaptive sensing one-dimensional discrete time signal activity detection system, characterized in that: The system includes a pre-emphasis module, a data cache module, a windowing module, a short-time energy integral extraction module, a follow-up threshold update module and a judgment module; Pre-emphasis module: The pre-emphasis module compensates for the spectrum attenuation of the one-dimensional time signal by enhancing the high-frequency components, making the high-frequency part of the signal more prominent. The pre-emphasis processing method is: y[n] = x[n]-αx[n-1], where x[n] is the original signal at the current moment, x[n-1] is the original signal at the previous moment, y[n] is the signal after pre-emphasis at the current moment, and α is the pre-emphasis coefficient; Data cache module: The signal stream processed by the pre-emphasis module will be continuously sent to the data cache module. The module uses different memories to ping-pong to store the data of different half frames of the same channel, and stores the data of different channels in different address segments of the same memory. The cache process will complete the signal framing operation at the same time; Windowing module: The windowing module uses a window function to apply a weight to the edge of the frame, so that the influence of both ends of the frame on the energy calculation is reduced. The window function includes the Hamming window and the Hanning window. The expression of the Hamming window is: Where N is the number of sampling points contained in each frame. After windowing the signal frame x[n], the windowed signal x is obtained. ω [n],x ω [n] = x[n]·ω[n]; Short-time energy integral extraction module: The short-time energy integral extraction module calculates the short-time energy integral of the frame signal after being framed by the data buffer module. For each frame signal x ω [n], its short-time energy integral E is expressed as: Where N is the number of sampling points contained in each frame; Following threshold update module: This module completes the adjustment of the adaptive following threshold through the short-time energy integral provided by the energy integral extraction module and the adjustment of the adaptive threshold assisted by the inference result feedback of the post-stage recognition neural network; Decision module: A decision threshold is set according to the following energy threshold provided by the following threshold update module. A larger threshold is obtained by adding a constant to the above following energy threshold as the decision threshold. Then the decision threshold is used to detect signal activity to obtain the real-time classification result of the frame, that is, the short-time energy integral of the frame is compared with the decision threshold. A frame with a short-time energy integral greater than or equal to the decision threshold is classified as an active frame, and a frame with a short-time energy integral less than the decision threshold is classified as an inactive frame. The classification result will be used to control whether the frame data is output or not.

5. The system according to claim 4, characterized in that Adaptive follow threshold adjustment includes: Determine the initial threshold: Adaptive following is based on the results of frame judgments in the past period of time to decide whether and how to adjust the threshold. The period of time is in frames, called the adjustment window length. At the beginning of the whole process, an initial threshold is set manually based on experience. Cumulative judgment result: When the number of frames does not reach the adjusted window length, the short-time energy integral of the frame is compared with the current energy threshold to determine whether the frame is an active frame or an inactive frame. At the same time, the number of active frames is continuously accumulated. When the short-time energy integral of the frame is greater than the current energy threshold, the frame is an active frame, and the active frame count is increased by 1. Determine the direction of threshold adjustment: After the number of frames reaches the adjustment window length, the number of active frames in the accumulated number of frames of the past adjustment window length is used to determine whether the current energy threshold setting is appropriate. Two values ​​N are set based on actual experience. less and N more , N less <N more , N less To lower the threshold, N more To increase the threshold, when the number of active frames is less than N less When the number of active frames is greater than N, it means that the number of active frames is too small, that is, the current energy threshold is too high and the threshold needs to be lowered. more When the number of active frames is N, it means that there are too many active frames, that is, the current energy threshold is too low and the threshold needs to be raised. less and N more When it is between , it means the number of active frames is appropriate, that is, the current energy threshold is appropriate and does not need to be adjusted; Threshold adjustment: After determining the threshold adjustment direction, select a fixed threshold adjustment range or a non-fixed threshold adjustment range bound to the current energy threshold to adjust the threshold.

6. The system according to claim 4, characterized in that The post-stage recognition neural network auxiliary adjustment includes: Determine the direction of threshold adjustment: the frame signal considered as an active frame by SAD will be sent to the recognition neural network of the next stage. The recognition neural network of the next stage will perform an inference after accumulating active frames that meet the minimum inference frame length. The result of the inference will be fed back to SAD to determine whether the frames sent to the next stage before are active frames. If the inference feedback of the next stage neural network is: SAD classification is correct, SAD will lower the threshold to ensure that subsequent signals are easier to send to the next stage neural network and avoid the loss of valid signals; if the feedback is: SAD classification is wrong, SAD will increase the threshold to ensure that subsequent invalid signals will not be sent to the next stage neural network again, so as to reduce the power consumption of erroneous inference; Threshold adjustment: After determining the direction of threshold adjustment, SAD will immediately correct the energy threshold. The amplitude of threshold adjustment can be fixed or non-fixed.

7. The system according to claim 4, characterized in that The short-time energy integral extraction module is divided into two branches to extract features from the frame signal. The left branch includes an absolute value sum module, which calculates the absolute values ​​of all sampling values ​​of a frame signal and adds them up as the short-time energy integral of the frame signal; the right branch squares all sampling values ​​of a frame signal and adds them up as the short-time energy integral of the frame signal. The right branch includes a zero-jumping multiplication module and a dynamic quantization module. The zero-jumping multiplication module regards the square of a sampling point with a very small value as zero, and the dynamic quantization module decides whether to perform rounding calculations based on the size of the data shifted to reduce the loss in the quantization process.

Citation Information

Patent Citations

  • Self-adaptation voice detection method based on multi-domain joint estimation

    CN103854662A

  • Voice activity detection method in communication-terminal double-microphone denoising system and apparatus thereof

    CN105469785A

  • Voice activity detection method and device and voice recognition method and device

    CN108346425A

  • Speech activity detection equipment and method

    CN110556131A

  • Howling audio detection system with high detection rate

    CN110782910A

Cited By

  • Intelligent ammeter high-precision low-power consumption metering method and system

    CN120652162A