mirror of
https://github.com/This-weiyuqing/ECG_by_Diffenert_CNN_Test.git
synced 2026-10-18 03:13:39 +08:00
44 lines
1.3 KiB
Python
44 lines
1.3 KiB
Python
import wfdb
|
|
import numpy as np
|
|
|
|
|
|
def getDataset(number, X_data):
|
|
# get ECG from mit-bih-arrhythmia-database-1.0.0
|
|
print("get data:" + number + " ECG")
|
|
record = wfdb.rdrecord('./mit-bih-arrhythmia-database-1.0.0/' + number, channel_names=['MLII'])
|
|
data = record.p_signal.flatten()
|
|
|
|
# get R sample and symbol
|
|
annotation = wfdb.rdann('mit-bih-arrhythmia-database-1.0.0/' + number, 'atr')
|
|
Rlocatation = annotation.sample
|
|
Rclass = annotation.symbol
|
|
|
|
X_data.append(data)
|
|
wfdb.plot_wfdb(record=record, annotation=annotation, time_units='seconds')
|
|
return
|
|
|
|
|
|
def loadData():
|
|
numberSet = ['100', '101', '103', '105', '106', '107', '108', '109', '111', '112', '113', '114', '115',
|
|
'116', '117', '119', '121', '122', '123', '124', '200', '201', '202', '203', '205', '208',
|
|
'210', '212', '213', '214', '215', '217', '219', '220', '221', '222', '223', '228', '230',
|
|
'231', '232', '233', '234']
|
|
dataSet = []
|
|
for n in numberSet:
|
|
getDataset(n, dataSet)
|
|
|
|
return dataSet
|
|
|
|
|
|
def main():
|
|
dataSet = loadData()
|
|
dataSet = np.array(dataSet)
|
|
print(dataSet)
|
|
print(dataSet.__sizeof__())
|
|
print(dataSet.shape)
|
|
print("get ECG data")
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|