Welch's estimate of the Spectral Kurtosis
The spectral kurtosis (SK) is a fourth-order statistical tool which can indicate the presence of transients and their locations in the frequency domain by "decomposing" the kurtosis of a signal as function of frequency. As such, it helpfully supplements the classical power spectral density.
The matlab function SK_W.m provides the Welch's estimate of the SK.
The following example illustrates its usage for the detection of transients with theoretical spectral content in band [.15 .19]:
load x % synthetic signal provided in the pack
Nw = 2^8;
Nfft = 2*Nw;
Noverlap = round(3/4*Nw);
[SK,M4,M2,f] = SK_W(x,Nfft,Noverlap,Nw);
figure,newplot;
subplot(211),plot(f(1:Nfft/2),M2(1:Nfft/2)),grid on,
xlabel('normalized frequency'),xlim([f(1) f(Nfft/2)]),ylim([0 .1]),title('Power spectrum')
subplot(212),plot(f(1:Nfft/2),SK(1:Nfft/2)),grid on
xlabel('normalized frequency'),xlim([f(1) f(Nfft/2)]),title('Spectral Kurtosis')
As demonstrated in Ref. [2], the square root of the spectral kurtosis is related to the optimal filter (in the mean-square sense) that extracts the transients of interest. This is achieved as follows:
b = fftshift(real(ifft(SK)));
xf = fftfilt(b,x);
figure,newplot;
subplot(211),plot(x,'k'),title('Original signal')
subplot(212),plot(xf,'k'),title('Filtered signal with square root of spectral kurtosis')
References:
[1] J. Antoni, The spectral kurtosis: a useful tool for characterising nonstationary signals, Mechanical Systems and Signal Processing, Volume 20, Issue 2, 2006, pp.282-307.
[2] J. Antoni, R. B. Randall, The spectral kurtosis: application to the vibratory surveillance and diagnostics of rotating machines, Mechanical Systems and Signal Processing, Volume 20, Issue 2, 2006, pp.308-331.
인용 양식
Jerome Antoni (2024). Welch's estimate of the Spectral Kurtosis (https://www.mathworks.com/matlabcentral/fileexchange/48914-welch-s-estimate-of-the-spectral-kurtosis), MATLAB Central File Exchange. 검색됨 .
MATLAB 릴리스 호환 정보
플랫폼 호환성
Windows macOS Linux카테고리
태그
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!버전 | 게시됨 | 릴리스 정보 | |
---|---|---|---|
1.0.0.0 | signal 'x' added to pack of files |