2.1. The Proposed Spectral Peak Search Model
The inverse discrete Fourier transform (IDFT) equations can be represented as
where
∈ ℂ
N × N is the IDFT matrix.
b ∈ ℂ
N × 1 is a time-domain column vector, and
X is the discrete spectrum of
b. To introduce the CS technology, the matrix equation is left-multiplied by a measurement matrix
Φ ∈ ℂ
n × N (
n ≤
N):
Viewing (2) as a CS problem has the following requirements. Firstly, the sensing matrix = satisfies the restricted isometric property (RIP). Secondly, X can be sparsely represented.
Reference [
13] has shown that the randomly selected partial Fourier matrix satisfies RIP. In this paper, the measurement matrix
Φ is designed as a random partial unit matrix. Thus,
=
is equivalent to the randomly selected partial Fourier matrix which satisfies RIP.
In the complete CS theoretical framework,
X could be reconstructed by recovery algorithms along with a sparse matrix (denoted by
Ψ) from solving
In which α is the sparse projection coefficients of X.
However, considering the measurement principle of the spectral peak search, there is no requirement for the reconstruction of
X, as only the positions of the larger value in
X, i.e., the spectral peak positions, need to be captured here. Thus, whether
X is sparse has no essential effect on this method, and there is no need to introduce an additional sparse transformation even if
X is not sparse. Then, we rewrite (2), and the following underdetermined equation can be constructed,
In which bn ∈ ℂn × 1 is obtained by randomly extracting n rows from b, which is equivalent to Φb (as shown in (2)), and ∈ ℂn × N is acquired by the corresponding rows extraction from , i.e., partial Fourier matrix. In the view of CS theory, can be regarded as the sensing matrix; consequently, bn could be regarded as the corresponding measurement results.
Based on (5), the maximum position of
X can be obtained by calculating the inner products between each column of
and
bn, which can be expressed as
in which
,…,
represent the first column,…, and the
Nth column of
. It is worth noting that despite the fact that (6) is used for the measurement of the single frequency signal, in the case of multi-frequency signal measurement, multiple peaks can also be determined from
.
The above analysis is based on the IDFT, which changes the original inner product operations to the small-scale inner product operations. It can greatly reduce the computational complexity. Similarly, when the DFT-based interpolation techniques are introduced, which are equivalent to insert some columns in
(e.g., two DFT coefficients interpolation method [
5,
6], three DFT coefficients interpolation method [
7,
8]), the underdetermined equations can be also constructed by random extraction, and then the spectral peak positions are determined by small-scale inner product operations between each newly added columns in
and
b.
2.2. The Proposed One-Dimensional Signal Processing Method
As described in
Section 2.1, the underdetermined equation model can achieve the spectral peak estimation by small-scale inner product operations. However, the direct application of this basic model for spectral peak search is still not as fast as FFT. Therefore, in
Section 2.2 and
Section 2.3, we present a coarse-to-fine strategy based on this model and discuss its specific steps for processing one-dimensional and two-dimensional signals, respectively.
In this section, we use the proposed model to estimate the spectral peaks of a one-dimensional signal. Taking the single-peak search as an example, the specific steps are as follows:
The regular FFT is performed to a few previous discrete points of b ∈ ℂN × 1, denoted by ∈ ℂk × 1 (k < N); thus, a coarse estimated spectral peak position is obtained;
- 2.
Iterative operation:
The size of
is increased by adding a few subsequent points of
b each time. Then, we can construct an underdetermined equation according to (5), i.e.,
n (
n ≤
k) rows are randomly extracted from
, and correspondingly
n rows are extracted from
. Then, we take the spectral peak position captured from the last iteration (for the first iteration, it is just the preliminary value obtained from the coarse measurement) as a prior knowledge to reduce the number of inner products. Specifically, supposing that the
jth column of
(i.e.,
) corresponds to the peak position at the last iteration, the comparison of inner products at the current iteration only needs to be implemented between
bn and
, which could be described as
The procedure of iterative operation is repeated until the end of b. As the length of increases, the spectral peak position can continue to be updated by (7). The proposed one-dimensional signal processing method is shown in Algorithm 1.
Algorithm 1: The proposed algorithm for one-dimensional signal processing. |
Input: A column vector of length N: b ∈ ℂN × 1 Number of sinusoid components: s A column vector for coarse estimation: ∈ ℂk× 1, s < k < N IDFT matrix: Points number added each time: δ Extraction rate: β (β << 1) Output: Spectral peak positions ẑ = [z1,…, zs]T Initialize: Coarse spectral peak positions ẑc = zeros(s, 1)
1: /* Coarse estimation stage */
2: Set = b(1: k)
3: Calculate tempValue = sort(FFT())
4: Generate ẑc = tempValue(k-s + 1: k)
5: /* Iteration stage */
6: For j from 1 to s THEN
7: For h from k + 1 to N STEP δ THEN
8: Set (h: h + δ −1) = b(h: h + δ-1)
9: Calculate n= β × h
10: Obtain bn by randomly extracting n rows from
11: Obtain by correspondingly extracting n rows of
12: IF h == k + 1 THEN
13: Obtain
14: Else
15: Obtain
16: End IF
17: END FOR
18: Set zj = z
19: END FOR
20: Return ẑ |
2.3. The Proposed Two-Dimensional Signal Processing Method
The size of the signal is assumed as N × M, denoted by B = {b1, b2,…, bM}, and bi (i = 1, 2,…, M) could be regarded as a one-dimensional signal. In this section, we only discuss the case in which a column vector consisting of the spectral peak value of each bi is regarded as the input of the second dimension transformation.
We select a few previous columns of
B, denoted by
= {
b1,
b2,…,
bk} (
k < M). Then, the spectral peak of each column of
can be determined by regular FFT, and this procedure can be expressed as
In which is the peak value of spectrum of bi. Thus, a column vector composed of the peak value of each spectrum can be defined as = [, ,, ]T (k < x < M), which is the input data of the second-dimension transformation. Continuously, the regular FFT is performed to in order to obtain the coarse spectral peak positions, denoted by Ẑc = [Ẑ1, Ẑ2, , Ẑs]T, in which s represents the number of spectral peaks;
- 2.
Iterative operation:
As a few subsequent columns of
B are joined to
, the peak value of each spectrum is added to
, correspondingly. Similarly to the iterative operation in
Section 2.2, we can take the last spectral peak position of
as a priori knowledge. With the increasing length of
, the spectral peak position of newly
is continuously obtained by three inner products. The proposed two-dimensional signal processing method is shown in Algorithm 2.
Algorithm 2: The proposed method for two-dimensional signal processing. |
Input: A two-dimensional signal: B∈ ℂN × M Number of estimated spectral peaks: s A matrix for coarse estimation: ∈ ℂN × k, s < k < M Input column vector of the second dimensional transformation: Columns number added each time: δ IDFT matrix: Extraction rate: β (β<<1) Output: Spectral peak positions: Ẑ = [Z1,…, Zs]T Initialize: Coarse spectral peak positions: Ẑc = zeros (s, 1)
1: /* Coarse estimation stage */
2: Set = B (:, 1: k)
3: For i from 1 to k THEN
4: Calculate = max (FFT((:, i)))
5: Obtain (j) =
6: END FOR
6: Perform tempValue = sort (FFT())
6: Generate Ẑc = tempValue ((k-s): k)
5: /* Iteration stage */
6: For j from 1 to s THEN
7: For h from (k + 1) to M STEP δ THEN
8: Generate (:, h: h + δ-1) = B (:, h: h + δ-1)
3: For i from h to (h + δ-1) THEN
4: Calculate = max (FFT((:, i)))
4: Set (i) =
5: END FOR
9: Calculate n = β × h
10: Obtain bn by randomly extracting n rows from
11: Obtain by correspondingly extracting n rows of
12: IF h == k + 1 THEN
13: Obtain
14: Else
15: Obtain
16: End IF
17: END FOR
18: Set zj = z
19: END FOR
20: Return ẑ |
2.4. Complexity Analysis
In this section, we analyze the multiplicative complexity of both one-dimensional signal processing and two-dimensional signal processing using the proposed method.
For one-dimensional signal processing, the multiplication complexity is determined by both the coarse estimate stage and the iteration stage. In the coarse estimate stage, the multiplication complexity can be expressed as
. In the iteration procedure (one can assume the total sequence length during
hth iteration is
p), the multiplication complexity during one iteration procedure is
O(
s3
βp). Thus, the total multiplication complexity of each output is
and the corresponding multiplication complexity of the
N-point FFT algorithm is
. To clearly see the computational advantage of the proposed algorithm, we set the following typical parameters:
N = 512,
k = 32,
β = 30%,
s = 2,
p = 180, and the ratio of the computational complexity of two algorithms is
For two-dimensional signal processing, the multiplication complexity of the coarse estimation stage is composed of
k times
N-point FFT and one time
k-point FFT. In the iteration procedure, it is assumed that the total column number during the
hth iteration is
p, and then the multiplication complexity of this iteration procedure consists of
δ times
N-point FFT and three small-scale inner product operations. Thus, the total multiplication complexity of each output is
Additionally, the corresponding multiplication complexity of the 2-D FFT algorithm is
. We also set the following typical parameters:
N = 512,
M = 512,
δ = 2,
k = 32,
β = 30%,
s = 2,
p = 180, and the ratio of the computational complexity of the two algorithms is
The main advantage of the proposed method is that it greatly reduces the scale of inner product operations during the spectral peak search (described in
Section 2.1). Since the inner product operations will inevitably exist in the traditional DFT and its interpolation techniques, the proposed method can be applied to improve DFT and its interpolation techniques. Compared with the original methods, the proposed algorithm has the same accuracy with lower computational complexity.
2.5. Application of the Proposed Method
The spectral peak estimation of one-dimensional and two-dimensional signals is a much-studied problem with many practical applications, such as machine fault diagnosis system (one-dimensional signal), Doppler radar system (one-dimensional signal), sonar detection system (one-dimensional signal), and sawtooth linear frequency modulated continuous wave (LFMCW) system (two-dimensional signal). This paper takes the sawtooth LFMCW radar system as an example. The beat signal of LFMCW radar contains both distance information and Doppler information (i.e., speed) of the moving target, and 2-D FFT is usually used to obtain the distance and speed parameters. The beat signal can be expressed as [
14]
where
SIF(
t) is the beat signal,
fR is the frequency of
SIF(
t), and
fD is the Doppler shift caused by the moving target. According to [
14],
fR can be determined by
in which
K is the frequency slope constant,
R0 is the initial distance, c is the speed of light,
λ is the wavelength,
V is the target speed, and
fD can be obtained form
It can be clearly seen from (14) and (15) that we can obtain real-time distance and speed by estimating
fR and
fD, respectively. Furthermore,
fR is estimated by performing first-dimensional FFT, and
fD can be estimated by performing second-dimensional FFT. Therefore, the method described in
Section 2.3 can be used for the LFMCW radar system.