欢迎光临散文网 会员登陆 & 注册

【更新20230316】MATLAB脚本《UntitledProgram.m》使用说明

2023-03-16 17:45 作者:锕天霸动霸羽  | 我要投稿

本脚本测试软件:①MATLAB R2019b;②SleepSign2-OBI

下载地址:https://wwxr.lanzoum.com/b04dsjohg 密码:blct

历史版本:https://wwxr.lanzoum.com/b04dsp7sb 密码:ayzl


目录

  • 运行脚本

  • 自定义文件信号采样率和单元格时间

  • 绘制信号典型图

  • 绘制时频谱图

  • 参考资料



运行脚本


使用MATLAB打开UntitledProgram.m,或双击UntitledProgram.exe直接运行。


运行脚本打开程序界面,点击右下角@Instruction可跳转使用说明。


自定义文件信号采样率和单元格时间



File Sampling Rate:

       文件采样率,即信号幅值文件中每秒显示的信号个数。在脑波记录软件VitalRecorder中可以更改,通常为128Hz。


Epoch Time:

       单元格时间,在使用脑波分析软件SleepSign导出数据前可以更改,根据实际填写即可,默认为4s。



绘制信号典型图



点击Typical Graph,选择使用SleepSign的text output功能导出的幅值文件。导出一列幅值即可,导出多列也只能绘制第一列幅值。


其中频域图像较密集,放大可见柱体。


点击“文件”→“另存为”,保存为svg矢量图,可导入Adobe Illustrator进一步修补美化。


绘制时频谱图



点击Spectrogram,选择使用SleepSign的text output和FFT功能导出幅值与能谱文件。


其中幅值文件需导出两列信号,第一列为EEG,第二列为EMG。


依次导入所需文件,幅值图和时频图绘制互不影响,如果只需要时频图,随便打开一份幅值信号即可。


时频图可选择绘制原图或拟合后的平滑图,参考效果如下:


N越大耗时越长,绘制时会显示等待条。但由于刷新等待条进度的动画需耗费5s左右,在N数低时较浪费时间,故这版代码暂不予显示。


点击“文件”→“另存为”,保存为svg矢量图,可导入Adobe Illustrator进一步修补美化。


参考资料


[1] MathWorks官网:https://ww2.mathworks.cn/help/matlab/referencelist.html

[2] 知乎《傅里叶分析之掐死教程(完整版)》:https://zhuanlan.zhihu.com/p/19763358

[3] CSDN《【STM32F407的DSP教程】第27章 FFT的示波器应用》:https://blog.csdn.net/Simon223/article/details/106402717

[4] bilibili《matlab实现FFT算法》:https://www.bilibili.com/video/BV1i14y1K7Bq

[5] 知乎《[振动与测试 2] 什么是PSD(功率谱密度)》:https://zhuanlan.zhihu.com/p/49328001

[6] 知乎《信号频域分析方法的理解(频谱、能量谱、功率谱)》:https://zhuanlan.zhihu.com/p/441559677

[7] CSDN《Matlab打包可独立运行的exe可执行文件》:https://blog.csdn.net/thlzzz/article/details/109697423

[8] CSDN《Matlab中imagesc用法》:https://blog.csdn.net/qq_21449473/article/details/123083741

[9] CSDN《matlab添加进度条(waitbar)》:https://blog.csdn.net/weixin_43465015/article/details/89294079


由于从零学起参考内容太过琐碎,大多数函数在官网均可查,故此处仅列出部分参考资料。

我尽可能将每段代码的含义在脚本文件中用中文备注出来,详见每段代码“%”后的内容。


【更新20230316】MATLAB脚本《UntitledProgram.m》使用说明的评论 (共 条)

分享到微博请遵守国家法律