1 Introduction

Many real-life non-stationary signals such as those encountered in radar, sonar, electroencephalogram (EEG), transients in nonlinear systems, jamming signals can be modeled as amplitude-modulated frequency-modulated (AM-FM) signals [1, 2, 16, 17, 22, 27]. The instantaneous frequency (IF) is an important parameter for analysis of AM-FM signals. The IF estimation is frequently applied in a number of signal processing applications such as extraction of features for classification [16], signal detection [18], interference mitigation in global navigation satellite system (GNSS) [1], and fault diagnosis [29].

The IF can be estimated by using time–frequency (TF) methods such as empirical mode decomposition [11], cubic phase function [20], discrete chirp Fourier transform [30] or time–frequency distributions (TFDs). TFDs methods are often employed to estimate the IF of signals because of their ability to concentrate signal energy along the IF curve while spreading the noise in the TF plane [4, 6, 10, 21, 27]. So, the IF at any given time instant is usually estimated from the location of peaks in a TF plane. In the case of multi-component signals, there are multiple ridges, so the IF estimation normally involves both detection of peaks and assigning detected peaks to the corresponding IF curves [5, 26]. The assignment of detected peaks to IF curves is usually done by exploiting the slow variation in the change in the IF trajectory between consecutive time instants, e.g., the Viterbi-based algorithms [9, 14, 21], the image processing methods that exploit local connectivity of peaks [26], and blind source separation algorithms [5]. Unfortunately, the aforementioned IF estimation algorithms are applicable only to signals that are separable in the TF domain, i.e., signal components neither intersect each other nor they are so close to each other that the underlying TFD fails to resolve them [26]. Recently, few algorithms have been developed to estimate the IF of well resolved but intersecting signal components, e.g., the methods based on Markov random fields [31], the modified Viterbi algorithms [8, 21], and the ridge path regrouping (RPRG) [6]. However, methods based on Markov random field and Viterbi algorithm are computationally expensive as they require an exhaustive search. The RPRG is computationally efficient algorithm though its performance is sensitive to noise.

Previous studies have shown that high-resolution TFDs lead to better resolution of close signal components, hence reliable TF representations for IF estimates [3, 19, 23]. In our earlier study [19], it was demonstrated that adaptive directional time–frequency distribution (ADTFD) outperforms all other TF methods when signal components are close to each other and there is variation in relative strengths of signal components. However, the ADTFD fails to achieve good energy concentration at the intersecting point when there is variation in relative amplitudes of signal components as is illustrated in Fig. 1.

Therefore, the ADTFD cannot be used for the IF estimation of intersecting component with varying amplitudes. In this study, we propose a new ADTFD-based IF estimation method for signals with intersecting components and varying amplitudes. The proposed method first finds cross-term free high-resolution TFD of a given signal by adopting a locally adaptive directional TFD (LO-ADTFD) [25]. Using the obtained clean TFD, the IF of the strongest component is estimated by a novel mechanism that takes into account both amplitude and direction of the detected peaks for assigning them to appropriate IF curve. Considering the direction ensures that the algorithm does not switch to the IF of other components at the intersecting point. Finally, the estimated IF is used to remove the signal component from the given mixture. This procedure is repeated until IFs of all the components are estimated.

Fig. 1
figure 1

a True TFD obtained by summing up the ADTFDs of the individual signal’s components; and b the ADTFD of the same signal with \((a=2, b=30)\)

2 Adaptive time–frequency distribution

2.1 Quadratic time–frequency distribution

Many non-stationary signals can be modeled as multi-component amplitude-modulated and frequency-modulated signals as:

$$\begin{aligned} s(t) = \sum \limits _{k = 1}^N {{s_k}(t) = } \sum \limits _{k = 1}^N {{a_k}(t)} {\text {e}^{j2\pi \int \limits _0^t {{f_k}(\tau )\hbox {d}\tau }}}, \end{aligned}$$
(1)

