Fast Gabor Wavelet Transform Based on Synthesis of Gabor Spectrum using Convolution of Gaussian Takanobu Ishikawa Ryosuke Takayama Shuichi Arai Tokyo City University, Japan ishikawa12@ipl.cs.tcu.ac.jp Tokyo City University, Japan takayama11@ipl.cs.tcu.ac.jp Tokyo City University, Japan arai.s@cs.tcu.ac.jp Abstract—Gabor wavelet transform is often used in timefrequency analysis for non-stationary signals. However, the calculation of continuous wavelet transform including Gabor wavelet transform is very complex. Mallat algorithm in discrete wavelet transform is representative of a speeding-up method of wavelet transform, but we can’t use this algorithm for the Gabor wavelet since the Gabor wavelet is a non-orthogonal wavelet. Some methods, which approximate the basis function to orthonormal function, have been proposed to solve this issue. However, approximate accuracy of each algorithm is low. In this paper, we focus on mathematical characteristics of a Gaussian which is used as a basis function, and propose a synthetic method of wavelet coefficients using Gabor spectra which are calculated using FFT. In addition, we discussed the synthetic accuracy and calculation complexity, then made it clear that we can reduce the calculation complexity to about 1/20 in regard to general CWT maintaining the desired accuracy. Index Terms—Gabor Transform, Gabor Wavelet Transform, complexity reduction, spectrum synthesis I. I NTRODUCTION Wavelet transform [1] [2] is often used in time-frequency analysis for non-stationary signals. Wavelet transform uses little wavelike functions known as mother wavelets. Since mother wavelets are scaled, the analytic length is different for each frequency. With this method, time-frequency resolution can be controlled properly as compared to Short Time Fourier Transform (STFT) [3] because the analytic length of STFT is constant regardless of frequency [4]. The timefrequency resolution is determined by a mother wavelet in wavelet transform. Hence, it is important to decide what kind of basis function to employ. Gabor function [5] is wellknown for minimizing the product of time and frequency resolution. Gabor wavelet transform, which employs Gabor function as the mother wavelet, has been used in a variety of fields [6]–[8]. However, the calculation of Continuous Wavelet Transform (CWT) is very complex. Moreover, in recent years, the calculation complexity has tended to increase along with the high sampling rate of signals. Therefore, a speeding-up method such as Fast Fourier Transform (FFT) in STFT is being sought.Mallat algorithm [9] [10] in Discrete Wavelet Transform (DWT) is representative of the speeding-up method of wavelet transform, but the basis function must have orthonormality in DWT. Thus, we cannot use this algorithm for Gabor wavelet since Gabor wavelet is non-orthogonal wavelet c 978-1-4673-7353-1/15/$31.00 2015 IEEE [11]. Some methods, which approximate the basis function to orthonormal function, have been proposed to solve this issue [12] [13]. These methods show that Mallat algorithm can be used in Gabor wavelet transform. However, the approximate accuracy of each algorithm is low. A method to improve this approximate accuracy have been proposed [14]. However, a high approximate accuracy cannot be achieved. The objective of this study is fast and high accuracy CWT. To achieve this aim, we employ Gabor transform, which is STFT with a Gaussian window. We have proposed a method to calculate high-frequency resolution Gabor spectra using lowfrequency resolution Gabor spectra [15]. Taking advantage from this method, we propose a method to synthesize hightime resolution Gabor spectra using low-time resolution Gabor spectra. This method make it possible to obtain spectra in any frequency position and change resolution for each frequency. Therefore we can calculate wavelet coefficients using Gabor spectra. In this paper, first of all, we show that a wavelet coefficient can be synthesized from some Gabor spectra using the mathematical characteristics of a Gaussian. Next, we discuss the calculation accuracy, and show a design method of parameters based on calculation accuracy. Finally, we discuss the calculation complexity, and show that we can reduce the calculation complexity of CWT. II. G ABOR T RANSFORM We perform fast Gabor wavelet transform using Gabor transform in the procedure of Fig. 1. In Gabor Transform, Fig. 1. Outline of proposed method Fourier transform of the Gaussian window wσ (t) and the Gaussian gσ (t) are Z 2 − ω1 2 −jωt 2( ) σ Wσ (ω) = wσ (t) · e dt = e (4) Z 2 √ − ω1 2 Gσ (ω) = gσ (t) · e−jωt dt = 2πσ · e 2( σ ) . (5) Fig. 2. Difference of Gabor spectrum and wavelet coefficient we cut out a part of signal using the Gaussian window, and perform Fourier Transform. Gabor Transform of input signal x(t) is defined by Z Xσ (t0 , ω) = wσ (t − t0 ) · x(t) · e−jωt dt (1) where the Gaussian window wσ (t) is defined as wσ (t) = √ t2 1 1 gσ (t) = √ e− 2σ2 2πσ 2πσ (2) using the Gaussian gσ (t). A. Determine Frame length using Standard deviation and Quantization error It is necessary to decide the frame length for cutting out a input signal in Gabor transform. Since a Gaussian has infinite length, we must cut off the Gaussian if we use it as the window function. As might be expected, an error occurs if we cut off the Gaussian at finite length. However, an actual signal also has the error in consequence of quantization. If we cut off a Gaussian in consideration of dynamic range of the signal by quantization, the calculation accuracy do not become worse. Then, we can decide cutting off the window at the range [− L2 , L2 ] that an amplitude is smaller than the acceptable error ε. Thus, the frame length L[sec] can be written as √ (3) L = 2 −2 ln ε · σ. B. Difference of Gabor spectrum and Wavelet coefficient In Gabor transform, a standard deviation σ of the Gaussian window determines time-space resolution that is constant as shown in Fig. 2. On the other hand, wavelet coefficients, which are synthesis target, have different resolution for each frequency. In addition, frequency bins are linear interval in STFT, but analysis frequencies of wavelet transform are non-linear interval. Hence, we must be corresponded the resolution and analysis frequency of Gabor spectrum to wavelet coefficient. III. S YNTHESIS M ETHOD In general, in order to obtain a different resolution spectrum, it is necessary to perform Gabor transform using different window length again. If we can control σ, we can change the resolution for each frequency without reanalysis. Thus, we focused on two mathematical characteristics of the Gaussian. First, a frequency response of a Gaussian is also a Gaussian. Second characteristic, convolution of two Gaussians become a Gaussian with different standard deviation. In frequency domain, this characteristics is Z As Wασ (ω) = Wσ (ω − γ)Gσs (γ)dγ (6) 2π where σs and As are σs = √ α σ, 1 − α2 As = 1 α (α < 1). (7) This formula means the frequency response of Gaussian window with any scale standard deviation ασ can be obtained by convolving the frequency response of the Gaussian window with σ and the Gaussian with σs . Substituting Eq.(6) into Gabor transform, synthetic formula is obtained undergoing a process of follow. Z Xασ (t, ω0 ) = wασ (τ − t) · x(τ ) · e−jω0 τ dτ Z = Wασ (ω) · X(ω + ω0 ) · ejωt dω Z Z As Wσ (ω − γ) · Gσs (γ)dγ = 2π ·X( ω + ω0 ) · ejωt dω Z Z As = Wσ (ω − γ) · X(ω + ω0 ) · ej(ω−γ)t dω 2π ·Gσs (γ) · ejγt dγ Putting ω − γ = ω 0 , then dω is dω 0 Z Z 0 As = Wσ (ω 0 ) · X(ω 0 + ω0 + γ) · ejω t dω 0 2π ·Gσs (γ) · ejγt dγ The underline of Eq.(8) means Gabor transform using Gaussian window with standard deviation σ. Thus, the synthetic formula can be written as Z As Xασ (t, ω0 ) = ejγt · Xσ (t, ω0 + γ) · Gσs (γ)dγ. (9) 2π This formula means that a spectrum of different resolution can be calculated by convolving a Gaussian with spectra in respect to frequency as shown in Fig. 3. Then, we can get any resolution spectra by changing σs of the Gaussian Gσs (γ) for each frequency. And moreover, we can get spectrum in any frequency position by changing the center of convolution. Therefore, we can control the resolution and analysis frequency conformed to wavelet coefficients. Up to this point, we showed the synthetic method of wavelet coefficients from Gabor spectra, but the calculation complexity remain high since Eq.(9) is in continuum region. Therefore, we (8) Fig. 3. Spectrum synthesis method consider discretization of convolution. Discretization of Eq.(9) is eασ (t, ω0 ) X Mω As X = {Xσ (t, ω0 + mΩ)·Gσs (mΩ)·ej(mΩ)t }·Ω. (10) 2π Fig. 4. Characteristics of the syntheric Gaussian window in time domain m=−Mω Normally, the number of synthetic term Mω is infinite, but we must determine Mω as finite term. Additionally, we must determine discretization interval Ω of the Gaussian. In short, we must determine two discretization parameters. IV. D ECISION OF D ISCRETIZATION PARAMETERS In Eq.(10), the wider Ω becomes, the more we can reduce the complexity cost. And, the fewer Mω becomes, the more we can reduce the complexity cost. However the synthetic error which is caused by discretization becomes higher in this condition. There, we set an acceptable error ε, and determine Ω and Mω which satisfy the condition that the synthetic error is smaller than the ε In this paper, we treat the quantization error as the acceptable error. First, Eq.(10) can be written that convolution of frequency response of synthetic Gaussian window Wασ (ω − ω0 ) with Fourier transform X(ω) of input signal. eασ (t, ω0 ) X Mω As X {Xσ (t, ω + mΩ) · Gσs (mΩ) · ej(mΩ)t } · Ω = 2π m=−Mω Z Mω As X = { Wσ (ω − ω0 − mΩ) · X(ω) · ejωt dω 2π m=−Mω ·Gσs (mΩ) · ej(mΩ)t } · Ω Z Mω As X {Wσ (ω − ω0 − mΩ) · Gσs (mΩ)} · Ω = X(ω) · 2π m=−Mω = Z ·e jωt dω fασ (ω − ω0 ) · ejωt dω X(ω) · W (11) In other words, the synthetic error is controlled by the frequency response of synthetic Gaussian window. Thus, we quantify the error of the frequency response of synthetic Gaussian window, and determine Ω and Mω which satisfy the condition that the synthetic error is smaller than the ε. Since the frequency response of synthetic Gaussian window is obtained by convolving the frequency response of the original Gaussian window with the discrete Gaussian as shown in underline of Eq.(11), the synthetic Gaussian window becomes product in time domain. w eασ (t) = As · wσ (t) · ∞ X k=−∞ gσs (t − 2πk ) Ω (12) The Gaussian is a monotonically decreasing function, but the time domain signal becomes periodic signal like the blue line shown in Fig. 4 since the Gaussian discretized in frequency domain. As a result, the synthetic Gaussian window w eασ (t) has error components. The error component is caused multiple. However, An amplitude of high order error components are quite small in comparison to the first error component, because the Gaussian window wσ (t) is also a monotonically decreasing function. Hence, the peak level of the first error component dominates the accuracy of the synthesis. When we calculate the first error component in positive time, range of k is 0 or 1. Thereby Eq.(12) becomes 2π w eασ (t) = As · wσ (t) · gσs (t) + gσs (t − ) . (13) Ω The error E(t) between the synthetic window and a target window is E(t) = |wασ (t) − w eασ (t)| 2π = As · wσ (t) · gσs t − Ω n 2π 2 o t− Ω − 12 ( σt )2 + 1 σs . (14) = As · √ ·e 2πσ Furthermore, the derivative the time tp , which the error component is peak, is zero. Setting derivative of E(tp ) with respect to tp equal to zero, we can obtain the formula of tp . 2π (1 − α2 ) (15) Ω Substituting Eq.(15) into Eq.(14), the peak of the error component is tp = 2 1 1 2 2π 2 1 · e− 2 ( σ ) ( Ω ) (1−α ) . (16) 2πασ As shown in Eq.(16), the peak of the error components becomes smaller when Ω becomes smaller. On the other hand, the calculation complexity is lower when Ω becomes larger. Therefore, we determine the longest Ω which satisfy the condition that the synthetic error is smaller than the acceptable error ε. As with Ep.(3), if the peak of the error components fall within dynamic range of the signal by quantization, we can synthesize the spectrum without degradation of the calculation accuracy. Sinse √ the maximum amplitude of the Gaussian window is 1/( 2πασ), the condition for obtaining Ω is E(tp ) = √ 1 · ε. (17) 2πασ Solving this formula for Ω, the condition of Ω can be written as √ p 2π · 1 − α2 . (18) Ω ≤ √ − ln ε · σ E(tp ) ≤ √ We can determine the longest Ω without degradation of the calculation accuracy when we satisfy this condition. However, actual spectra have been calculated at intervals of frequency resolution ∆f [Hz]. Substituting Eq.(3) and Ω = 2πF into Eq.(18), the condition of descretization interval is p 1 F ≤ 2 1 − α2 · . (19) L √ If 2 1 − α2 ≥ 1 isn’t satisfied, we can’t synthesize in practice beause 1/L means frequency resolution ∆f . Thus, α is limited by a ceiling. √ 3 (20) α ≤ 2 Next, we discuss the relationship between the number of synthetic term Mω and the synthetic error. The synthetic error is lower when Mω is larger, but the calculation complexity is lower when Mω is smaller. Hence, we determine the smallest Mω based on the acceptable error ε as with Ω. The synthetic Gaussian window w eασ is product of the original Gaussian window wσ and the discrete Gaussian gσs as shown in Eq.(12). Thereby we determine the range of convolution based on the range which an amplitude of the discrete Gaussian is adequately attenuated. If the damping ratio as against the maximum amplitude of the frequency response of the discrete Gaussian Gσs is smaller than the ε, we can synthesize the spectrum without degradation of the calculation accuracy. The condition for obtaining Mω is √ Gσs (ω) ≤ 2πσs ε. (21) Since ω = Mω Ω, the condition of Mω can be written as p 2(1 − α2 ) √ · − ln ε Mω Ω ≥ (22) ασ substituting Eq.(18) into this formula, 1 (− ln ε). (23) πα We can determine the smallest Mω without degradation of the calculation accuracy when we satisfy this condition. As above, we made clear the condition of discretization parameters based on the desired accuracy. Mω ≥ V. C OMPUTATIONAL C OST In this section, we compare the calculation complexity of our method with the general CWT about number of times of multiplication. We calculate wavelet coefficients by scaling mother wavelet from 1 to S in CWT. However, scaling factor s is discretized on a computer. When we perform the scaling at an interval of every ∆s, scaling factor s can be written as s = a · ∆s + 1 (a : 0 ∼ (S − 1)/∆s) (24) where a is integer and S is maximum of scaling. The calculation complexity of Gabor wavelet transform have been already obtained in [16]. The calculation complexity of the general CWT Ow is (S−1)/∆s Ow = X (25) Ow (a) a=0 Ow (a) √ = 2(2 −2 ln εfs σ(a∆s + 1) + 1) (26) where fs is sampling frequency. We determine standard deviation σ in consideration of the density of spectrum. We design σ based on a condition that spectra on highest frequency and adjacent frequency bin are crossed at half energy. √ ∆s + 2 ln 2 σ = · (27) ∆s 2πf0 On the other hand, the calculation complexity of proposed method is a sum of FFT and synthesis. The calculation complexity of synthesis is 2Mω +1 from Eq.(10). Substituting Eq.(18) into Mω , the calculation complexity of proposed method Op is (S−1)/∆s Op Op (a) = 4 · N log2 N + N + X Op (a) (28) a=0 = 4 · (2Mω + 1) 1 (− ln ε) + 1 = 4· 2 πα (29) where N [sample] is frame length. The first term in Eq.(28) is the cost of FFT. The second term is the cost of windowing. And the third term is the cost of synthesis. In this regard, we For example, when we set fs = 44.1[kHz] and S = 256 (analysis frequency is 55∼14080[Hz]), we can reduce the calculation complexity to about 1/20. In this way, the proposed method is effective in calculation complexity reduction of CWT. TABLE I E XPERIMENTAL CONDITION ω0 σ fs ε ∆s S 2π · f0 [rad/sec] (f0 = 14080[Hz]) 1.98 · 10−4 44.1, 96, 192 [kHz] 3.05 · 10−5 (16bit quantization error) 0.1 32, 64, 128, 256 TABLE II R ATE OF COMPLEXITY REDUCTION PP fs PP S P P 44.1 96 192 32 64 128 256 0.3005 0.2695 0.2755 0.1658 0.1465 0.1483 0.0905 0.0791 0.0794 0.0491 0.0425 0.0423 must consider the calculation of complex number. Thereby FFT and synthesis are needed quadruple cost. We scale up σ depending on frequency using scaling factor s in general CWT, but we can only scale down the standard deviation σ in proposed method. Hence, we scale down standard deviation σ, which is largest. So, α is α = (S − a · ∆s) . S (30) However, α has a condition shown in Eq.(20). Therefore, we determine standard deviation σw used in Gabor transform as shown in Eq.(31). √ 2 3 (31) σw = Sσ · 2 Also, we determine the frame length N depending on σw . Using Eq.(3), we define the frame length N as √ N ≥ 2 −2 ln ε · fs · σw . (32) In this regard, FFT exert high-speed performance when the frame length is power-of-two. Thus, we define N as the shortest length of power-of-two which satisfy Eq.(32). We calculated the rate of complexity reduction r = Op /Ow using parameters shown in table I. And show the result in table II. The calculation complexity ratio remain unchanged when sampling frequency is changed. The calculation complexity of the general CWT increases when sampling frequency becomes higher. However, FFT cost also increases because necessary frame length becomes longer depending on sampling frequency. Since FFT cost dominate the calculation complexity of the proposed method, the calculation complexity ratio is scarcely affected by sampling frequency. On another front, the calculation complexity ratio becomes decreases when S becomes larger. For the above mentioned reasons, the calculation complexity of proposed method is not change largely by changing S. Thus, the proposed method have an advantage over the general CWT if the number of analysis frequency increases. VI. C ONCLUSION In this paper, we proposed a synthesis method of wavelet coefficient using FFT in order to the calculation complexity reduction of CWT. We focused on the mathematical characteristics of the Gaussian that convolution of two Gaussians become a Gaussian with different standard deviation. Using this characteristics, we showed the synthetic method of wavelet coefficients can be calculated by convolving a Gaussian with some spectra obtained by Gabor transform in frequency domain. Next, we discussed the synthetic accuracy, and showed the condition of discretization parameters which satisfy the desired accuracy. Furthermore, we discussed the calculation complexity, and showed that we can reduce the calculation complexity to about 1/20 in regard to general CWT. R EFERENCES [1] J. Morlet, G. Arens, I. Fourgeau, D. Giard, ”Wave propagation and sampling theory,” Geophysics, vol.47, no.2 , pp.203-236, Feb. 1982 [2] A. Grossman and J. Morlet, ”Decomposition of Hardy functions into square integrable wavelets of constant shape,” SIAM J. Math. Anal., vol.15, no.4, pp.723-736, July 1984. [3] J.B. Allen, L.R. Rabiner, ”A unified approach to short-time Fourier analysis and synthesis,” Proc. IEEE, vol.65, pp.1558-1564, Nov. 1977. [4] O.Rioul and M.Vetterli, ”Wavelets and signal processing,” IEEE Trans. Signal Process., vol.8, no.4, pp.14-38, 1991. [5] D. Gabor, ”Theory of communication,” J. Inst. Elect.Eng., vol.93, no.111, pp.429-457, London, 1946. [6] Yonghua Jiang, Baoping Tang, Yi Qin, Wenyi Liu. ”Feature extraction method of wind turbine based on adaptive Morlet wavelet and SVD,” Renewable Energy, vol.36, no.8, pp.2146-2153, August 2011. [7] J.P. Mena-Chalco, H. Carrer, Y.Zana, R.M. Cesar Jr, ”Identification of protein coding regions using the modified Gabor-wavelet transform,” IEEE/ACM Trans. Computational Biology and Bioinformatics, vol.5, no.2, pp.198-207, April-June 2008. [8] Chao He, Yuan F. Zheng, Stanley C. Ahalt, ”Object Tracking Using the Gabor Wavelet Transform and the Golden Section Algorithm,” IEEE Trans on Multimedia, vol. 4, no. 4, pp.528-538, December 2002. [9] S.G. Mallat, ”A theory for multiresolution signal decomposition: the wavelet representation,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol.11, no.7, pp.674-693, Jul. 1989. [10] S.G. Mallat, ”Multifrequency channel decomposition of images and wavelets models,” IEEE Trans. Acoust. Speech Signal Process., vol.37, no.12, pp.2091-2110, Dec. 1989. [11] Sato Masa-aki, ”Mathematical foundation of wavelets I.Non-orthogonal wavelets,” Acoustical Science and technology, vol47, no.6, pp.405-415, 1991. [12] M.J. Shensa, ”The discrete wavelet transform: wedding the trous and Mallat algorithms,” IEEE Trans. Signal Process., vol.40, no.10, pp.24642482, 1992. [13] O. Rioul, ”Fast algorithms for discrete and continuous wavelet transform,” IEEE Trans. Inf. Theory, vol.38, no.2, pp.569-586, Mar. 1992. [14] G. Loy, ”Fast computation of the Gabor wavelet transform,” Digital Image Computing Techniques and Applications(DICTA2002), pp.1-6, Melbourne, Australia, Jan. 2002. [15] Ryosuke Takayama, Shuichi Arai, ”Fast Multiresolution Gabor Transform Based on Synthesis of High Frequency Resplution Spectrum from Low Frequency Resolution Spectra,” GlobalSIP 2014, IEEE, Atlanta, 2014 [16] Shouhei Inaba, Shuichi Arai ”Complexity Reduction of Continuous Wavelet Transform with Gabor Basis Functions by Convolving Wavelet Coefficient with Wavelet Function, ”IEICE Trans.D Vol.J97-D No.6 pp.1133-1141 , June.2014.