matlab读取图片的频率,获得时域图之后,也获得了频域图,但是如何查看频率呢......
本帖最后由 zmy240778 于 2017-12-8 09:09 编辑
上面那个图都是时域,下面那个图都是我通过FFT转化得到的频域,
但是我得到的频域上面有很多分支,我看不清哪个是一阶频率,哪个是二阶频率。
但是我看别人的,就很清楚,
所以想请教一下,这个应该怎么做。
下面附上我的matlab程序。
%FFT变换,获得采样数据基本信息,时域图,频域图
%这里的向量都用行向量,假设被测变量是速度,单位为m/s
clear;
close all;
A=importdata('DATA.TXT'); %通过仪器测量的原始数据,存储为data.txt中,附件中有一个模版(该信号极不规则)
%将测量数据赋给A,此时A为N×2的数组
x=A(:,1); %将A中的第一列赋值给x,形成时间序列
x=x'; %将列向量变成行向量
y=A(:,2); %将A中的第二列赋值给y,形成被测量序列
y=y'; %将列向量变成行向量
%显示数据基本信息
fprintf('\n数据基本信息:\n')
fprintf(' 采样点数 = %7.0f \n',length(x)) %输出采样数据个数
fprintf(' 采样时间 = %7.3f s\n',max(x)-min(x)) %输出采样耗时
fprintf(' 采样频率 = %7.1f Hz\n',length(x)/(max(x)-min(x))) %输出采样频率
fprintf(' 最小速度 = %7.3f m/s\n',min(y)) %输出本次采样被测量最小值
fprintf(' 平均速度 = %7.3f m/s\n',mean(y)) %输出本次采样被测量平均值
fprintf(' 速度中值 = %7.3f m/s\n',median(y)) %输出本次采样被测量中值
fprintf(' 最大速度 = %7.3f m/s\n',max(y)) %输出本次采样被测量最大值
fprintf(' 标准方差 = %7.3f \n',std(y)) %输出本次采样数据标准差
fprintf(' 协 方 差 = %7.3f \n',cov(y)) %输出本次采样数据协方差
fprintf(' 自相关系数 = %7.3f \n\n',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;
%傅立叶变换
y=y-mean(y); %消去直流分量,使频谱更能体现有效信息
Fs=5000; %得到原始数据data.txt时,仪器的采样频率。其实就是length(x)/(max(x)-min(x));
N=1012108; %data.txt中的被测量个数,即采样个数。其实就是length(y);
z=fft(y);
%频谱分析
f=(0:N-1)*Fs/N;
Mag=2*abs(z)/N;
%幅值,单位同被测变量y
Pyy=Mag.^2; %能量;对实数系列X,有 X.*X=X.*conj(X)=abs(X).^2=X.^2,故这里有很多表达方式
%显示频谱图(频域)
subplot(2,1,2,'Linewidth',2)
plot(f(1:N/2),Mag(1:N/2),'r') %显示频谱图
% 将这里的Pyy改成Mag就是 幅值-频率图了
axis([min(f(1:N/2)) max(f(1:N/2)) 1.1*floor(min(Pyy(1:N/2))) 1.1*ceil(max(Pyy(1:N/2)))])
xlabel('频率 (Hz)')
ylabel('能量')
title('频谱图(频域)')
grid on;
%返回最大能量对应的频率和周期值
[a,b]=max(Pyy(1:N/2));
fprintf('\n傅立叶变换结果:\n')
fprintf(' FFT_f = %1.3f Hz\n',f(b)) %输出最大值对应的频率
fprintf(' FFT_T = %1.3f s\n',1/f(b)) %输出最大值对应的周期
matlab读取图片的频率,获得时域图之后,也获得了频域图,但是如何查看频率呢......相关推荐
- matlab怎么输出图像文件夹,Matlab读取图片 显示和保存图像的相关操作
当前有部份朋友还不清楚Matlab读取图片 显示和保存图像的操作,所以下面绿软吧就带来Matlab读取图片 显示和保存图像的相关操作,一起来看看吧! Matlab读取图片 显示和保存图像的相关操作 打 ...
- Matlab 读取图片并将其按指定尺寸保存为mat格式
1.读取图片 使用imread函数,以矩阵的形式返回图片的数据 I = imread('1.jpg'); 红字部分更改为自己的图片路径 2.缩放图片 使用imresize函数,将图片缩小为64x64, ...
- matlab 读取图片后分区域编号_你的第一个有限元求解器——仅十行MATLAB代码
有限元分析话题中有不少讨论有限元求解器的问题,但大都停留在概念层面,未见实际代码.望本文能略起抛砖引玉之作用. 以下代码是基于MATLAB编写. 问题描述 考虑一平面有界区域 ,设其边界为 .我们求解 ...
- matlab读取图片亮度,Matlab中使用imagesc函数显示的亮度图像怎么和原图像的大小不一样?...
在matlab 2006上写的两个函数,这两个函数的调用格式为: 读DICOM图像数据: X = read_dicom(filename) 这个函数的作用是从filename所指定的文件中读取图像数据 ...
- matlab 读取图片的格式
在matlab中读取图像数据用imread函数:img = imread('******png') 其中img的格式为:height x width x channels x num ; 3通道的顺序 ...
- matlab产生单音信号的时域、频域图
clc; close all; clear all;fs = 100e3; % 采样频率 fc1=10e3; fc2=20e3; L = 2048; % 显示点数 t = 0:1/fs:(L-1)/f ...
- matlab读取一个文件的图片大小,Matlab读取文件夹中子文件夹中的图片并修改尺寸...
今天被师兄问到如何利用matlab批处理图片,觉得很简单嘛 就让他去百度 结果只百度到处理文件夹中图片的程序 好吧 这里放上如何处理文件夹中子文件夹的图片 现状:在一个名为casia的文件夹中,里面有 ...
- matlab保存所有图,Matlab中图片保存的5种方法
matlab的绘图和可视化能力是不用多说的,可以说在业内是家喻户晓的. Matlab提供了丰富的绘图函数,比如ez**系类的简易绘图函数,surf.mesh系类的数值绘图函数等几十个.另外其他专业工具 ...
- python三维矩阵出图_python读取图片的方式,以及将图片以三维数组的形式输出方法...
python 三维npy数组如何画成三维图片 画成三维图片? 你要是想要看空间分布的话画散点图就可以啊,用matplotlib 网页链接 要是那种各种弯曲的面,也是matplotlib 网页链接 再就 ...
最新文章
- Android Studio开发RecyclerView遇到的各种问题以及解决(一)
- C++继承中父类和子类之间的赋值兼容
- PHP使用Switch语句判断星座,PHP的switch判断语句的“高级”用法详解 用switch语句怎样判断成绩的等级...
- 深度学习入门:10门免费线上课程推荐
- 【译】Effective TensorFlow Chapter11——在TensorFlow中调试模型
- android播放器录制视频,Android播放器的录制实践
- php 论坛下载,PHPWind论坛社区
- linux和主机共享文件,设置Linux虚拟机与主机共享文件的方法
- 使用3g模块SIM5360E收发短信
- 信而泰ALPS 用户管理——网络测试仪实操
- 互联网思维之迭代思维
- 软件测试平台的作用以及会包含哪些功能?
- DC-DC与LDO的区别及原理
- 给文字上加中划线_小小招式让你给文字添加上划线
- Redis AKF CAP 集群知识
- HTTP 状态码 301 和 302 详解及区别——辛酸的探索之路
- linux文件夹缩略图不显示,分享|如何在终端显示图像缩略图
- python数据结构基础(单链表,多链表,二叉树)
- 用计算机绘制颗粒级配曲线,巧用excel绘制颗粒级配曲线与自动计算粒组特征参数...
- 原xp系统电脑重装win732位
热门文章
- 03MFC的ODBC类简介
- 2年的程序员之路 ,分享给你们
- 装逼神器,5 行 Python 代码 实现一键批量扣图,你get到了吗
- 新手关于如何看编程经典书的一些疑惑?
- 工作之余,如何再赚一份收入?
- linux generic什么意思_如何在 Ubuntu 中修复 VirtualBox 的 “rc=1908” 错误 | Linux 中国...
- Adobe illustrator 多个对象进行环形布局 - 连载22
- iMeta宏基因组生物信息期刊-创刊背景和简介
- Cell | 大规模多组织转录组学研究揭示长非编码RNA与人类复杂疾病的联系
- 生信宝典之傻瓜式(五) 文献挖掘查找指定基因调控网络