where \({a_k}(t)\) is instantaneous amplitude, \({f_k}(\tau )\) is IF, and N is the total number of signal components.TF methods are appropriate tool for the analysis of such signals. TF methods can be broadly classified into linear TF representations and quadratic TF representations [13]. For the IF estimation applications, linear TF representations are transformed into a quadratic TFD by multiplying the linear TF representation with its complex conjugate, e.g., Spectrogram is obtained by multiplying short-time Fourier transform with its complex conjugate. The Wigner Ville distribution (WVD) is a core distribution from a quadratic class defined as the Fourier transform of instantaneous auto-correlation function [13, 28].

$$\begin{aligned} W(t,f) = \int s\left( t + {\textstyle {\tau \over 2}} \right) {s^*}\left( t - {\textstyle {\tau \over 2}}\right) {\text {e}^{ - j2\pi f\tau }}\hbox {d}\tau . \end{aligned}$$
(2)

The WVD has ideal energy concentration for mono- component signals, i.e., signals with \(N=1\), with linear frequency modulation. It suffers from cross-term interference problem for multi-component signals [13]. The cross-terms have oscillatory characteristics, and their rate of oscillation increases as the distance between different signal components is increased [12]. Cross-terms severely affect the readability of a signal. They are often reduced by applying a low-pass filter in TF domain [13].

$$\begin{aligned} \rho (t,f) = W(t,f)\mathop * \limits _t \mathop * \limits _f \gamma (t,f), \end{aligned}$$
(3)

where \(\gamma (t,f)\) is a smoothing kernel whose shape usually depends on some parameters. Smoothing reduces cross-terms but also deteriorates the resolution of cross-terms. The problem of cross-terms becomes challenging when signal components are close to each other. In such scenarios, intensive smoothing is likely to merge close signal components. Previous studies have shown that high-resolution TF representations can be obtained by adapting the direction of the smoothing kernel at each point in TF plane [19].

2.2 Locally adaptive directional TFD

In order to circumvent the aforementioned issues of the traditional TFD, in this section we present TFD that adapts the direction of the smoothing kernel at each TF point in the TF plane and it is mathematically expressed as:

$$\begin{aligned} \rho (t,f) = {W}(t,f)\mathop * \limits _t \mathop * \limits _f {\gamma _\theta }(t,f), \end{aligned}$$
(4)

where \(\theta \) is the direction of smoothing kernel. In this study, we have selected double derivative directional Gaussian filter as a smoothing kernel [19].

$$\begin{aligned} {\gamma _\theta }(t,f) = \frac{{ab}}{{2\pi }}\frac{{{d^2}}}{{df_\theta ^2}}{\text {e}^{ - at_\theta ^2 - bf_\theta ^2}}. \end{aligned}$$
(5)

The shape of \({\gamma _\theta }(t,f)\) depends on parameters a and b, while the direction is controlled by \(\theta \). The direction of smoothing kernel, i.e., \({\gamma _\theta }(t,f)\), is adapted locally such that it is aligned parallel to the major axis of ridges of a TF representation for better suppression of cross-terms and enhancement of auto-terms [19]. Such smoothing can be expressed as:

$$\begin{aligned} \theta (t,f) = \mathop {\arg \max }\limits _\theta \left| {\left| {\rho (t,f)} \right| \mathop * \limits _t \mathop * \limits _f {\gamma _\theta }(t,f)} \right| , \end{aligned}$$
(6)

where \( - \pi /2\le \theta <\pi /2\). Such directional smoothing reduces cross-terms without distorting auto-terms. In order to have optimal performance, both shape and direction of the smoothing kernel need to be adapted. It is demonstrated in earlier studies (i.e., [23]) that assigning a small value to a and large value to b results in intensive smoothing along the major axis of auto-terms and little or no smoothing along minor axis thus resulting in fine resolution of close components [23]. Such intensive smoothing distorts the energy for short-duration signal components and fails to suppress inner interference. On the other hand, assigning a lower value to b results in extensive smoothing along the minor axis and can cause merger of close components [23]. Typically, a is assigned a value between 2 and 3, while b is assigned a value within a range of 5–30. As there are infinite values between the given ranges, the exhaustive search is computationally infeasible. However, our earlier study has shown that a good performance can be obtained from a small subset of values in the given range [25]. This problem of appropriate selection of a and b can be resolved by the following procedure as discussed in [12]

  • Let \(((a_1,b_1), (a_2,b_2), ..)\) be a set of possible values for a and b.

  • Analyze a given signal using a number of ADTFDs. Note that for computing ADTFD, the direction parameter is optimized using the expression given in Eq. 5.

    $$\begin{aligned} {\rho _i}(t,f) = {W}(t,f)\mathop * \limits _t \mathop * \limits _f {\gamma _{\theta ,{a_i},{b_i}}}(t,f) \end{aligned}$$
    (7)
  • The desired TF representation, named as locally adaptive directional TF distribution (LO-ADTFD), is obtained as:

    $$\begin{aligned} \rho (t,f) = \mathop {\min }\limits _i ({\rho _i}(t,f)) \end{aligned}$$
    (8)

