A waveform signal denoising method, device, equipment and storage medium

By determining the noise threshold and the final compensation value to compensate for the waveform signal, the problem of the inability to effectively reduce non-repetitive and non-periodic noise in the existing technology is solved, and effective noise reduction of the waveform signal is achieved.

CN116451036BActive Publication Date: 2025-12-26DONGFENG COMML VEHICLE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310471213.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-24
Publication Date
2025-12-26
Estimated Expiration
2043-04-24

AI Technical Summary

Technical Problem

Existing noise reduction methods cannot effectively reduce non-repetitive, non-periodic noise.

Method used

By determining the noise threshold and the final compensation value, compensation is performed based on the waveform signal to be processed to obtain the noise-reduced waveform signal.

Benefits of technology

It effectively reduces non-repetitive and non-periodic noise and improves the quality of waveform signals.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116451036B_ABST
    Figure CN116451036B_ABST
Patent Text Reader

Abstract

The application discloses a waveform signal denoising method, device and equipment and a storage medium, and relates to the technical field of big data analysis.The waveform signal denoising method comprises the following steps: S1, determining a noise threshold according to a to-be-processed waveform signal; S2, determining a final compensation value according to the noise threshold and the to-be-processed waveform signal; and S3, compensating the to-be-processed waveform signal according to the final compensation value to obtain a denoised waveform signal.The method solves the problem that the noise usually processed in the prior art is periodic or repetitive, but the noise is not necessarily periodic, and even approximate periodicity is not necessarily present, and when the noise is non-repetitive and non-periodic, the noise cannot be effectively reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of big data analytics, specifically to a waveform signal noise reduction method, apparatus, device, and storage medium. Background Technology

[0002] The noise specified in electronic circuits can be broadly considered as a general term for all signals other than the intended signal. In short, any signal in a circuit other than the intended signal, regardless of whether it affects the circuit, can be called noise. For example, ripple or self-oscillation in the power supply voltage can adversely affect the circuit, causing AC hum in audio devices or circuit malfunctions, although sometimes it may not lead to these consequences. Such ripple or oscillation should be considered a type of circuit noise. Furthermore, a radio wave signal of a certain frequency may be a normal intended signal for one receiver, but a non-intended signal, i.e., noise, for another receiver. The term "interference" is often used in electronics and is sometimes confused with the concept of noise; however, they are distinct. Noise is an electronic signal, while interference refers to an effect, an adverse reaction of the circuit caused by noise. The presence of noise in a circuit does not necessarily mean interference. In digital circuits, small spikes on a normal pulse signal, often observed with an oscilloscope, are undesirable and constitute noise.

[0003] In existing technologies, noise is usually dealt with as periodic or repetitive, but noise is not necessarily periodic, and even near-periodic periodicity is not guaranteed. There is a problem that noise cannot be effectively reduced when the noise is non-repetitive and non-periodic. Summary of the Invention

[0004] In view of the deficiencies in the prior art, the purpose of this invention is to provide a waveform signal noise reduction method, apparatus, device and storage medium, which can solve the problem that the noise usually dealt with in the prior art is periodic or repetitive, but the noise is not necessarily periodic, and even the approximate periodicity is not necessarily true. When the noise is non-repetitive and non-periodic, it cannot be effectively reduced.

[0005] To achieve the above objectives, the technical solution adopted by the present invention is as follows:

[0006] Firstly, this solution provides a waveform signal noise reduction method, including the following steps:

[0007] Determine the noise threshold based on the waveform signal to be processed;

[0008] The final compensation value is determined based on the noise threshold and the waveform signal to be processed;

[0009] Compensate the waveform signal to be processed according to the final compensation value to obtain a denoised waveform signal.

[0010] In some optional schemes, the noise threshold is determined according to the waveform signal to be processed, including the following steps:

[0011] All turning points of the waveform signal to be processed are determined.

[0012] The turning point height of each turning point is determined according to the difference between the data value of the turning point and the data value of its adjacent turning point.

[0013] The absolute values of all turning point heights are averaged or set to a quantile to obtain the noise threshold.

[0014] In some optional schemes, the final compensation value is determined according to the noise threshold and the waveform signal to be processed, including the following steps:

[0015] A first set number of bins is divided between zero and the noise threshold.

