多峰数据里的心率检测,Recovering-hidden-components-in-multimodal-data的 MATLAB 代码还挺有意思的。它模拟了胎儿和母体的心电信号,用的是复合扩散算子,还原隐藏在数据背后的结构。嗯,听着高深,但代码结构其实不复杂,跑一遍就明白在做什么。
主程序在main.m
,你只要准备好 MATLAB 环境,直接运行就能生成图 4、图 5 和图 6。默认用eigs
代替eig
,速度快不少,不过图像细节略有差异。想对照论文一模一样?就老老实实换回eig
吧,虽然跑得久点。
这个实现对模拟ta-ECG
信号还挺有参考价值,是你在搞心电信号、数据分解或者多模态这块。顺便说下,如果你对频谱平移、多峰估算感兴趣,也可以看看这个 KAZR 频谱代码,两者有点异曲同工。
要注意的是,作者的数据是合成的,不是真实采集的 ECG,所以想做实际临床,得自己换数据源。另外代码注释不多,看起来得细心点。
如果你正在研究胎儿 ECG 信号,还想探索怎么从混合信号里把胎儿成分分离出来,那这套代码可以说蛮值得一试。