In this study, we have used only two sets for a and b, i.e., (\(a=2, b=20\)) and (\(a=2, b=30\)).

3 Proposed IF estimation method

As discussed above that one problem frequently observed in IF estimation algorithms is caused by variations in relative amplitude of signal components as illustrated in Fig. 1. Another common problem in IF estimation algorithms is that at the intersecting point the algorithm may switch to the wrong component as illustrated in Fig. 2.

Fig. 2
figure 2

Estimated IF for a multi-component signal composed of four intersecting components

The proposed method addresses these problems by first estimating the IF of the strongest signal component from the given mixture using a new peak detection procedure that avoids tracking of the wrong signal component at the intersection point as discussed in Sect. 3.1. The IF information is then used to design a TF filter that removes the signal component from the mixture signal as discussed in Sect. 3.2. This process is iterated till all the components are extracted from the mixture.

Fig. 3
figure 3

Procedure for IF estimation of the strongest component in a TFD

3.1 IF estimation of the strongest signal component

The IF of the strongest component is estimated using the following peak detection and tracking algorithm that takes into account both amplitude and direction of the detected peak before assigning it to the appropriate IF. The flowchart of the IF estimation algorithm is shown in Fig. 3, and key steps of the algorithm are elaborated as follows:

  1. 1.

    Detect a point of highest energy \((t_0,f_0)\) in a TF plane.

  2. 2.

    The IF of kth component at time instant \(t_0\) is estimated as: \({{\hat{f}}_k}({t_0}) = {f_0}\) where \({{\hat{f}}_k}(t_0)\) is the estimated IF at time instant \(t_0\).

  3. 3.

    The IF for \(t > {t_0}\) is estimated using the following procedure.

  4. 4.

    Increment \(t=t+1/f_\mathrm{s}\), where \(f_\mathrm{s}\) is sampling frequency.

  5. 5.

    Detect peak in the neighborhood of \({{\hat{f}}_k}(t - 1/fs)\).

    $$\begin{aligned} \begin{array}{l} {f_0} = \mathop {\arg \max }\limits _f \left| {\rho (t,f)} \right| \\ \end{array} \end{aligned}$$
    (9)

    Where \({{{\hat{f}}}_k}(t-1/f_\mathrm{s})-B \le f \le {{{\hat{f}}}_k}(t-1/f_\mathrm{s})+B\) and B is a preselected threshold based on bandwidth.

  6. 6.

    It is possible that near intersecting regions, the detected peak may belong to IF curve of any other component. Therefore, the proposed algorithm compares the principal direction of the detected peak with the principal direction of the peak detected in earlier iteration, i.e., at the time instant \(t - {\textstyle {1 \over {{f_\mathrm{s}}}}}\). If directions of these two peaks are close, i.e:

    $$\begin{aligned} \left| {\theta \left( t,{{{\hat{f}}}_k}\left( t-{\textstyle {1 \over {{f_\mathrm{s}}}}}\right) \right) -\theta (t,{f_0})}\right| <T, \end{aligned}$$
    (10)

    then the detected peak is assigned to the IF curve of \(k_{\mathrm{th}}\) component as:

    $$\begin{aligned} {{\hat{f}}_k}(t) = {f_0} \end{aligned}$$
    (11)

    Otherwise, the IF is estimated by extrapolation as:

    $$\begin{aligned} {{\hat{f}}_k}(t) \!=\! {{\hat{f}}_k}\left( t - {\textstyle {1 \over {{f_\mathrm{s}}}}}\right) \!+\! \frac{1}{{{f_\mathrm{s}}}}\tan \left( {\theta \left( t\! -\! {\textstyle {1 \over {{f_\mathrm{s}}}}},{{{\hat{f}}}_k}\left( t - {\textstyle {1 \over {{f_\mathrm{s}}}}}\right) \right) } \right) \nonumber \\ \end{aligned}$$
    (12)

    The principal direction of the ridges is obtained during the estimation of direction of adaptive directional smoothing kernel in Eq. 6. The same direction information is being exploited in this step for IF estimation at intersecting points. Equation 10 is based on the assumption that the IF of the signal components varies slowly so that the difference between the direction of two IF peaks is less than T, where T is selected based on the rate of the change in the IF of the signal component. For signals with fast varying IFs, it should be assigned a large value, while for slow varying IFs, e.g., linear frequency-modulated chirps, it should be assigned a small value. In this study, we have used \(T=15\).

  7. 7.

    Repeat from step (4) till boundary of TFD is reached

  8. 8.

    A similar procedure is adopted to estimate IF at \(t<t_0\).

