一维时间序列的离散正交Stockwell变换和离散余弦Stockwell变换

MATLAB环境下一维时间序列信号的离散正交Stockwell变换和离散余弦Stockwell变换。

Stockwell 变换是一种对短时傅立叶变换STFT和小波变换WT扩展的时频分析方法。Stockwell 变换将傅里叶变换的绝对相位保持特性与WT的频率相关分析和多分辨率特性结合起来。离散正交Stockwell变换是Stockwell 变换的一种非冗余且高效的形式,它可以解决Stockwell变换的许多存储和计算问题。离散正交Stockwell变换通过将Stockwell变换的输出划分为N个区域来减少Stockwell变换的冗余,每个区域由一个系数表示。离散正交Stockwell变换由一组正交基函数表示,这些函数对信号的傅立叶频谱进行定位并保留Stockwell变换的有利相位属性。离散正交Stockwell变换的主要优点是计算效率高、内存要求低、对测量噪声的抗干扰能力强、对故障电压和电流等非平稳信号的分析能力强。

离散余弦变换作为一种实数变换,更加适用于压缩和滤波,因此被广泛应用于图像/时频信号处理领域中,而这主要得益于其能量集中特性:对大多数无明显颗粒噪音的图像来说,进行离散余弦变换后的频谱,代表低频成分的左上角部分高亮,灰度呈缓慢变化,代表高频成分的右下角部分暗淡,灰度呈阶跃变化,换言之在时域中散乱分布的能量在频域中集中到左上角,低频部分占约85%的能量。因为在大多数情况下,图像的频域表示更为稀疏,或者说能量更集中。修改Stockwell变换中离散傅里叶变换部分,代之以离散余弦变换,即为离散余弦Stockwell变换。

该代码主要为一维时间序列的离散正交Stockwell变换和离散余弦Stockwell变换,程序运行环境为MATLAB R2018A,部分代码如下:

% 1-dimensional case
ns = 2^10; % number of samples
t = linspace(0,1,ns); % signal of 1s (0 to 1) sampled ns-times
f = linspace(-ns/2,ns/2 -1,ns); % frequencies
in = exp(2 *pi* 1i*(ns/2^2)*t).*((0/8<=t)&(t<1/8))+...
     exp(2 *pi* 1i*(ns/2^3)*t).*((1/8<=t)&(t<2/8))+ ...
     exp(2 *pi* 1i*(ns/2^4)*t).*((2/8<=t)&(t<3/8))+...
     exp(2 *pi* 1i*(ns/2^5)*t).*((3/8<=t)&(t<4/8))+...
     exp(2 *pi* 1i*(ns/2^6)*t).*((4/8<=t)&(t<5/8))+...
     exp(2 *pi* 1i*(-ns/2^2)*t).*((5/8<=t)&(t<6/8))+ ...
     exp(2 *pi* 1i*(-ns/2^3)*t).*((6/8<=t)&(t<7/8))+...
     exp(2 *pi* 1i*(-ns/2^4)*t).*((7/8<=t)&(t<8/8));
     
if (sum(mod(log2(size(in)), 1)) == 0)
else
    error('ERROR: STransfomrs works with signal with a 2^k size.')
end

出图如下:

代码一维时间序列的离散正交Stockwell变换和离散余弦Stockwell变换-今日头条 (toutiao.com)

最近更新

  1. TCP协议是安全的吗?

    2024-03-14 20:48:04       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-14 20:48:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-14 20:48:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-14 20:48:04       20 阅读

热门阅读

  1. python中判断是否是数字

    2024-03-14 20:48:04       20 阅读
  2. HDOJ 2041

    2024-03-14 20:48:04       19 阅读
  3. html5&css&js代码 002 50以内的加法算式

    2024-03-14 20:48:04       18 阅读
  4. 大数据面试

    2024-03-14 20:48:04       18 阅读
  5. 使用 @AspectJ 注解配置 Spring AOP

    2024-03-14 20:48:04       18 阅读
  6. 【自学用】B站python爬虫课程笔记(Q11-)

    2024-03-14 20:48:04       20 阅读
  7. 121. 买卖股票的最佳时机

    2024-03-14 20:48:04       17 阅读