【广义S变换】一维广义S变换对非平稳信号处理的matlab仿真
1.软件版本
matlab2013b
2.本算法理论知识
参考文献:
《时频分布与地震信号谱分析研究》
《非平稳信号广义S不变换及其在SAR图像分析中的应用研究》
《广义S变换及其时频滤波》
3.部分源码
clc;
clear;
close all;
warning off;
addpath 'func\S\'
addpath 'func\GS\'
%产生线性调频信号
len = 128;
t = 0:len-1;
figure;
subplot(221);
y = cos(2*pi*(10+t/8).*t/len);
plot(y);
title('线性调频信号');
%一维S变换
subplot(222);
[ST_matrix,ST_times,ST_frequencies] = func_ST(y);
contourf(ST_times,ST_frequencies,abs(ST_matrix));
title('一维S变换');
%一维广义S变换
P=0.1;
R=1;
K=2;
subplot(223);
[GST_matrix,GST_times,GST_frequencies] = func_GST(y,P,R,K);
contourf(GST_times,GST_frequencies,abs(GST_matrix));
title('一维广义S变换');
%一维广义S逆变换
subplot(224);
y2 = func_inv_GST(GST_matrix);
plot(y2);
title('线性调频信号');
4.仿真分析
注意,广义S和一般S的区别就是广义S具有调节参数。关于不同参数下广义S变换的窗函数的仿真的结果如下所示:
基于广义S变换的时频滤波器。对于一个非平稳信号加上噪声,要把噪声滤除掉;而且要知道前后的信噪比。最后,再把设计得时频滤波器用到人工合成的地震信号和实际地震信号里。另外,要对这个信号用阈值滤波、小波软阈值滤波、时频滤波进行比较滤波前的信噪比和滤波后的信噪比。
用二维广义S变换去除二维图像随机噪声,比较无噪声和加入噪声后去除噪声的图像比较及噪声比。程序要有二维广义S变换的算法实现。
这里,将使用二维图像的广义S变换处理:
注意,通过仿真可知,如果当图像像素大于50的时候,仿真速度及其缓慢,所以在实际进行二维图像滤波的时候哦,我们一般使用局部滤波的思路,即将图像分为多个局部图像,然后再将其二维的局部图转换为一维序列,然后完成滤波。
5.参考文献
[1]高静怀, 陈文超, 李幼铭,等. 广义S变换与薄互层地震响应分析[J]. 地球物理学报, 2003, 46(4):7.A28-09