Fig. 4
figure 4

The TF filtering algorithm to remove the strongest component

3.2 Time–frequency filtering for removal of the selected signal component

Once IF of the strongest component is detected, it is removed from the mixture signal. The procedure of such TF filtering is illustrated in flowchart shown in Fig. 4. The procedure is also summarized in the following steps.

  1. 1.

    Estimate the instantaneous phase as:

    $$\begin{aligned} {{{\hat{\varphi }}} _k}(t) = \int \limits _0^t {{{{\hat{f}}}_k}(\tau )\text {d}\tau .} \end{aligned}$$
    (13)
  2. 2.

    Use the estimated phase to de-chirp the given signal:

    $$\begin{aligned} {s_c}(t) = s(t){\text {e}^{ - j{{{{\hat{\varphi }}} }_k}(t)}} \end{aligned}$$
    (14)

    Assuming \({{{\hat{\varphi }}} _k}(t) \approx {\varphi _k}(t)\).

    $$\begin{aligned} {s_c}(t)= & {} \sum \limits _{n = 1}^N {{a_n}(t){\text {e}^{j{\varphi _n}(t)}}} {\text {e}^{ - j{{{{\hat{\varphi }}} }_k}(t)}}\nonumber \\= & {} {a_k}(t) + {\mathop {\mathop {\sum }\limits _{n = 1}^{N}}\limits _{n \ne k}} {{a_n}(t){\text {e}^{j{\varphi _n}(t)}}} {\text {e}^{ - j{{{{\hat{\varphi }}} }_k}(t)}} \end{aligned}$$
    (15)
  3. 3.

    The instantaneous amplitude of the kth signal component, i.e., \({a_k}(t)\), is now a low-pass signal that can be extracted from the original signal by application of a low-pass filter.

  4. 4.

    The kth component is synthesized from the estimated phase and estimated amplitude as: \({s_k}(t) = {a_k}(t){\text {e}^{j{\varphi _k}(t)}}\).

  5. 5.

    The synthesized signal is then removed from the original signal

    $$\begin{aligned} s(t) = s(t) - {s_k}(t) \end{aligned}$$
    (16)

3.3 Summary of the algorithm

In this section, we present summary of the proposed IF estimation algorithm. The overall procedure is illustrated in Fig. 5, and the key steps of the algorithm are summarized as follows:

  1. 1.

    Initialize \(k=0\).

  2. 2.

    Increment \(k=k+1\).

  3. 3.

    Analyze signal s(t) using LO-ADTFD.

  4. 4.

    Estimate the IF of the strongest component, i.e., \(f_k(t)\), using method described in 3.1.

  5. 5.

    Use the estimated IF, i.e., \(f_k(t)\), to remove component \(s_k(t)\) using de-chirping method described in 3.2, i.e, \(s(t)=s(t)-s_k(t)\).

  6. 6.

    Repeat from 2 till the signal energy falls below a preselected threshold.

Fig. 5
figure 5

The proposed IF estimation algorithm

Fig. 6
figure 6

