请大家对医学信号滤波给予指导
我手头上有一组肌电信号,采样频率为5000Hz,请大家帮我看一下它的频谱。我想对它滤波处理,可是我所知有限,请大家能给予指导,非常感谢!文档中有两个通道。以通道1为例吧,谢谢! 医学信号干扰常见的就是工频干扰。所以我选择高通滤波。数字滤波器的最小阶次估计。我如下设计
=buttord(1000/2500,500/2500,3,30);
=butter(n,Wn,'high');
1000/2500为Wp通带截止频率
500/2500为Ws阻带截止频率
3和30分别为通带和阻带的波纹系数(这里的波纹系数的选择有什么要求吗?)
根据上述估计得出系数b和a
n=5,Wn=0.3661
b=0.1350 -0.6748 1.3495 -1.3495 0.6748 -0.1350
a=1.0000 -1.3199 1.2456 -0.5742 0.1608 -0.0180
然后利用
y=filter(b,a,x)对数据进行滤波,得出如下波形,
第一个图为原始数据图
第二个图为滤波后的图
大家帮我看一下,我这样做是否合理呀?滤波前后的幅度值变化好大呀
[ 本帖最后由 xiaocheng_2007 于 2009-3-11 22:56 编辑 ] 这个肌电图像随机信号。 对于随机信号做一帧FFT显然数据很乱,这一次与下一次做的结果也不一样,应该采取随机信号最常用的多次(50~100帧以上)谱密度平均的方法,才能得到比较稳定的结果。
如果随机信号本身频谱包含50HZ,不要轻易谈什么滤波,还是要从改进测试技术入手。
滤除工频信号
本帖最后由 wdhd 于 2016-9-14 10:37 编辑肌电数据中始终有一个50赫的工频信号
图a中兰色为N=2048阶fft振幅谱a1,红色为apfft振幅谱a2,a1和a2的频谱相同的信号为稳态信号,即数据从头到尾都含有这个频率成份的信号.在图a中,k=21处a1和a2重合(相当21*5000/2048=51.2赫).只有这个工频信号是稳态信号,其它频率成分是随机的. 取原数据二通道中任一段作fft都有k=21这条谱线
用校正法时将k=21处的频率校正值(49.8918Hz),相位校正值(8.1753度)和振幅校正值(18.9734)算出,重构时域工频干扰信号,从原信号(图b兰色)中减去工频信号,得滤除工频的肌电信号(图b红色),
滤除工频的肌电信号再作谱分析,图c中兰色为FFT振幅谱a1’,红色为apFFT振幅谱a2’,a1’和a2’频谱中 k=21处峰值消除.
时域中原肌电信号(图b兰色)和滤除工频的肌电信号(图b红色)相差不大,频域中a1’和a2’不重合,表明信号非稳态信号,从时域图和频谱图中要看出毛病来还要下大功夫.有一文说用频谱肌电图中可得肌电中间频率,平均能量频率,不知求时有否改善
不过这个例子说明校正法可以从实际信号中滤除某一频率,它好像把某一频率挑了出来,做到单频陷波器,若用FIR滤波器难以做到.
[ 本帖最后由 zhwang554 于 2009-3-12 18:55 编辑 ]
回复 5楼 zhwang554 的帖子
你好,你的分析很精辟,非常感谢你的回答。我对论坛上的一组数据进行滤波,效果很好,可是,当应用在我的电信号上面,却得不出效果。可以指导一下我吗?QQ50785952 本帖最后由 wdhd 于 2016-9-14 10:37 编辑原帖由 xiaocheng_2007 于 2009-3-11 22:54 发表
医学信号干扰常见的就是工频干扰。所以我选择高通滤波。数字滤波器的最小阶次估计。我如下设计
=buttord(1000/2500,500/2500,3,30);
=butter(n,Wn,'high');
1000/2500为Wp通带截止频率
500/2500为Ws阻带截止频率
...
对信号进行频谱分析可看到(见下图,上半幅是0-2500Hz,下半幅是取局部0-500Hz):
1,信号的主要能量集中在500Hz以下;
2,在50Hz处有一个明显的峰值,显然是工频干扰造成的。
楼主设计的butterworth高通滤波器,其参数:1000/2500为Wp通带截止频率,500/2500为Ws阻带截止频率,把主要能量都滤除了。对于50Hz的干扰可用自适应陷波器滤除。
回复 7楼 songzy41 的帖子
谢谢songzy41的回答!你帮我解决了一个大麻烦。我已经想通了,谢谢你的指点!求救:信号处理
现在本人要用数据采集卡采集管道振动数据,不知道信号采集后怎么处理,需要什么软件,请各位大虾赐教,不胜感激。
页:
[1]