[0016] All turning points are traversed in the time order of the waveform signal to be processed at each bin, and it is determined whether the bin is a valid compensation value according to the turning point height and the bin.

[0017] After all bins have traversed all turning points, the final compensation value is determined by processing a plurality of valid compensation values.

[0018] In some optional schemes, all turning points are traversed in the time order of the waveform signal to be processed at each bin, and it is determined whether the bin is a valid compensation value according to the turning point height and the bin, including the following steps:

[0019] All turning points whose absolute values of turning point heights are greater than or equal to the current bin are filtered out.

[0020] The number of turning points with positive turning point heights and the number of turning points with negative turning point heights are counted.

[0021] When the difference between the number of turning points with positive turning point heights and the number of turning points with negative turning point heights is less than or equal to a second set number, the current bin is a valid compensation value.

[0022] In some optional schemes, after all bins have traversed all turning points, the final compensation value is determined by processing a plurality of valid compensation values, including:

[0023] The maximum value or the average value of the plurality of valid compensation values is selected as the final compensation value.

[0024] In some optional schemes, the waveform signal to be processed is compensated according to the final compensation value to obtain a denoised waveform signal, including:

[0025] Subtract the final compensation value from the peak inflection point value in the waveform signal to be processed, and add the final compensation value to the valley inflection point value in the waveform signal to be processed.

[0026] In some optional schemes, the inflection point height of each inflection point is determined according to the difference between the inflection point and the data value of the adjacent inflection point, including:

[0027] The inflection point height of the inflection point is equal to the absolute value of the smaller one of the difference between the inflection point value and the data value of the adjacent inflection point.

[0028] In a second aspect, the present scheme further provides a waveform signal denoising device, including:

[0029] A noise threshold determination module is configured to determine a noise threshold according to the waveform signal to be processed.

[0030] A compensation value determination module is configured to determine a final compensation value according to the noise threshold and the waveform signal to be processed.

[0031] A compensation and denoising module is configured to compensate the waveform signal to be processed according to the final compensation value to obtain a denoised waveform signal.

[0032] In a third aspect, the present scheme further provides a computer device, including a processor, a memory, and a computer program stored in the memory and executable by the processor, wherein the computer program is executed by the processor to implement the steps of the waveform signal denoising method in any of the above aspects.

[0033] In a fourth aspect, the present scheme further provides a computer readable storage medium, having a computer program stored thereon, wherein the computer program is executed by a processor to implement the steps of the waveform signal denoising method in any of the above aspects.

[0034] Compared with the prior art, the present scheme has the following advantages: the noise threshold is determined according to the waveform signal to be processed; the final compensation value is determined according to the noise threshold and the waveform signal to be processed; and the waveform signal to be processed is compensated according to the final compensation value to obtain a denoised waveform signal. The present scheme solves the problem that the noise is not necessarily periodic or repetitive in the prior art, and even the approximate periodicity is not necessarily present, and the noise cannot be effectively denoised when the noise is non-repetitive and non-periodic. BRIEF DESCRIPTION OF DRAWINGS

[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without any creative effort.

[0036] Figure 1 This is a flowchart illustrating the waveform signal noise reduction method in an embodiment of the present invention;

[0037] Figure 2 This is a schematic block diagram of the structure of a computer device in an embodiment of the present invention. Detailed Implementation

[0038] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0039] The embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.

[0040] like Figure 1 As shown, in a first aspect, the present invention provides a waveform signal noise reduction method, comprising the following steps:

[0041] S1: Determine the noise threshold based on the waveform signal to be processed.

[0042] In this embodiment, in the waveform signal to be processed that needs noise reduction, the range of maximum noise influence, i.e., the noise threshold, is first determined based on the fluctuation of the signal amplitude.

[0043] Step S1 specifically includes:

[0044] S11: Determine all inflection points of the waveform signal to be processed.

[0045] In this embodiment, in the waveform signal to be processed, a point where the value at both the previous and subsequent moments is greater than the current point, or a point where the value at both the previous and subsequent moments is less than the current point, is called an inflection point of the waveform signal to be processed. Among them, an inflection point where the value at both the previous and subsequent moments is greater than the current point is a valley inflection point, and a point where the value at both the previous and subsequent moments is less than the current point is a peak inflection point.

