非均匀采样信号

非均匀采样信号经常出现在汽车工业、通信以及医学和天文学等领域。非均匀采样可能是由于传感器不完善、时钟不匹配或事件触发现象造成的。

频谱内容的计算和研究是信号分析的重要部分。传统的频谱分析方法,如周期图和 Welch 方法,要求输入信号均匀采样。当采样非均匀时,可以对信号进行重采样或插值到均匀采样网格上。然而,这会给频谱增加不需要的伪影,并可能导致分析误差。

更好的替代方法是使用 Lomb-Scargle 方法,该方法直接处理非均匀采样,因此不需要重采样或插值。该算法已在 plomb 函数中实现。

缺失数据的信号的频谱分析

假设有一个温度监控系统,其中微控制器记录房间的温度,并每 15 分钟将此读数传输到存储度数的基于云的服务器。众所周知,Internet 连接中的小故障会阻止基于云的系统接收微控制器发送的一些读数。此外,在测量期间,微控制器的电池会至少耗尽一次,导致存在大采样间隔。

加载温度读数和对应的时间戳。

load('nonuniformdata.mat','roomtemp','t1')

figure

plot(t1/(60*60*24*7),roomtemp,'LineWidth',1.2)

grid

xlabel('Time (weeks)')

ylabel('Temperature (\circF)')

确定信号是否均匀采样的简便方法是获取连续采样时间间隔的直方图。

绘制以分钟为单位的采样间隔(时间差)直方图。仅包括存在采样的点。

tAtPoints = t1(~isnan(roomtemp))/60;

TimeIntervalDiff = diff(tAtPoints);

figure

hist(TimeIntervalDiff,0:100)

grid

xlabel('Sampling intervals (minutes)')

ylabel('Occurrences')

xlim([10 100])

与预期相符,大多数测量间隔为大约 15 分钟。然而,相当多的事件具有大约 30 到 45 分钟的采样间隔,这对应于缺失一个或两个连续采样。这会导致信号采样不均匀。此外,直方图中表示高频次的条形周围都呈现一些抖动。这可能与 TCP/IP 延迟有关。

使用 Lomb-Scargle 方法计算和可视化信号的频谱内容。为了帮助更好地可视化频谱,假设有最高 0.02 mHz 的频率,等效于每周约 13 个周期。

[Plomb,flomb] = plomb(roomtemp,t1,2e-5,'power');

figure

plot(flomb*60*60*24*7,Plomb)

grid

xlabel('Frequency (cycles/week)')

ylabel('Power (dBW)')

频谱显示主要周期性是每周 7 个周期和每周 1 个周期。这是可以理解的,因为数据来自以七天为日历周期的温控建筑物。显示每周 1 个周期的峰值的频谱线表明建筑物中的温度遵循以一周为单位的周期,周末温度较低,一周的工作日温度较高。每周包含 7 个周期的频谱线表明,还存在夜间温度较低、白天温度较高的以日为单位的周期。

非均匀间隔采样信号的频谱分析

心率变异性 (HRV) 信号按时间表示心跳之间的生理变化,通常采用非均匀采样,因为人体心率不是恒定的。HRV 信号来自心电图 (ECG) 读数。

HRV 信号的采样点位于 ECG 的 R 峰值时间。每个点的幅值计算为连续 R 峰值之间时间差的倒数,并放在第二个 R 峰值的瞬时位置。

% Load the signal, the timestamps, and the sample rate

load('nonuniformdata.mat','ecgsig','t2','Fs')

% Find the ECG peaks

[pks,locs] = findpeaks(ecgsig,Fs, ...

'MinPeakProminence',0.3,'MinPeakHeight',0.2);

% Determine the RR intervals

RLocsInterval = diff(locs);

% Derive the HRV signal

tHRV = locs(2:end);

HRV = 1./RLocsInterval;

% Plot the signals

figure

a1 = subplot(2,1,1);

plot(t2,ecgsig,'b',locs,pks,'*r')

grid

a2 = subplot(2,1,2);

plot(tHRV,HRV)

grid

xlabel(a2,'Time(s)')

ylabel(a1,'ECG (mV)')

ylabel(a2,'HRV (Hz)')

R 峰值之间的变化间隔导致 HRV 数据中的采样时间非均匀性。考虑信号的峰值位置,并以秒为单位绘制其间隔直方图。

figure

hist(RLocsInterval)

grid

xlabel('Sampling interval (s)')

ylabel('RR distribution')

HRV 频谱中关注的典型频带是:

超低频 (VLF),从 3.3 到 40 mHz,

低频 (LF),从 40 到 150 mHz,

高频 (HF),从 150 到 400 mHz。

这些频带大致限定了对 HRV 有贡献的独特生物调节机制的频率范围。这些频带中的任何波动都有生物学意义。

使用 plomb 计算 HRV 信号的频谱。

figure

plomb(HRV,tHRV,'Pd',[0.95, 0.5])

虚线表示 95% 和 50% 的检测概率。这些阈值度量峰值的统计意义。频谱显示上述所有三个关注的频带的峰值。然而,只有位于 VLF 内 23.2 mHz 处的峰值显示出 95% 的检测概率,其他峰值的检测概率小于 50%。低于 40 mHz 处的峰值被认为源于长期调节机制,如体温调节系统和激素因素。