a Ideal TF representation of the signal. The estimated (circle mark) versus original IF using the b proposed method employing the LO-ADTFD, \(P={(2, 8), (2, 50)}\); c RPRG employing the LO-ADTFD \(P={(2, 8), (2, 50)}\); d RPRG using the AOKTFD as the underlying TFD [15]; e RPRG based on the Spectrogram (hamming, \(L=45, N=256\)) [6]; and f RPRG based on the MBD (\(\alpha =0.5, N=256\))

4 Results and discussion

4.1 Experimental results

Let us compare the performance of the proposed IF estimation algorithm with a recently developed method which exploits the combination of intrinsic chirp component decomposition and RPRG to estimate the IFs of multi-component signals [6]. For RPRG-based methods, we have used the Spectrogram, LO-ADTFD, adaptive optimal kernel TFD (AOKTFD) and modified B distribution (MBD) as the underlying TFDs. For the proposed method, only the LO-ADTFD is employed as the underlying TFD as the proposed IF estimation is developed specifically for the LO-ADTFD.

Example 1

Let us consider a multi-component signal composed of two closely spaced components crossed by a single component. The signal is shown in Fig. 6a and defined as:

$$\begin{aligned} z(t) = {z_1}(t) + 2{z_2}(t) +0.8 {z_3}(t), \end{aligned}$$
(17)

where \({z_1}(t) = {\text {e}^{j2\pi (0t - 31{t^3})}}\), \({z_2}(t) = {\text {e}^{j2\pi (90t - 35{t^3})}}\), and \({z_3}(t) = {\text {e}^{j2\pi (105t - 35{t^3})}}\). The signal is sampled at 256 Hz, and its duration is 1 s. The sampling frequency is chosen to be greater than 2 times of the maximum frequency in the signal as per Nyquist criterion. The signal is corrupted by the additive white Gaussian noise with signal-to-noise ratio (SNR), defined as signal power divided by the noise power, equal to 10 dB. Figure 6 illustrates that only the proposed method results in accurate estimation of IF for the given signal, while all other methods fail.

Let us test the robustness of the proposed algorithm to additive white Gaussian noise. The mean square error (MSE) between the original IF and the estimated IF is used to measure the accuracy of the IF estimates for each components. MSE for ith component is computed as: \({\hbox {MSE}}_i=\sum _{k=1}^{N_\mathrm{s}}{f_i(k)-\hat{f_i}(k)}\), where \(f_i(k)\) is the true IF of the ith component, \(\hat{f}(k)\) is the estimated IF of the ith component, and \(N_\mathrm{s}\) is the number of IF samples. The overall accuracy is estimated by computing average MSE defined as: \({\hbox {MSE}}_\mathrm{{avg}}= \frac{1}{N}\sum _{i=1}^N{{\hbox {MSE}}_i}\). 100 trials of Monte Carlo simulations are performed to estimate the average MSE, i.e., \({\hbox {MSE}}_\mathrm{{avg}}\), at SNR levels ranging from 0 to 10 dB. Figure 7 indicates that the proposed method achieves the best performance for all SNR levels.

Example 2

Let us now repeat the above experiment by considering a 4-component signal such that two closely spaced parallel quadratic chirps of varying amplitudes are intersected by two linear frequency-modulated components in a TF domain. The signal is defined as:

$$\begin{aligned} z(t) = {z_1}(t) + {z_2}(t) + {z_3}(t) + 0.5{z_4}(t), \end{aligned}$$
(18)

where \({z_1}(t) = {\text {e}^{j2\pi (105t - 35{t^3})}}\), \({z_2}(t) = {\text {e}^{j2\pi (120t - 35{t^3})}}\), \({z_3}(t) = {\text {e}^{j2\pi (50{t^2})}}\) and \({z_4}(t) = {\text {e}^{j2\pi (50{t^2} + 30t)}}\). The above-mentioned signal is sampled at 256 Hz, and signal duration is 1 s. The proposed algorithm is applied to estimate the IF of the given signal.

Fig. 7
figure 7

The average MSE between the original IFs and the estimated IFs using the proposed method and ICCDD-RPRG based on the LO-ADTFD, MBD and Spectrogram

100 trails of Monte Carlo simulations are performed to estimate the average MSE at SNR levels 2 dB, 4 dB, 6 dB, 8 dB, 10 dB and 12 dB. Figure 8 indicates that the proposed method achieves the best performance for all SNR levels.