[0046] S12: Determine the height of each vertex based on the difference between the data values ​​of the vertex and its adjacent vertexes.

[0047] In this embodiment, the height of a fold point is equal to the smaller absolute value of the difference between the fold point value and the values ​​of two adjacent fold points. For example, if the data value of the target fold point is -3, the data value of the fold point before the target fold point is 1, and the data value of the fold point after the target fold point is 2, then the height of the target fold point is the smaller absolute value between -4 and -5, that is, the height of the target fold point is -4.

[0048] S13: Average all the absolute values of the fold point heights or set quantiles as the noise threshold.

[0049] In this embodiment, according to the actual waveform signal to be processed, the average of all the absolute values of the fold point heights or the set quantiles is selected as the noise threshold when determining the noise threshold.

[0050] S2: Determine the final compensation value according to the noise threshold and the waveform signal to be processed.

[0051] In this embodiment, after determining the noise threshold based on the waveform signal to be processed, the final compensation value is determined according to the noise threshold and the waveform signal to be processed.

[0052] Step S2 specifically includes:

[0053] S21: Divide the first set number of bins between zero and the noise threshold.

[0054] In this embodiment, the first set number of bins is divided between zero and the noise threshold. For example, the noise threshold is K, the first set number is ten, and the noise threshold K is divided into ten bins according to the tenth, which are 0.1K, 0.2K, 0.3K, …, K. When dividing the bins between zero and the noise threshold, the first set number is determined according to the actual waveform signal to be processed, and the division is not necessarily divided in the manner of equal division.

[0055] S22: Traverse all the fold points in the time order of the waveform signal to be processed under each bin value, and determine whether the bin value is a valid compensation value according to the fold point height and the bin value.

[0056] In this embodiment, after dividing the bins between zero and the noise threshold, it is necessary to determine whether the divided bin value is a valid compensation value.

[0057] Step S22 specifically includes:

[0058] S221: Select all the fold points whose absolute values of fold point heights are greater than or equal to the current bin value.

[0059] S222: Count the number of fold points with positive fold point heights and the number of fold points with negative fold point heights among these fold points.

[0060] S223: When the difference between the number of fold points with positive fold point heights and the number of fold points with negative fold point heights is less than or equal to the second set number, the current bin value is a valid compensation value.

[0061] In the embodiment, in a section of waveform signal to be analyzed, the inflection points with the absolute value of inflection height greater than or equal to the current bin value are screened out according to the bin value. The difference between the number of inflection points with positive inflection height and the number of inflection points with negative inflection height is compared. When the difference is within the second set number, the current bin value is regarded as an effective compensation value. It can be seen that the smaller the difference between the number of inflection points with positive inflection height and the number of inflection points with negative inflection height, the more suitable the bin value is as an effective compensation value. The best case is that the number of inflection points with positive inflection height is equal to the number of inflection points with negative inflection height, i.e. the difference between the number of inflection points with positive inflection height and the number of inflection points with negative inflection height is zero. In the embodiment, the second set number is one. The same steps are performed on all bin values, and among the first set number of bin values, the effective compensation values are retained.

[0062] In some optional embodiments, all inflection points are traversed in time sequence of the waveform signal to be processed under each bin value, and whether the bin value is an effective compensation value is determined according to the inflection height and the bin value. This step is completed by a computer program, and the processing logic includes:

[0063] A data stack is established, which is initially an empty stack;

[0064] When the absolute value of the inflection height is greater than or equal to the current bin value, if the data stack is an empty stack, the height of the current inflection point is stored in the data stack, and if the data stack has elements, the positive and negative relationship between the height of the inflection point and the top value of the data stack is determined;

[0065] If the positive and negative relationship between the height of the inflection point and the top value of the data stack is the same, the height of the current inflection point is stored in the data stack;

[0066] If the positive and negative relationship between the height of the inflection point and the top value of the data stack is different, the top value of the current data stack is taken out;

[0067] After all inflection points under the current bin value are traversed, if the number of elements in the data stack is less than or equal to the second set number, the current bin value is an effective compensation value;

[0068] All inflection points are traversed in time sequence of the waveform signal to be processed under the next bin value, whether the next bin value is an effective compensation value is determined, and the process is repeated until all bin values are traversed.

