Sei sulla pagina 1di 11

Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465

Study on the Improved Discrete S-Transform

Yanhua WU a,b,, Qingli MA a,b

a
404 Section, Electronic Engineering Institute, Hefei 230037, China
b
Anhui Electronic Restricting Technique Key Laboratory, Hefei 230037, China

Abstract
The S-transform has got great attention in the fields of signal processing due to its excellent
time-frequency combination properties. Based on the study of basic principles of S -transform, we analyze
the common used algorithm of discrete S-transform and point out its problems in implementation process,
and propose the improved discrete S-transform algorithm to reduce the amount of calculations of discrete
S-transform as well as to achieve the fast discrete S-transform operations. The analysis of its simulation
and performance demonstrates that by adopting the improved discrete S-transform algorithm the actual
operations can be reduced by one to few orders comparing with those by using the traditional discrete
S-transform algorithm. It proves the efficiency in calculations by applying the algorithm of discrete
S-transform.

Keywords: Time-frequency Analysis; S-transform; Discrete S-transform; Amount of Calculations

1. Introduction

In the fields of communication signal detection and processing, more and more people adopt
time-frequency analysis method for detection and identification of communication signal,
especially for digital signals, direct-sequence spread spectrum (DS) signals and
frequency-hopping spread spectrum (FH) signals. Time-frequency analysis is an effective method
for non-stationary signal; it maps the one-dimensional time domain signal and one-dimensional
frequency domain signal to two-dimensional signal on time-frequency plane. For non-stationary
signals, good time-frequency analysis method can help us to detect the variations of signal
frequency over time and acquire the two-dimensional time-frequency representation for the signal.


Corresponding author.
Email addresses: gaoshan_yangzhi@163.com (Yanhua WU).

2160-9454 / Copyright © 2013 Binary Information Press


September 15, 2013
456 Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465

The time-frequency analysis methods often used currently are: Short Time Fourier transform
(STFT), Gabor transform, Wavelet transform, Time-frequency distribution, Cohen class
time-frequency representation and so on. Two of the most representative methods are the STFT
and Wavelet transform[1].
On time-frequency analysis methods, Time-frequency resolution is an important parameter for
measuring the quality of its algorithm. STFT can be achieved with filter banks quickly, but its
time-frequency resolution being fixed. Wavelet transform can achieve multi-scale analysis, but
due to redundancy of its transform there does not exist only one inverse transform [1][2]. Because
of the double-varied window width characteristics between the adjacent time-frequency windows
of the discrete Wavelet transform, it is not appropriate for communication signal processing in
practice. Therefore, continuous Wavelet transform is mostly used, while the continuous Wavelet
transform can’t be implemented by means of fast algorithm.
Then in 1996, Stockwell combined the merits of the continuous Wavelet transform and the
STFT, introduced Gauss window whose width and frequency vary reversely, and proposed a new
method of time-frequency transform—S-transform[1][2]. This is a time-frequency analysis method
intervenient between the short-time Fourier transform and the Wavelet transform. Since this
method has some advantages such as multi-scale focus, correlation between time-frequency
resolution and frequency, and direct relation with its Fourier spectrum and so on, it is of great
importance in signal processing field, and is widely used in many areas.
Based on the study on the S-transform basic principle, we analyze the commonly used discrete
S-transform algorithm, point out that its problems in the implementation process, and propose the
improved discrete S-transform algorithm in order to reduce the amount of discrete S-transform
operation. Our simulation and algorithm performance analysis proves the efficiency of the
improved discrete S-transform algorithm.

2. Fundamentals of S-transform

The short time Fourier transform (STFT) of signal h(t) is defined[1]



STFT ( , f )   h(t ) w(t   )e j 2 ft dt (1)


where w(t) is the window function, τ is the time-moving factor, j is the imaginary unit. STFT
means to use a sliding window to analyze the signals one by one and finally obtain the whole
signal time-frequency domain plot. If we choose the STFT window as Gaussian window, i.e.,
t2
1  2
w(t )  e 2 (2)
 2
and define
 a (3)
f
as scale factor (a is a constant), we can get S-transform of signal h(t), which is defined as
Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465 457

( t  )2 f 2
 f 
