Method of performing real time decomposition of a signal into components
09923551 ยท 2018-03-20
Assignee
Inventors
- Lily RACHMAWATI (Singapore, SG)
- Eng Yeow Cheu (Singapore, SG)
- Anna Swider (Ulsteinvik, NO)
- Martijn De Jongh (Aalesund, NO)
- Eivind Vinje (Aalesund, NO)
Cpc classification
International classification
Abstract
The invention is a method that combines the following components: a high pass filter designed to have sufficiently small phase delay and roll-off value in transition band as well as sufficiently good attenuation; a distortion detection and reconstruction introduced by the application of the high pass filter by extraction the significant frequency components in relevant frequency band; a signal compensation that reshapes the output of the high pass filter by matching the filter's phase delay and attenuation characteristics so as to approximate low frequency component extraction that would be produced by an ideal filter (very sharp frequency transition and no delay); a time-domain detection and correction method that addresses special circumstances under which the compensation would be inaccurate to achieve real-time estimate in normal circumstances, and a time-domain correction method during and immediately after sudden changes in composite signal (spike) is detected.
Claims
1. A method of decomposing a signal into components in frequency spectrum in real-time, the method comprising the following steps: (a) receiving a first signal representative of a first composite signal (R), the first signal comprising at least of three frequency components (H, W and N), two of the frequency components (H and W) are adjacent in frequency domain; (b) transmitting the first composite signal (R) to a high pass filter with a cut-off frequency designed to separate the frequency component (H) from the other components (W and N), the high pass filter producing a first intermediate signal (S.sub.1) representative of a phase-delayed and amplitude-distorted component ({tilde over (W)}) of the frequency component (W) and the frequency component (N), simultaneously using a reference impulse signal (I) to generate a second intermediate signal (S.sub.2) representative of phase-delay and amplitude-distortion characteristics of the same high pass filter; (c) transmitting the first composite signal (R) to a reconstructing processor, the reconstructing processor detecting and reconstructing in time domain the phase-delayed and amplitude-distorted component ({tilde over (W)}) that has been distorted by the application of the high pass filter in a relevant time window, to form a third intermediate signal (S.sub.3); (d) transmitting the second intermediate signal (S.sub.2) and the third intermediate signal (S.sub.3) to a compensation and prediction processor, the compensation and prediction processor computing the second intermediate signal (S.sub.2) and the third intermediate signal (S.sub.3), to generate a fourth intermediate signal (S.sub.4) representative of an estimated undistorted component in a recent past, and generate a fifth intermediate signal (S.sub.5) representative of a predicted component at current time instance; (e) transmitting the first composite signal (R), the first intermediate signal (S.sub.1), the fourth intermediate signal (S.sub.4), and the fifth intermediate signal (S.sub.5) to an estimating module, implemented by a processor, the estimating module adding the fourth intermediate signal (S.sub.4) to the first composite signal (R), and then subtracting each of the first intermediate signal (S.sub.1) and the fifth intermediate signal (S.sub.5), to produce a first estimation ({dot over (H)}) of the frequency component (H); (f) refining the first estimation ({dot over (H)}) of the frequency component (H), obtained from steps (a) to (e), by taking into account the direction and magnitude of change from a previous time step to produce a final estimation () of the frequency component (H); and (g) repeating steps (a) through (f) at a pre-determined time step to obtain a stepwise series of values for the first estimation ({dot over (H)}) of the frequency component (H).
2. The method as claimed in claim 1, wherein step (f) comprises the additional step of: (f1) refining a second estimation ({umlaut over (H)}) of the frequency component (H) such that it lies within an envelope of the first composite signal (R), by detecting if a difference between the second estimation ({umlaut over (H)}) of the frequency component (H) at a current time step and an estimated frequency component of the frequency component (H) at the previous time step, is greater than a difference between the first signal at the current time step and the first signal at the previous time step, and if so then the estimated frequency component of the frequency component (H) at the current time step is replaced with the estimated frequency component of the frequency component (H) at the previous time step to produce the final estimation () of the frequency component (H) for the current time step.
3. The method as claimed in claim 1, wherein step (f) comprises the additional steps of: (f1) calculating a first direction of change (.sub.1) between the first estimation ({dot over (H)}) of the frequency component (H) at a current time step and the final estimation () of the frequency component (H) at the previous time step; (f2) refining the first estimation ({dot over (H)}) of the frequency component (H) to produce a second estimation ({umlaut over (H)}) of the frequency component (H) that changes in the same direction as the first composite signal (R), and calculating a second direction of change (.sub.2), between the first composite signal (R) at the current time instance and a previous time instance; and (f3) replacing the first estimation ({dot over (H)}) of the frequency component (H) with the final estimation (
) of the frequency component (H) at the previous time step, if the first direction of change (.sub.1) is opposite to the second direction of change (.sub.2), to produce the second estimation ({umlaut over (H)}) of the frequency component (H) for the current time step.
4. The method as claimed in claim 3, wherein step (f) further comprises the additional step of: (f4) refining the second estimation ({umlaut over (H)}) of the frequency component (H) such that it lies within an envelope of the first composite signal (R), by detecting if a difference between the refined second estimation ({umlaut over (H)}) of the frequency component (H) at the current time step and an estimated frequency component of the frequency component (H) at the previous time step, is greater than a difference between the first signal at the current time step and the first signal at the previous time step, and if so then the estimated frequency component of the frequency component (H) at the current time step is replaced with the estimated frequency component of the frequency component (H) at the previous time step to produce the final estimation () of the frequency component (H) for the current time step.
5. The method as claimed in claim 3, wherein step (f) further comprises the additional step of: (f4) obtaining the second estimation ({umlaut over (H)}) of the frequency component (H) with an output of a spike and spike recovery module, implemented by the processor, conditional on an application domain and retaining a raw signal during a spike near instantaneous large increase of the raw signal.
6. The method as claimed in claim 5, wherein step (f4) comprises the steps of: (f4a) detecting the presence of a spike in the first composite signal (R); (f4b) if the detected signal is present, retaining the instantaneous value of the first composite signal (R) in that time instant to substitute for the first estimation ({dot over (H)}) of the frequency component (H); and (f4c) if not, checking if the current time instance is still within a recovery period from a previous spike, and if it is then applying a smoothing algorithm to the first composite signal (R) to obtain a substitute for the first estimation ({dot over (H)}) of the frequency component (H).
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) There now follows a description of an embodiment of the disclosure, by way of non-limiting example, with reference being made to the accompanying drawings in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9) The drawings are intended to depict only typical aspects of the disclosure, and therefore should not be considered as limiting the scope of the disclosure.
DETAILED DESCRIPTION
(10) A time-varying signal contains multiple frequency components that become apparent when Fourier transform is applied to the signal. In various applications, it is of interest to obtain in time domain the component(s) of the signal that correspond to a specific frequency band. For example, in the dynamic stability and safety assessment of an anchor handler, it is important to obtain the low frequency component of the vessel rolling motion data. This component represents the heeling angle of the vessel.
(11) The method of the disclosure decomposes in real time the time-varying streaming data into components that correspond to non-overlapping but closely spaced bands in the frequency spectrum with high precision and little time delay. Without loss of generality, the method is described here in the context of decomposing the signal r(t), which consists of low frequency components h(t) and w(t), and higher frequency component (n(t)) into h(t) and a combination of w(t) and n(t). The components h(t) and w(t) correspond to frequency components H(f) and W(f) in the frequency domain, and are closely spaced together.
(12)
(13) A first signal, comprising a stream of continuous time-varying data r(t) is collected by a sensor or other data acquisition method at the frequency of, for the sake of illustration, 1 Hz. In general, the sampling frequency of the signal r(t) need only be large enough to prevent aliasing effect, i.e. above the Nyquist frequency. The Fourier transform of the signal r(t), R(f), can be divided into three adjacent segments: H(f), W(f) and N(f) as shown in
(14) The method, when applied to R decomposes the signal into H and the combination of W and N through the following steps. A high pass filter with a cut-off frequency between H(f) and W(f), F.sub.1, such that at the upper boundary of H(f) the magnitude gain of the high pass filter is zero, is applied to the signal r(t). With an ideal high pass filter, all frequency components in R(f) that lie below the F.sub.1 will be perfectly attenuated and all frequency components above F.sub.1 will be passed through with unity magnitude gain and zero phase delay. This is represented by the frequency response shown in
(15) As W(f) and H(f) are adjacent, this means that the output of the high pass filter, when applied to R, contains various frequency components within W(f) that are phase delayed and reduced in terms of magnitude. Let the output of the high pass filter when applied to R be the first intermediate signal S.sub.1: s.sub.1(t) in time domain and S.sub.1(f) in frequency domain. The imperfect roll-off and phase response of the high pass filter means that s.sub.1(t) contains magnitude-distorted and time-delayed parts of w(t), i.e. it contains aw(tdt). The higher frequency components, n(t) in time domain and N(f) in frequency domain, are passed through with no time delay or magnitude distortion as they are well beyond the transition band of the high pass filter.
(16) The method described in
(17) Another important aspect in computing the compensation is the constituents of the signal R within the recent past. This allows us to deduce what w(tdt) is, when dt, the time delay, is known. This is obtained by transmitting the first composite signal R to a detection and reconstruction processor that generates a third intermediate signal S.sub.3 representative of the constitutes of r(t) at some time in the past up to the current time. This is performed by computing the Fourier transform of recent samples of the composite signal, i.e. r(t) when t represents the current time up to offset seconds ago. For the sake of illustration, we can set offset to 60 seconds, to yield a Fourier transform of the past 300 samples of signal r(t). The value of offset determines, in time domain, how far in the past we look to reconstruct the distorted components and, in frequency domain, the resolution of the Fourier transform. This offset matches the length of the synthetic impulse signal i(t) to maximise the accuracy of the compensation.
(18) In the detection and reconstruction processor significant components of the Fourier transform in the recent past observation are further identified, and artificial signals in time domain corresponding to these significant components are generated. These artificial signals are simply the sinusoids whose amplitudes and frequencies match the significant components, with zero phase. The collection of sinusoids can be arbitrarily extended in time to form predictions of the significant components of R but the further away from the current time, the worse the prediction will be. This collection of sinusoids is the third composite signal S.sub.3: S.sub.3(t) in time domain and S.sub.3(f) in frequency domain.
(19) In the compensation and prediction processor, the intermediate signals S.sub.3 and S.sub.2 are combined to estimate the magnitude distorted and time delayed components of W as well as predict the value of W at the current time step. These are respectively the fourth and fifth intermediate signals S.sub.4 and S.sub.5. The prediction is necessary because we do not know and cannot measure w(t) at the current time instant. The prediction is obtained by extending the third composite signal S.sub.3 to the current time instant.
(20) In the estimating module, the first intermediate signal S.sub.1 is subtracted from the first composite signal R. The result is an estimate of H containing some components in W due to imperfect roll-off and phase response. The fourth intermediate signal S.sub.4 is then added and the fifth intermediate signal S.sub.5 subtracted to form a more accurate estimate of H: {dot over (H)}.
(21) The accuracy of {dot over (H)} depends on how well the compensation and prediction signals represent the actual values. If the characteristics do not change within the time window t-offset to t, then {dot over (H)} can be 100% accurate, as demonstrated in our experiments with artificially generated test signals. If there is a change in frequency content in this time window, then the estimate produced by the compensation and prediction block will be inaccurate and in turn {dot over (H)} will not be accurate.
(22) The application for which this method was developed involves changes in the frequency content of the W component from time to time. To mitigate the inaccuracy introduced by such changes, two additional logics are added: the directional change adjustment and the envelope detection and correction. In the directional change adjustment, the method corrects for errors in the estimation of H that causes it to change in the opposite direction of the composite signal R. When the sign of the difference between {dot over (H)} at the current time step and at the previous time step is opposite to that in R at the current and previous time steps, the estimate of H obtained by application of the overall method at the previous time step, i.e.
at the previous time step, is substituted for the estimate at the current time step. Let the estimate of H corrected for directional change error be {umlaut over (H)}.
(23) An additional logic, the envelope detection and correction, ensures that the estimate of H stays within the envelope of signal R. The logic is based on a fundamental observation that the contribution of components within a frequency band to the overall signal cannot have larger energy than the overall signal. If {umlaut over (H)} is beyond the upper envelope of the signal R or below the lower envelope of R, then the at the previous time step is substituted.
(24) When the wave spectrum remains relatively constant, the directional change correction and envelope detection and correction are effectively zero as the preliminary H estimate {dot over (H)} will have satisfied the requirements underlying the correction logic.
(25) The application for which this method was developed also requires that when there is a very large and sudden change in the magnitude of the first composite signal R that again quickly disappears, i.e. a spike in the first composite signal, the value of R instead of an estimate of its H component is produced. This is for safety reason and is an application specific feature. A spike detection logic is included, as a spike and spike recovery module, that detects based on the rate of change of the signal R in time whether a spike occurs.
(26) After the spike has died down, it is again of interest in the application that an estimate of the H component is produced. With a high pass filter, however, the remnants of the spike will still be contained in S.sub.3 and these time-delayed and magnitude distorted components cannot be reliably estimated by the reconstruction processor as by definition the spike occurred very quickly and is an anomaly. This leads to inaccurate S.sub.4. Further, the prediction of significant components at the current time steps cannot be reliably done when there is a spike in the recent past, leading to inaccurate S.sub.5. To mitigate this effect, instead of an estimate of H produced by the high pass filter, reconstruction and compensation and prediction, immediately after a spike has died down, a smoothed version of R is substituted by means of an OR circuit. The smoothing is performed by a low pass filter, the moving average filter. If instead of H the application requires that components in higher frequency bands are to be obtained, the smoothing can be replaced by a band pass filter or a high pass filter. This substitution occurs for offset timesteps after the spike is detected to have died down by examining the rate of change of R. After offset timesteps have passed, sufficient observation of the signal R has been collected such that S.sub.4 and S.sub.5 can be reliably accurately computed again.
(27) Various parameters of the algorithm, such as the coefficients of the high pass filter, the window of observation for filter output compensation and adjustment calculation, the cut-off frequency at which compensation and adjustment are calculated, and window of observation for signal envelope definition and moving average correction, can be adjusted to obtain different trade-off between final attenuation and output delay.
(28) The foregoing description of various aspects of the disclosure has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure to the precise form disclosed, and obviously, many modifications and variations are possible. Such modifications and variations that may be apparent to a person of skill in the art are included within the scope of the disclosure as defined by the accompanying claims.