Physionet

生物医学信号有很多处理包:PhysioToolKit(主要用这个处理包来处理数据)、EEGLAB
这里写图片描述

PhysioToolKit简介:

这里写图片描述

PhysioToolKit 是一个庞大且不断扩充的软件库,包含了多种软件包:
(1)WFDB(waveform database) 数据库开发工具包,用于读取和分析PhysioBank 数据库。
(2)仿真软件,人工合成的各种动力学波形,用于算法分析和模型评估。
(3)绘图软件, 将文本或二进制数据绘成高品质的图形。
(4)生理信号处理软件,提供了一些通用的信号处理算法。
(5)心率变异性 (Heart Rate Variability, HRV) 分析软件。
(6)时间序列的非线性分析软件。

WFDB 软件包是用来读取和分析PhysioBank 中数据库的开放源码的软件,可在 Linux 、Unix 、Mac 、 Windows 等操作系统下运行。
WFDB 软件包由WFDB Library 、 WFDB Application和 WAVE 三部分组成。

WFDB Library

是用来读、写信号文件、注释文件、头文件的函数集合。这些函数可在用户以 C 、Fortran 、 Java 、 Matlab 等语言编写的程序中调用,从而读取 PhysioBank文件进行数据分析、 以新记录文件或注释文件的形式生成分析结果,这不仅为用户节省了大量的时间和精力,而且可随时为数据库增加新的内容。

WFDB Application

是一个经过测试的命令工具集,用于信号分析和处理。
不同数据格式间的转换 (a2m 、ahaconvert 、 m2a 、edf2mit 、 mit2edf )
信号校准(calsig )
波形检测和定位(ecgpuwave 、 sqrs 、wabp 、 wqrs )
心率和功率谱分析(ihr 、hrfft 、 hrlomb 、 hrmem )
信号处理( fft 、fir 、 mfilt 、 dfa )
信号分析(sigamp 、sigavg 、 signame 、sampfreq )
注释文件操作 (rdann 、 wrann 、sumann 、 ann2rr 、rr2ann 、 mrgann )
绘图( plot2d 、 plot3d 、 plt 、 pltf 、 imageplt )
数据库文件操作( wfdbcat 、wfdbcollate 、 wfdbconfig 、wfdbdesc )等功能

WAVE

是用于波形分析、显示和注释编辑的窗口应用程序,主要功能有
(1) 快速显示不同校准尺度下的波形和注释;
(2) 快速定位到记录的任何一位置, 通过存贮历史数据、提前预读等方式,提高程序运行效率和缩短网络传输时间;
(3) 向前和向后搜索特定的注释类型;
(4) 使用标准的或用户自定义的注释来编辑图形化注释;
(5) 采用不同的波形显示速度,可仿真示波器显示,能够前进或后退;
(6) 高清晰打印用户选择的信号段;
(7) 灵活控制与外部程序的接口来处理和分析信号;
(8) 提供远程操作模式,通过浏览器外部程序进行wave 的波形显示;
(9) 提供在线帮助。、

WFDB用法 :

Object

  1. Record
def __init__(self, p_signals=None, d_signals=None,
             recordname=None, nsig=None,
             fs=None, counterfreq=None, basecounter=None,
             siglen=None, basetime=None, basedate=None,
             filename=None, fmt=None, sampsperframe=None,
             skew=None, byteoffset=None, adcgain=None,
             baseline=None, units=None, adcres=None,
             adczero=None, initvalue=None, checksum=None,
             blocksize=None, signame=None, comments=None)
import wfdb
record1 = wfdb.Record(recordname='r1', fs=250, nsig=2, siglen=1000, filename=['r1.dat','r1.dat'])

2.MultiRecord

def __init__(self, segments = None, layout = None,
             recordname=None, nsig=None, fs=None,
             counterfreq=None, basecounter=None,
             siglen=None, basetime=None, basedate=None,
             segname = None, seglen = None, comments=None)
import wfdb
recordM = wfdb.MultiRecord(recordname='rm', fs=50, nsig=8, siglen=9999, segname=['rm_1', '~', rm_2'], seglen=[800, 200, 900])

recordL = wfdb.rdsamp('s00001-2896-10-10-00-31', m2s = False)
recordL = recordL.multi_to_single()

3.Annotation

def __init__(self, recordname, annotator, annsamp, anntype, subtype = None,
             chan = None, num = None, aux = None, fs = None, custom_anntypes = None)
import wfdb
ann1 = wfdb.Annotation(recordname='ann1', annotator='atr', annsamp=[10,20,400],
                       anntype = ['N','N','['], aux=[None, None, 'Serious Vfib'])

Reading Signals

1.rdsamp

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值