S ( , f )   h(t ) e 2 a2
e  j 2 ft dt . (4)

2
From above equation, we see that the difference between S-transform and short time Fourier
transform lies in the Gauss window where the width and height change with frequency in
S-transform, which overcomes the defects of the STFT window with width and height being
fixed.
Signal h(t) can be reconstructed from the S-transform S ( , f ) , and its inverse transform is

expressed as
h(t )     S ( , f )d  e j 2 ft df .
 
(5)
 
  

3. Traditional Discrete S-transform Algorithm and Its


Disadvantages

From signal h(t) S-transform and its inverse transform expressions, we can obtain its frequency
spectrum H(f) expressed as
 
H ( f )   S ( , f )d   h(t )e j 2 ft dt . (6)
 

From Eqs.(4), (5) and (6), signal h(t) S-transform results can be expressed by its Fourier
transform. That is written as
2 2  2 a 2

S ( , f )   H (   f )e f2
e j 2 d  . (7)


(f  0)

In above formula, H(f) is the expression of the frequency spectrum h(t).  is the frequency

which controls the Gauss window in the frequency domain moving on the frequency axis.
From Eq.(7), the S-transform of discrete h(t) signal can be implemented by adopting highly
efficient Fast Fourier transform(FFT) algorithm and convolution theorem.
Assuming the received signal h(t) sampled by interval time of T and total sampling number
being N, we get a discrete sequence of h(t) as
h(k), k = 0, 1, …, N – 1.
In Refs. [4] to [7], by defining f  n / NT and   kT , the discrete S-transform expression is

written as
2 2 m 2 a 2
j 2 mk
N 1
m  n  n2
S [ k , n]   H ( )e e N
m0 NT . (8)
(k  0,1, , N  1; n  1, , N  1)
458 Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465

In the equation, k represents the time sampling point, n denotes the frequency sampling point.
From Eq.(8), the calculation steps for the discrete S-transform can be obtained. (See Refs.[4]-[7])
In the expressions of the discrete S-transform presented in Refs.[4]-[7], the FFT is employed to
realize S-transform fast algorithm. In Eq.(8), we take f  n / NT , that means the selection of

frequency sampling points is in accordance with the points of Fourier transform, by ignore the
influence of window function w(t) in frequency domain, that makes the expression of Eq.(8) has
the following three questions:
1) The value of frequency sampling point n does not accord with the physical meaning. The
value of n is in accordance with the frequency sampling points of Fourier transform. That means
the frequency resolution of Fourier transform is regarded as frequency sampling interval. In
S-transform, because of the influence of window function w(t), its window width should be
regarded as the frequency interval in frequency sampling point selection process. That is
consistent with the actual physical meaning of the frequency sampling.
2) The selections of n range and step are not reasonable. In Eq.(8), the range of n is from 1 to
(N-1), the step is 1/NT, which is actually the frequency resolution of Fourier transform. For
S-transform, the window function w(t) itself reflects the frequency resolution in the frequency
domain. In order to ensure the frequency windows corresponding to frequency points covering
the whole range seamlessly and non-redundantly, the step should be the frequency window width
for each frequency point. The value of n, which reflects the variation of frequency f, should be
determined according to the analysis of frequency range and frequency window width. In the
practical application, frequency window width must be larger than the value of the frequency
resolution corresponding to N points FFT. Otherwise, the number of time domain points included
in window function w(t) should be more than N. Then we can conclude that the frequency
sampling number in discrete S-transform should be less than(N-1).
3) The range of m is not reasonable. In Eq.(8), the range of m is from 1 to (N-1). However,
because of the existence of window function w(t) in the frequency domain, convolution over the
region outside of the frequency window is unnecessary. Thus the value range of m should be
shortened to be in the range of the frequency window width.
From above discussion we can see that the values of m and n in Eq.(8) would irrationally
increase the amount of computation. Therefore, the key step for removing away the redundant
calculation is to consider the effect of the window function w(t).

4. Improved Discrete S-transform Algorithm

For window function w(x), its center w0 and radius are expressed respectively as[8]
Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465 459

1  

2
w0  2 x w( x ) dx 
w 

1
. (9)
w 
1 
w  2 2 
 x  w0  w( x ) dx 2 


We can get the frequency window  ŵ of w(t) as