[0069] In this embodiment, the data stack is referred to as a stack or stack array in computer science. A stack is a linear list with restricted operations. It is a linear list where insertion and deletion operations are limited to the end of the list. This end is called the top of the stack, and the other end is called the bottom of the stack. Inserting a new element into a stack is also called pushing, pushing, or pushing onto the stack. This involves placing the new element on top of the existing top element, making it the new top element. Deleting an element from a stack is also called popping, popping from the stack. This involves removing the top element and making its adjacent element the new top element. In this embodiment, an empty stack means that the data stack has no elements. Storing the height of the current inflection point into the data stack is called pushing onto the stack, and removing the current top value from the data stack is called popping from the stack.

[0070] One form of code that is processed by a computer program includes:

[0071] For each grid value G in (the first set number of grid values):

[0072] stackG = new Stack()

[0073] For each inflection point, enter all inflection points:

[0074] If the absolute value of the inflection point height H is greater than or equal to G:

[0075] top = stackG.getTop() # Gets the top value of the stack, but does not pop it.

[0076] If the sign of the inflection point height H is opposite to the sign of the top:

[0077] stackG.pop() # Discard the top value of the stack.

[0078] Else:

[0079] stackG.push(H) # Push the new arrival H onto the stack.

[0080] #End of For each inflection point in all inflections:

[0081] If the number of remaining elements in stackG is less than or equal to the second set number:

[0082] The current grid value G is a valid cut value.

[0083] Where G is the cell segment value, top is the top value of the data stack, and H is the inflection point height.

[0084] S23: After all grid values ​​have been traversed to all inflection points, several valid compensation values ​​are processed to determine the final compensation value.

[0085] In the embodiment, the maximum value or the average value is selected from the selected effective compensation values in the first set of number of bin values as the final compensation value.

[0086] S3: compensating the to-be-processed waveform signal according to the final compensation value to obtain a denoised waveform signal.

[0087] In the embodiment, the peak inflection point value in the to-be-processed waveform signal is subtracted by the final compensation value, and the valley inflection point value in the to-be-processed waveform signal is added by the final compensation value.

[0088] In summary, the present application determines a noise threshold value according to the to-be-processed waveform signal, determines a final compensation value according to the noise threshold value and the to-be-processed waveform signal, and compensates the to-be-processed waveform signal according to the final compensation value to obtain a denoised waveform signal. The present application solves the problem that the noise in the prior art is usually periodic or repetitive, but the noise is not necessarily periodic, even the approximate periodicity is not necessarily, and when the noise is non-repetitive and non-periodic, the noise cannot be effectively reduced.

[0089] In a second aspect, the present application further provides a waveform signal denoising device, comprising:

[0090] a noise threshold value determination module configured to determine a noise threshold value according to a to-be-processed waveform signal;

[0091] a compensation value determination module configured to determine a final compensation value according to the noise threshold value and the to-be-processed waveform signal;

[0092] a compensation and denoising module configured to compensate the to-be-processed waveform signal according to the final compensation value to obtain a denoised waveform signal.

[0093] In the embodiment, in the to-be-processed waveform signal that needs to be denoised, the maximum influence range of noise, i.e. the noise threshold value, is first determined according to the fluctuation change of the signal amplitude. After the noise threshold value is determined based on the to-be-processed waveform signal, the final compensation value is determined according to the noise threshold value and the to-be-processed waveform signal. The inflection point height of the inflection point is equal to the absolute value of the smaller difference between the inflection point value and the adjacent two inflection point values. The peak inflection point value in the to-be-processed waveform signal is subtracted by the final compensation value, and the valley inflection point value in the to-be-processed waveform signal is added by the final compensation value.

[0094] In some optional embodiments, determining a noise threshold value according to a to-be-processed waveform signal comprises the following steps:

[0095] determining all inflection points of the to-be-processed waveform signal;

[0096] determining the inflection point height of each inflection point according to the difference between the inflection point and the adjacent inflection point data value;

[0097] The absolute values of all the fold point heights are averaged or set to quantiles to obtain the noise threshold.