Fig. 8
figure 8

The average MSE between the original IFs and the estimated IFs using the proposed method and ICCDD-RPRG based on the LO-ADTFD, MBD and Spectrogram

Fig. 9
figure 9

a LO-ADTFD representation of a multi-component signal composed of 2 crossing components; b the LO-ADTFD of the signal after removing the first component; c estimated IF (dashed line) versus original IF (dotted line)

Fig. 10
figure 10

The average MSE between the original IFs and the estimated IFs using the proposed method and ICCDD-RPRG based on the LO-ADTFD, MBD and Spectrogram

Example 3

Let us illustrate the performance of the proposed algorithm by using a 2-component signal with time-varying amplitude. The signal is obtained by multiplying linear frequency-modulated chirps by the triangular window. The signal is corrupted by the additive white Gaussian noise. A step-by-step demonstration of the proposed algorithm is illustrated in Fig. 9.

Figure 10 compares the performance of the proposed method with other methods including the RPRG employing MBD, Spectrogram and LO-ADTFD as underlying TFDs for SNRs 0 dB, 2 dB, 4 dB, 6 dB, 8 dB, 10 dB. Experimental results confirms that the proposed method is applicable to signals with time-varying amplitudes.

4.2 Discussion of results

The proposed method outperforms RPRG-based IF estimation methods in terms of robustness to noise for signals with complicated IF structures as shown above. The robust performance of the proposed algorithm for difficult cases of intersecting and close components is due to the following factors.

  • Selection of a TFD The LO-ADTFD is a high-resolution TFD that outperforms other methods in terms of IF estimation as demonstrated in earlier studies [19].

  • Iterative extraction of the signal components When signal components of varying amplitudes intersect each other, the LO-ADTFD and other TFDs fail to achieve good energy concentration in the intersection regions, e.g., see Fig. 9a. This leads to problems in most IF estimation methods. The proposed method addresses this problem by recursive filtering [7]. The strongest component is detected and removed from the mixture signal. This process is repeated till all the components are extracted. The removal of strongest component reduces the cross-terms caused by its presence in earlier iteration thus resulting in improved analysis of the mixture signal containing remaining signal components as illustrated in Fig. 9.

  • IF tracking algorithm The new IF tracking algorithm takes into account both the direction and amplitude of signal components to avoid tracking problems at the intersection point. The proposed method is robust to noise as compared to RPRG method, e.g., the MSE obtained by the proposed tracking method is lower than the MSE obtained by the RPRG method even if both methods use the same underlying TF representation.

5 Conclusion

A new multi-component IF estimation algorithm for signals with intersecting and close signal components has been proposed. The proposed method uses a combination of the high-resolution time–frequency signal analysis method, i.e., the LO-ADTFD, and new IF estimation algorithm that takes into account the direction of ridges for tracking signal components to avoid mix up at the intersecting point in TF domain. Experimental results indicate the superiority of the proposed method in comparison with the other state-of-the-art methods such as RPRG method. The gain in performance improvement is obtained at the expense of additional computational cost. The proposed algorithm involves computation of LO-ADTFD, IF estimation and TF filtering. The computational cost of IF estimation and TF filtering is \(O(N_\mathrm{s}^2)\) and \(O(N_\mathrm{s}\log N_\mathrm{s})\), respectively. The computational cost of LO-ADTFD is \(O(N_\mathrm{s}^2\log N_\mathrm{s}^2 + \textit{KM}^2N_\mathrm{s}^2)\) for single iteration, where \(N_\mathrm{s}\) is number of samples in a TFD, K is number of directional filters employed and MxM is size of smoothing kernel. Thus, the computational cost of single iteration of the algorithm becomes \(O(N_\mathrm{s}^2\log N_\mathrm{s} + (1+M^2)N_\mathrm{s}^2 + N_\mathrm{s}\log N_\mathrm{s})\). For N number of components, the computational cost of the algorithm becomes \(O({ NN}_\mathrm{s}^2\log N_\mathrm{s} + N(2K + 1)N_\mathrm{s}^2 + { NN}_\mathrm{s}\log N_\mathrm{s})\). However, the computational cost of LO-ADTFD can be alleviated by using a fast implementation of ADTFD [24].