1 f
 wˆ   . (10)
2 2 2 2 a
Firstly we analyze the value of discrete frequency point n. Because the frequency window
width at frequency point f is the frequency resolution at that point, following to the request of
system frequency resolution, from above equation we can get  ŵ , which is equal to the value of

the frequency resolution in case of handling the maximal signal frequency, and then the value of
parameter a is obtained from Eq.(10). Thus, in the determination of a value, the system resolution
requirements can be satisfied in different frequency points. In order to satisfy the condition that
the frequency windows corresponding to the different frequency cover the processing frequency
band seamlessly, the discretization frequency should satisfy
 1 
f n 1  f n  2( wˆ )n  f n 1  . (11)
 2 a 
Assuming that the signal sampling rate is 1/T, for the discrete signal frequency spectrum, it is
not appropriate to select to be 0~1/(2T) out of the frequency spectrum in the S-transform process.
If the frequency is zero, the frequency window corresponding to the window function is also zero.
According to Hesienberg uncertainty principle[8], the calculation will not be realized when the
time window is infinite. From the folding property of Nyquist sampling theorem, the frequency
spectrum in the range of 1/T~3/(2T) is exactly the same as that in the range of 1/T~1/(2T).
Therefore, the frequency spectrum in the range of 1/T~3/(2T) can be chosen to be operated. From
Eq.(11), Nscales, the number of the discrete frequency points in the analysing frequency band
(the range of n), is obtained as
 3 
 ln 
Nscales  INT  2  1. (12)
  1 
 ln 1  2 a  
 
In Eq.(12), the operator INT[*] represents taking integer numbers counting down numerically.
The value of n is 0, 1,…, Nscales-1, and its frequency step is the frequency window width
corresponding to the frequency points. The frequency corresponding to each n value (discrete
frequency points) is
n
1 1 
f n  1   , n  0,1, , Nscales  1 . (13)
T 2 a 
460 Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465

Let’s see the value of the number of convolution terms m. The range of the number of
convolution terms m is related with the frequency window width determined by the frequency
corresponding to n. From Eqs.(10) and (13), we get
n
 1 
1  
2 a 
  wˆ n  , n  0,1, , Nscales  1 . (14)
2 2 aT
The number of the discrete points in the frequency window, widthn, which is converted from the
frequency resolution of N points FFT in   ŵ n , is obtained as
  1  
n

 N 1   
  2 a  
widthn  INT   , n  0,1, , Nscales  1 . (15)
 2 2 a 
 
For different value of n, the m is taken in the range of
m   widthn ,  widthn  1, , 0, , widthn
, (16)
(n  0,1, , Nscales  1)
The discrete frequency point (cen_fft)n of the frequency fn, which is corresponding to the FFT result,
is
  1 
n

 cen _ fft n  INT  N 1    N  , n  0,1, , Nscales  1 . (17)
  2 a  
From Eqs.(12), (16) and (17), we can obtain the following revised discrete S-transform formula
2 2 m 2 a 2
 m   cen _ fft n    cen _ fft n2 j 2Nmk
widthn
S [ k , n]   H  e e
NT . (18)
m  widthn  
(k  0,1, , N  1; n  0,1, , Nscales  1)
In Eq.(18), in order to apply the IFFT algorithm and reduce the amount of calculations, we
base our consideration on the folding property of Nyquist sampling theorem, and take the value
range of m being
m  0,1, , M n  1, n  0,1, , Nscales  1 , (19)

where
 ln  2widthn  
INT   0.5
Mn  2  
, n  0,1, , Nscales  1 .
ln2
(20)
Therefore, the improved discrete S-transform formula can be obtained as
2 2 m 2 a 2
 m   cen _ fft n    cen _ fft n2 j 2Nmk
M n 1
S [ k , n]   H  e e
NT . (21)
m0  
(k  0,1, , N  1; n  0,1, , Nscales  1)
From the Eq.(21), the algorithm steps for the improved discrete S-transform can be expressed as:
1) Initialization
Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465 461