[0098] In the embodiment, in the waveform signal to be processed, a point whose value at the previous time and the value at the next time are both greater than the value at the point or both less than the value at the point is referred to as a fold point of the waveform signal to be processed. The fold point whose value at the previous time and the value at the next time are both greater than the value at the point is a valley fold point, and the fold point whose value at the previous time and the value at the next time are both less than the value at the point is a peak fold point.

[0099] In the embodiment, the fold point height of a fold point is equal to the absolute value of the difference between the value of the fold point and the value of the adjacent fold point.

[0100] In the embodiment, according to the actual waveform signal to be processed, the average of the absolute values of all the fold point heights of the waveform signal to be processed or the quantile is selected as the noise threshold.

[0101] In some optional embodiments, the final compensation value is determined according to the noise threshold and the waveform signal to be processed, and includes the following steps.

[0102] A first set number of interval values are divided between zero and the noise threshold.

[0103] All the fold points are traversed in the time sequence of the waveform signal to be processed at each interval value, and whether the interval value is a valid compensation value is determined according to the fold point height and the interval value.

[0104] After all the interval values are traversed through all the fold points, the final compensation value is determined by processing a plurality of valid compensation values.

[0105] In the embodiment, a first set number of interval values are divided between zero and the noise threshold. For example, the noise threshold is K, the first set number is ten, and the noise threshold K is divided into ten interval values according to the division by ten, which are 0.1K, 0.2K, 0.3K, …, and K. When the interval values are divided between zero and the noise threshold, the first set number is determined according to the actual waveform signal to be processed, and the division is not necessarily divided by equal division.

[0106] In the embodiment, after the interval values are divided between zero and the noise threshold, it is necessary to determine whether the divided interval values are valid compensation values.

[0107] In the embodiment, the maximum value or the average value is selected as the final compensation value from a plurality of valid compensation values selected from the first set number of interval values.

[0108] In some alternative embodiments, all the kinks are traversed in time sequence of the waveform signal to be processed under each bin value, and whether the bin value is a valid compensation value is determined according to the kink height and the bin value, including the following steps:

[0109] All the kinks with the absolute value of the kink height greater than or equal to the current bin value are screened out;

[0110] The number of kinks with positive kink height and the number of kinks with negative kink height among these kinks are counted;

[0111] When the difference between the number of kinks with positive kink height and the number of kinks with negative kink height is less than or equal to the second set number, the current bin value is a valid compensation value.

[0112] In the present embodiment, all the kinks with the absolute value of the kink height greater than or equal to the current bin value are screened out in a section of waveform signal to be analyzed. The difference between the number of kinks with positive kink height and the number of kinks with negative kink height among these screened kinks is compared. When the difference is within the second set number, the current bin value is regarded as a valid compensation value. It can be seen that the smaller the difference between the number of kinks with positive kink height and the number of kinks with negative kink height, the more suitable the bin value is as a valid compensation value. The best case is that the number of kinks with positive kink height and the number of kinks with negative kink height among the screened kinks are equal, i.e. the difference between the number of kinks with positive kink height and the number of kinks with negative kink height is zero. In the present embodiment, the second set number is one. All the bin values are determined by the same steps, and among the first set number of bin values, the valid compensation values are retained.

[0113] In some alternative embodiments, all the kinks are traversed in time sequence of the waveform signal to be processed under each bin value, and whether the bin value is a valid compensation value is determined according to the kink height and the bin value. This step is completed by a computer program, and the processing logic thereof includes:

[0114] A data stack is established, which is initially an empty stack;

[0115] When the absolute value of the kink height is greater than or equal to the current bin value, if the data stack is an empty stack, the height of the current kink is stored in the data stack, and if the data stack has elements, the positive and negative relationship between the height of the kink and the top value of the data stack is determined;

[0116] If the positive and negative relationship between the height of the kink and the top value of the data stack is the same, the height of the current kink is stored in the data stack;

[0117] If the positive and negative relationship between the height of the kink and the top value of the data stack is different, the top value of the current data stack is taken out;

[0118] After all the kinks are traversed under the current bin value, if the number of elements in the data stack is less than or equal to the second set number, the current bin value is a valid compensation value;

[0119] At the next division value, all inflection points are traversed in the time sequence of the waveform signal to be processed, and it is determined whether the next division value is a valid compensation value, until all division values ​​have been traversed.

