没有合适的资源?快使用搜索试试~ 我知道了~
请教MATLAB的图象多重分形程序-FFT变换.doc
需积分: 13 5 下载量 145 浏览量
2019-08-13
14:30:04
上传
评论
收藏 30KB DOC 举报
温馨提示
试读
2页
请教MATLAB的图象多重分形程序-FFT变换.doc 各位大虾: 最近在做图象多重分形的分析,在MATHWORKS上找到一个国外程序,可以做.但是分 析的结果有点问题,a-f图的fmax大于2.另外,在运行的时候,会提示错误Size vector should be a row vector with integer elements, Integer operands are required for colon operator when used as index error.我加了一个FLOOR之后,错误就没有了.但是计算的结果还是有问题! 请帮忙看一下是什么错误啊! 非常感谢! 附上程序.
资源推荐
资源详情
资源评论
%FFT 变换,获得采样数据基本信息,时域图,频域图
%这里的向量都用行向量,假设被测变量是速度,单位为 m/s
clear;
close all;
load data.txt %通过仪器测量的原始数据,存储为 data.txt 中,附件中有
一个模版(该信号极不规则)
A=data; %将测量数据赋给 A,此时 A 为 N×2 的数组
x=A(:,1); %将 A 中的第一列赋值给 x,形成时间序列
x=x'; %将列向量变成行向量
y=A(:,2); %将 A 中的第二列赋值给 y,形成被测量序列
y=y'; %将列向量变成行向量
%显示数据基本信息
fprintf(' 数据基本信息:')
fprintf(' 采样点数 = %7.0f ',length(x)) %输出采样数据个数
fprintf(' 采样时间 = %7.3f s',max(x)-min(x)) %输出采样耗时
fprintf(' 采样频率 = %7.1f Hz',length(x)/(max(x)-min(x)))%输出采样频率
fprintf(' 最小速度 = %7.3f m/s',min(y)) %输出本次采样被测量最小值
fprintf(' 平均速度 = %7.3f m/s',mean(y)) %输出本次采样被测量平均值
fprintf(' 速度中值 = %7.3f m/s',median(y)) %输出本次采样被测量中值
fprintf(' 最大速度 = %7.3f m/s',max(y)) %输出本次采样被测量最大值
fprintf(' 标准方差 = %7.3f ',std(y)) %输出本次采样数据标准差
fprintf(' 协 方 差 = %7.3f ',cov(y)) %输出本次采样数据协方差
fprintf(' 自相关系数 = %7.3f ',corrcoef(y)) %输出本次采样数据自相关系数
%显示原始数据曲线图(时域)
subplot(2,1,1);
plot(x,y) %显示原始数据曲线图
axis([min(x) max(x) 1.1*floor(min(y)) 1.1*ceil(max(y))]) %优化坐标,可有可无
xlabel('时间 (s)');
ylabel('被测变量 y');
title('原始信号(时域)');
grid on;
%傅立叶变换
y=y-mean(y); %消去直流分量,使频谱更能体现有效信息
Fs=2000; %得到原始数据 data.txt 时,仪器的采样频率。其实
就是 length(x)/(max(x)-min(x));
N=10000; %data.txt 中的被测量个数,即采样个数。其实就是
length(y);
z=fft(y);
%频谱分析
资源评论
weixin_39841882
- 粉丝: 443
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功