加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

如何读取MOTARA运动平板的RAWECG文件

(2022-06-26 10:32:06)
标签:

motara

rawecg

分类: 心电(ECG)
RAWECG文件是存放12导联心电图的原始数据文件。
数据采样率是500HZ,精度是16bit。
其数据存放的格式如下:
I,II,III,avR,avL,avF,V1,V2,V3,V4,V5,V6,保留1,收缩压,保留2,保留3.
一组共有16个16位的数据。
以下是PYTHON读取文件,解析,显示的代码。

filename = dir_path+'RAWECG.XS2'
stat_info = os.stat(filename)
length = int((stat_info.st_size) / 32
hex_ind=[[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]]
lead_name=["I","II","III","aVR","aVL","aVF","V1","V2","V3","V4","V5","V6","-","SP","-","-"]
f = open(filename, "rb") # 以二进制格式读入
start = 0
end = length
for i in range(14):
hex_ind[i] = []
for pos in range(0, int(length)):
for i in range(16):
b = f.read(2)
value, = struct.unpack('h', b)
hex_ind[i].append(value)
f.close()
for i in range(0,12):  #显示12导联波形
x = (np.arange(0,len(hex_ind[0]))+1)
plt.figure(figsize=(40, 2))
title = lead_name[i] +" ECG "
plt.title(title)
plt.plot(x[start:end],hex_ind[i][start:end])
plt.show()

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有