PhysioNet生理信号处理(四)--WFDB for Python

PhysioNet是一个由美国国家通用医学科学院(NIGMS)和国家生物医学成像和生物工程院(NIBIB)共同支持的面向科研人员免费提供生理信号库和其处理工具的一个资源网站或者项目。目前项目内容主要分为两个:PhysioBank和PhysioToolkit,也就是生理信号库和处理工具箱。

网站:https://physionet.org/

有小伙伴留言说能不能介绍一下WFDB 的python版本的用法,今天我就来讲讲WFDB for Python.

同一个库,不管支持什么样的开发语言,其功能是不变的。所以Python版的具体功能可以看前面Matlab版的文章。

一、安装

安装Pyhton的库或者包最简单的就是用pip安装。没有pip或者不会的自己上网想办法吧!pip超级简单:

>>pip install wfdb

安装WFDB会涉及到很多其他的Python包,不过不用担心,pip方法一并自动安装了。安装过程和结果如下截图:

PhysioNet生理信号处理(四)--WFDB for Python_第1张图片
WFDB for Python的安装过程

第一条红线是安装输入的命令,注意我前面的py - 3 -m对于很多小伙伴来说应该是多余的,因为我安装了两个版本的python,所以必须在前面指定要安装WFDB的python版本。第二红线清楚表明了在安装WFDB的时候,哪些相关的的包也被安装了。

二、尝鲜

像Matlab版本一样,WFDB的功能包括从生理库中读取生理信号,注释以及处理等,下面就介绍几个简单但使用的函数。具体的介绍可以查看官方说明网站:

https://wfdb.readthedocs.io/en/latest/

1.获取PhysioNet所有库名称列表:

dbs = wfdb.get_dbs()

print(dbs)

PhysioNet生理信号处理(四)--WFDB for Python_第2张图片
PhysioNet所有可用库的列表

这个列表其实在网站https://physionet.org/physiobank/database/中也可以查看查看

2.获取某个数据库的所有信号记录列表

从第一个数据库列表中我们知道了有个叫做mitdb的库,也是我们常用的ECG信号库,所以这里我想获取他所有信号记录的列表:

recs_list = wfdb.get_record_list('mitdb')

print(recs_list)


PhysioNet生理信号处理(四)--WFDB for Python_第3张图片
mitdb数据库的ECG记录列表

3.下载我们需要的ECG记录

以上两个函数提供了数据库和记录的信息,但是只是查看,我们要处理的前提还得先获取某个(某些)记录。

函数dl_datanase可以下载我们想要的信号记录。比如刚刚提到的mitdb库,我们要下载其中的某些信号怎么办?

db_dir = 'mitdb'     #指定数据库,这里是‘mitdb’

dl_dir = 'C:\\Users\zhang\Desktop\Programm_learn\Python\WFDB'  #指定数据下载到本地的路径,注意C:\\是霜斜线

records = ['100','101','102']  #想要的记录名称,从上面的列表可以看出,如果全部使用'all',或者省略这个参数,这里我下三个

wfdb.dl_database(db_dir,dl_dir,records) #下载函数及其参数

注:程序运行没问题,可是下载一直没有成功,python一直处于下载状态。目前还没有找到原因,等解决这个问题再写下一篇!

你可能感兴趣的:(PhysioNet生理信号处理(四)--WFDB for Python)