a) According to the resolution requirements of signal processing, the value of scale factor a
in Eq.(3) can be determined by adopting Eq.(10).
b) By using Eq.(12), calculate Nscales, the number of discrete frequency points in the
S-transform, and determine the value range of n.
c) By using Eqs. (15) and (16), determine the range of m for the different value of n.
d) Using Eq. (17), calculate the value of (cen_fft)n.
m
2) Calculate H ( ) , the result of FFT of h(k).
NT
2 2 m2 a 2

3) Calculate the FFT result of the window function w(t), get W (m, n)  e n2
.
 m   cen _ fft n 
4) Calculate H   W (m,  cen _ fft n ) , according to the frequency sampling
 NT 
point (cen_fft)n.
mn
5) Calculate the IFFT result for Mn points of the function H ( )W (m, n) , and obtain the
NT
S-transform matrix.

5. Simulation for the Effectivity of the Improved Discrete


S-transform Algorithm

In order to prove the effectivity of the improved discrete S-transform algorithm, one voltage
controlling oscillation (VCO) signal is generated, whose instantaneous frequency is a linear
function. We set signal sampling rate 1/T=20MHz, sampling number N=4096. During the
sampling period, the generated signal instantaneous frequency is changed from 0 to 10MHz. The
time domain waveform of the signal displays in Fig.1.
Assuming the frequency resolution requirement for system processing is f  75kHz , the

improved discrete S-transform algorithm is used to process the above VCO signal. The
processing results are displayed in Fig.2
From Fig.2, we can see that by using the improved discrete S-transform to process VCO signal,
the transform results can reflect VCO signal characteristics in two aspects, i.e., time and scale
(frequency). Because VCO signal contains a wealth of information in time and frequency, it is
often regarded as typical representative of signal processing simulation experiment, and the
improved discrete S-transform algorithm can reflect its characteristics comprehensively and
correctly.
By using the traditional discrete S-transform algorithm to process the above VCO signal, the
results also can reflect the characteristics of time and frequency correctly, and the transform
results are almost the same as shown in Fig.2 except the number of scale (frequency). Here we do
not present the figure to display the results for the traditional discrete S-transform. In the
traditional discrete S-transform, the number of the traditional discrete S-transform is 4095; while
462 Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465

in the improved discrete S-transform, the number of scale (frequency) is 163. That difference
comes from the first and second questions about the traditional discrete S-transform put forward
in Section 2. That means in the traditional discrete S-transform, there exist overlaps when
frequency windows corresponding to frequency points cover the whole analyzing frequency band.
But in the improved discrete S-transform, all the corresponding frequency windows cover the
whole range seamlessly and non redundantly.

0.8

0.6

0.4

0.2
amplitude

-0.2

-0.4

-0.6

-0.8

-1
0 1000 2000 3000 4000
time

Fig.1 Time domain waveform of VCO

6
x 10

3
amplitude

0
160
120 4000
80 3000
2000
40
1000
scale(frequency) 0 0
time

(a) 3D Display of the Transform Result


Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465 463

160

120
scale(frequency)

80

40

0
0 1000 2000 3000 4000
time

(b) 2D Display of the Transform Result

Fig.2 Displays of VCO signal results after the improved discrete S-transform

The transform results shown in Fig.2 and the above analysis have proved the effectivity of the
improved discrete S-transform algorithm.

6. The Performances of the Improved Discrete S-transform


Algorithm

From Eq.(8) we can obtain the amount of calculations for finishing the traditional discrete
S-transform in the range of 1/(2T) frequency band as
6 N 2 log 2N  4 N 2 times of real multiplications
. (22)
9 N 2 log 2N  2 N 2 times of real additions

Similarly, we can get the amount of calculations for finishing the improved discrete
S-transform in the range of 1/(2T) frequency band as
Nscales 1
4 N log 2N  Nscales    4M n  2M n log 2M n  times of real multiplications
n 0 . (23)
Nscales 1
6 N log 2N  Nscales    2M
n 0
n  3M n log Mn
2  times of real additions

We can see that there exist Nscales  N and M n  N from above discussions. Therefore, we

conclude the amount of calculations for the improved discrete S-transform is less than that for the
traditional discrete S-transform.
We take the example which is presented in above section. With the same sampling rate and
frequency resolution, we get the amounts of calculations by adopting both the traditional and
464 Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465

improved discrete S-transform algorithms to process and analyse the VCO signal, and list them in
Table 1.