[0120] In this embodiment, the data stack is referred to as a stack or stack array in computer science. A stack is a linear list with restricted operations. It is a linear list where insertion and deletion operations are limited to the end of the list. This end is called the top of the stack, and the other end is called the bottom of the stack. Inserting a new element into a stack is also called pushing, pushing, or pushing onto the stack. This involves placing the new element on top of the existing top element, making it the new top element. Deleting an element from a stack is also called popping, popping from the stack. This involves removing the top element and making its adjacent element the new top element. In this embodiment, an empty stack means that the data stack has no elements. Storing the height of the current inflection point into the data stack is called pushing onto the stack, and removing the current top value from the data stack is called popping from the stack.

[0121] One form of code that is processed by a computer program includes:

[0122] For each grid value G in (the first set number of grid values):

[0123] stackG = new Stack()

[0124] For each inflection point, enter all inflection points:

[0125] If the absolute value of the inflection point height H is greater than or equal to G:

[0126] top = stackG.getTop() # Gets the top value of the stack, but does not pop it.

[0127] If the sign of the inflection point height H is opposite to the sign of the top:

[0128] stackG.pop() # Discard the top value of the stack.

[0129] Else:

[0130] stackG.push(H) # Push the new arrival H onto the stack.

[0131] #End of For each inflection point in all inflections:

[0132] If the number of remaining elements in stackG is less than or equal to the second set number:

[0133] The current grid value G is a valid cut value.

[0134] Where G is the cell segment value, top is the top value of the data stack, and H is the inflection point height.

[0135] In summary, the present application provides a waveform signal denoising device, comprising: a noise threshold determination module for determining a noise threshold according to a waveform signal to be processed; a compensation value determination module for determining a final compensation value according to the noise threshold and the waveform signal to be processed; and a compensation denoising module for compensating the waveform signal to be processed according to the final compensation value to obtain a denoised waveform signal. The problem that the noise cannot be effectively denoised when the noise is non-repetitive and non-periodic is solved.

[0136] It should be noted that, for the convenience and brevity of description, the specific working process of the above-described device and each module and unit can refer to the corresponding process in the foregoing embodiments, which will not be described here.

[0137] The device provided in the above embodiments can be implemented in the form of a computer program, which can run on a computer device as shown in Figure 2 .

[0138] Please refer to Figure 2 , Figure 2 for a structural schematic block diagram of a computer device provided by the embodiments of the present application. The computer device can be a terminal.

[0139] As shown in Figure 2 , the computer device includes a processor, a memory and a network interface connected through a system bus, wherein the memory can include a non-volatile storage medium and an internal memory.

[0140] The non-volatile storage medium can store an operating system and a computer program. The computer program includes program instructions which, when executed, can cause the processor to execute any kind of waveform signal denoising method.

[0141] The processor is used to provide computing and control capabilities to support the operation of the entire computer device.

[0142] The internal memory provides an environment for the running of the computer program in the non-volatile storage medium, and the computer program, when executed by the processor, can cause the processor to execute any kind of waveform signal denoising method.

[0143] The network interface is used for network communication, such as sending assigned tasks, etc. Those skilled in the art can understand that Figure 2It should be understood that the structure shown in the figure is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device to which the scheme of the present application is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0144] It should be understood that the processor can be a central processing unit (CPU), and can also be other general-purpose processors, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor.

[0145] In one embodiment, the processor is configured to execute a computer program stored in the memory to implement the steps of the waveform signal denoising method.

[0146] The embodiments of the present application further provide a computer readable storage medium, and the computer readable storage medium stores a computer program. The computer program includes program instructions. When the program instructions are executed, the method implemented can refer to the embodiments of the present application.

[0147] The computer readable storage medium can be an internal storage unit of the computer device, for example, a hard disk or a memory of the computer device. The computer readable storage medium can also be an external storage device of the computer device, for example, a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc.

[0148] In the description of the present application, it should be noted that the terms "upper", "lower", and the like are used for indicating the orientation or positional relationship shown in the drawings, and are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the devices or elements referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as limiting the present application. Unless otherwise explicitly specified and limited, the terms "mounting", "connection", "connecting" should be interpreted broadly, for example, can be fixed connection, can also be detachable connection, or integrally connected; can be mechanical connection, can also be electrical connection; can be directly connected, can also be indirectly connected through an intermediate medium, can be the internal communication of two elements. For those skilled in the art, the specific meaning of the above terms in the present application can be understood according to the specific circumstances.