matlab 非均匀采样,非均匀采样信号的频谱分析相关推荐

  1. matlab恒定值,基于MATLAB的明渠恒定非均匀渐变流水面线的数值计算

    基于MATLAB的明渠恒定非均匀渐变流水面线 的数值计算 胡岚平 刘华 覃文文 马丽琼 四川大学水利水电学院,成都610065 摘要:明渠恒定非均匀渐变流的微分方程难以求出其解析解,本文针对底宽渐变的 ...

  2. 波形生成:均匀和非均匀时间向量

    波形生成-- 脉冲.chirp.VCO.正弦函数.周期性/非周期性和调制信号 使用 chirp 生成线性.二次和对数 chirp.使用 square.rectpuls 和 sawtooth 创建方波. ...

  3. 自适应采样非局部神经网络的点云鲁棒操作

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 原始点云数据不可避免地从3D传感器或在重建算法中包含异常值.本文提出了一种用于鲁棒点云处理的新型端到端 ...

  4. MATLAB实现对Sa(t)采样利用采样定理恢复原信号

    MATLAB实现采样,恢复 对Sa(t)函数均匀采样 %信号Sa(t)作为被采样信号,信号带宽B=1,采样频率Ws=2B %此频率下的采样为Nyquist采样,对采样即恢复过程用MATLAB进行仿真 ...

  5. (发现)问题才是推动创新的动力系列:两种类型硬币(均匀和非均匀)能否用第一次得正面朝上的概率推断“第一第二次依次获得正面反面情况”的概率?

    两种类型硬币(均匀和非均匀)能否用第一次得正概率推断,第一第二次依次获得正反概率? 2种硬币 均匀的 COIN1  正反概率(正0.5  反0.5) 非均匀的COIN2 (正0.9  反0.1) 问题 ...

  6. PCL点云曲面重采样三种方法:上采样,下采样,均匀采样

    (1)下采样  Downsampling 一般下采样是通过构造一个三维体素栅格,然后在每个体素内用体素内的所有点的重心近似显示体素中的其他点,这样体素内所有点就用一个重心点来表示,进行下采样的来达到滤 ...

  7. 奈奎斯特抽样频率 matlab仿真,奈奎斯特采样定理、降采样、过采样

    奈奎斯特采样定理 fs >= 2fH 根据奈奎斯特采样定理,需要数字化的模拟信号的带宽必须被限制在采样频率fs的一半以下,否则将会产生混叠效应,信号将不能被完全恢复.这就从理论上要求一个理想的截 ...

  8. opencv matlab三维点云,点云采样的三种方法 - 小白学视觉的个人空间 - OSCHINA - 中文开源技术交流社区...

    点击上方"小白学视觉",选择"星标"公众号 重磅干货,第一时间送达 编辑:3D视觉工坊 本文由知乎作者GeometryHub授权转载,不得擅自二次转载. 原文链 ...

  9. 怎么用vc采集ni卡数据_利用labview、matlab和c实现非ni接口卡的数据采集及处理

    利用LabVIEW .MATLAB 和C 实现非NI 接口卡的数据采集及处理** 周旭欣1 董兵超1 向明礼2 李拥秋1 袁支润1? (1.四川大学生物力学研究所,成都:610065:2.四川大学化工 ...

  10. 模拟信号与离散信号之间的频率关系(由模拟信号采样得到的离散信号)

    先看看模拟信号与离散信号之间的关系,这里的离散信号是指由模拟信号采样得到的离散信号(这是得到离散信号的方式之一),我想看看它们频率之间的关系? 以正弦信号为例: 从上面的手稿中可以看出,由模拟信号经过 ...

最新文章

  1. [转帖]tar高级教程:增量备份、定时备份、网络备份
  2. Mysql的日志那些事
  3. python的helper_SQLHelper ------ python实现
  4. python简单代码hello-树莓派完成简单的编程(四)
  5. ios 三种颜色画笔和橡皮擦的画图板demo
  6. C# DataTable转ListModel通用类
  7. 爱思唯尔云论坛:疫情挑战下的大数据与人工智能研究
  8. 测试回收站测试回收站测试回收站测试回收站测试回收站测试回收站测试回收站测试回收站
  9. 跟我一起学Redis之Redis事务简单了解一下
  10. 告知书页面html样式,纯CSS实现的三种通知栏滚动效果
  11. oracle执行大sql,mybatis连接oracle执行sql语句出现ORA
  12. 2017版张宇1000题【题目收集】
  13. chrome插件开发引入图片静态资源
  14. 树莓派基于motion的usb摄像头监控
  15. win10文件夹全屏的快捷键
  16. Android虚拟按键的适配
  17. 京东暑期实习面经(已OC)
  18. 阿里云——专有网络VPC
  19. 智源社区AI周刊No.99:OpenAI发布接近人类水平的语音识别系统Whisper;马毅:智能的计算和科学研究将融合...
  20. DAY12-机器人导航入坑 概述 SLAM建图

热门文章

  1. 如何彻底卸载3dmax2020_3dmax卸载不干净如何解决_3dmax怎么彻底卸载干净
  2. 一文了解.Net Core 3.1 Web API基础知识
  3. 优化算法3--蚁群算法(原理)
  4. 关于自抗扰控制的一些中文论文
  5. oracle笔记整理14——性能调优之oracle执行计划
  6. html批量生成断面,【干货】利用Excel在AutoCAD中批量绘制断面图的方法
  7. 石头机器人拖地水量调节_拖地组件再评测:正式版 家有 石头科技T4 米家一代 水箱拖地组件...
  8. Geodatabase
  9. 潦草字体在线识别_潦草字体在线识别_遇到好看的字体?不会识别?教你如何快速识别字体...
  10. 朋友:趣头条上市了!我:谁?