Table 1 The Comparison of the Amounts of Calculations

Transform The times of real multiplications The times of real additions


4096 pinots using traditional
1.2751e+009 1.8455e+009
discrete S-transform
4096 pinots using improved
3.2060e+007 4.8085e+007
discrete S-transform

In order to make intuitive comparison of the computational performances of the both


S-transform algorithms, we directly compare the amounts of calculation times for finishing the
transform. In our work we used the computer CPU: Intel Core2 4300 1,8GHz Dual core, Memory
2G, Operating system: Windows XP SP3. We adopted the Matlab7.0 to perform simulations. The
amounts of calculation times necessary for finishing the traditional and improved discrete
S-transform algorithms, are listed in Table 2.

Table 2 The Comparison of the Amounts of Calculation Times

10 times simulation time Average time per single simulation


Transform
(second) (second)
4096 pinots using traditional
2508.1320 250.8132
discrete S-transform
4096 pinots using improved
65.3140 6.5314
discrete S-transform

In the condition of fixing the request for the system frequency resolution, we depict Fig.3 to
show the amounts of calculations by using the traditional and improved discrete S-transform
algorithms. The calculation amounts are showed as the logarithmic coordinates in Fig.3.
We can conclude from Table 1, Table 2 and Fig.3 that the calculation amount needed for the
improved discrete S-transform algorithm is obviously less than that for the traditional one. In the
case of analyzing the data of more than 1024 points, the calculation amount for the former is
basically one to few orders smaller than that for the later algorithm. And the advantage in
calculation amount for the improved discrete S-transform algorithm is more significant with the
increment of the number of the processing sample number.

7. Conclusion

We studied the S-transform algorithm in this paper. Based on the traditional discrete S-transform
algorithm, we proposed the improved discrete S-transform algorithm. From our simulation results,
we can see that the improved discrete S-transform is effective in processing signals. We compare
the computation amounts by adopting both the S-transform algorithms, and find that the
calculation amount needed for the improved discrete S-transform algorithm is one to few orders
Y. Wu et al. / Journal of Pattern Recognition & Image Processing 4:4 (2013) 455-465 465

smaller than that for the traditional one. That is a proof for the effectivity of the improved discrete
S-transform algorithm.

14
10
times of mutiplications using traditional discrete S-transform
13
10 times of additions using traditional discrete S-transform
times of mutiplications using improved discrete S-transform
12 times of additions using traditional discrete S-transform
10

11
calculation amount

10

10
10

9
10

8
10

7
10

6
10
1 2 3 4 5 6 7
sample number

Fig.3 Relationship between Calculation Amount and Logarithm of Sample Number

Since the improved discrete S-transform algorithm can reduce the computation amount, it is
helpful for the realization of fast reconnaissance of communication signal and the related devices,
and has important theoretical and practical significance.

References

[1] Zhang Xian-da, Modern Signal Processing[M], Beijing, Tsinghua University Press, 2002.
[2] Stockwell R G, Mansinha L, Lowe R P. Localization of the complex spectrum: The S transform [J]. IEEE
Transactions on Signal Processing, 1996, 44(4): 998-1001.
[3] Theophanis S, Queen J. Color display of the localized spectrum [J]. Geophysics, 2000, 65(4): 1330-1340.
[4] Chen Xue-hua, He Zhen-hua. Improved S-Transform and its application in seismic signal processing [J].
Journal of Data Acquisition & Processing, 2005, 20(4): 449-453.
[5] Liu Chuan-wu, Zhang Zhi-jun, Bi Du-yan. Radar targets recognition using S transform [J]. Journal of
System Simulation. 2008, 20(12): 3290-3292.
[6] Wu Kai-you, Ma Xu. Parameter estimation of frequency-hopping signals based on S-Transform [J].
Journal of Military Communications Technology. 2009, 29(3): 7-11.
[7] Chen Xuehua, He Zhenhua, Chen Zhen. Normalized window based S transform and its application [J].
Journal of Data Acquisition & Processing. 2009, 24(4): 458-463.
[8] Zhang Xian-da,Bao Zheng, Non-stationary Signal Analysis and Processing[M],Beijing, National Defence
Industry Press,1998.

Potrebbero piacerti anche