时频转换 | Matlab基于递归图Reccurence Plots一维数据转二维图像方法
目录
- 基本介绍
- 程序设计
- 参考资料
- 获取方式
基本介绍
时频转换 | Matlab基于递归图Reccurence Plots一维数据转二维图像方法
程序设计
clear
clc
close all
fs = 6400 ; % 数据采样频率
N = 5120; % 信号的点数
% 生成时间向量
t = (0:N-1) / fs;
% 生成正弦信号
x = sin(2 * pi * 150 * t);
output_folder = './figures'; % 指定输出频谱文件夹路径(此处默认为本代码文件夹)
%% 滑动窗口划分样本
window_length = 1024; % 窗口长度
step_size = 1024; % 步长
t = (0:window_length-1)/fs;
f=(fs/2)/(window_length/2):(fs/2)/(window_length/2):(fs/2);
num_samples = floor((length(x) - window_length) / step_size) + 1; % 样本数量
% 初始化样本矩阵
samples = zeros(window_length, num_samples);
% 滑动窗口划分数据样本
for i = 1:num_samples
start_index = (i - 1) * step_size + 1; % 窗口起始索引
end_index = start_index + window_length - 1; % 窗口结束索引
% 判断是否滑动至最后一个窗口
if end_index <= length(x)
samples(:, i) = x(start_index:end_index);
else
% 忽略最后一个窗口
break;
end
end
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/129215161
[2] https://blog.csdn.net/kjm13182345320/article/details/128105718
获取方式
点击文章底部联系博主