[0149] It should be noted that in the present application, relational terms such as "first" and "second", and the like are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is any such actual relationship or order between these entities or operations. Moreover, the terms "comprising", "including" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or apparatus including a series of elements includes not only those elements, but also other elements not explicitly listed, or other elements inherent in such a process, method, article or apparatus. Without more limitations, the element defined by the statement "comprising a" does not exclude the presence of other identical elements in the process, method, article or apparatus including the element.

[0150] The above is only a specific embodiment of the present application, which enables those skilled in the art to understand or implement the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to these embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features applied herein.

Claims

1. A method for reducing noise in a waveform signal, the method comprising: The method comprises the following steps: determining a noise threshold according to the waveform signal to be processed; determining a final compensation value according to the noise threshold and the waveform signal to be processed; compensating the waveform signal to be processed according to the final compensation value to obtain a waveform signal after noise reduction; determining a noise threshold according to the waveform signal to be processed, which comprises the following steps: determining all turning points of the waveform signal to be processed; determining a turning point height of each turning point according to the difference between the data value of the turning point and the data value of its adjacent turning point; taking the average value of the absolute values of all turning point heights or setting a quantile as the noise threshold; determining a final compensation value according to the noise threshold and the waveform signal to be processed, which comprises the following steps: dividing a first set number of quantile values between zero and the noise threshold; traversing all turning points in the time sequence of the waveform signal to be processed under each quantile value, and determining whether the quantile value is a valid compensation value according to the turning point height and the quantile value; processing a plurality of valid compensation values after all quantile values have traversed all turning points to determine the final compensation value.

2. The method of claim 1, wherein the wave form signal is a pulse width modulation signal. traversing all turning points in the time sequence of the waveform signal to be processed under each quantile value, and determining whether the quantile value is a valid compensation value according to the turning point height and the quantile value, which comprises the following steps: selecting all turning points whose absolute values of turning point heights are greater than or equal to the current quantile value; counting the number of turning points whose turning point heights are positive and the number of turning points whose turning point heights are negative among these turning points; when the difference between the number of turning points whose turning point heights are positive and the number of turning points whose turning point heights are negative is less than or equal to a second set number, the current quantile value is a valid compensation value.

3. The method of claim 1, wherein the wave form signal is a pulse width modulation signal. processing a plurality of valid compensation values after all quantile values have traversed all turning points to determine the final compensation value, which comprises: selecting the maximum value or the average value among the plurality of valid compensation values as the final compensation value.

4. The method of claim 1, wherein the wave form signal is a pulse width modulation signal. compensating the waveform signal to be processed according to the final compensation value to obtain a waveform signal after noise reduction, which comprises: subtracting the final compensation value from the peak turning point value in the waveform signal to be processed, and adding the final compensation value to the valley turning point value in the waveform signal to be processed.

5. The method of claim 1, wherein the wave form signal is a pulse width modulation signal. determining a turning point height of each turning point according to the difference between the data value of the turning point and the data value of its adjacent turning point, which comprises: the turning point height of the turning point is equal to the absolute value of the smaller one of the difference between the data value of the turning point and the data value of its adjacent turning point.

6. A waveform signal denoising apparatus for implementing the steps of the waveform signal denoising method according to any one of claims 1 to 5, characterized by, comprise: a noise threshold determination module configured to determine a noise threshold according to the waveform signal to be processed; a compensation value determination module configured to determine a final compensation value according to the noise threshold and the waveform signal to be processed; a compensation and noise reduction module configured to compensate the waveform signal to be processed according to the final compensation value to obtain a waveform signal after noise reduction.

7. A computer device, comprising: The computer device comprises a processor, a memory, and a computer program stored on the memory and executable by the processor, wherein the computer program is executed by the processor to implement the steps of the waveform signal noise reduction method according to any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, wherein the computer program is executed by the processor to implement the steps of the waveform signal noise reduction method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Spike noise elimination method

    JP1996330905A