Lobachevsky University Electrocardiography Database — 200 条 12 导联 ECG 逐导联 P/QRS/T 人工分界验证库

罗巴切夫斯基大学心电图数据库 LUDB:200 条 10 秒 12 导联 ECG、500 Hz、58429 个逐导联人工标注波形(16797 P / 21966 QRS / 19666 T),8 大类多类多标签诊断,ODC-By 1.0 于 PhysioNet 完全开放直链——专为 ECG 波形分界(delineation)算法提供无缺口黄金标准

来源 PhysioNet 托管的 WFDB 格式 ECG:200 条 10 秒 12 导联记录,每条含 .hea 头文件 + .dat 信号文件 + 12 个逐导联标注文件(.i/.ii/.iii/.avr/.avl/.avf/.v1-.v6,标注 P/QRS/T 边界与峰值)+ ludb.csv 聚合患者信息表发布时间: 2026-10-03最后更新: 2026-10-20 阅读 46
Lobachevsky University Electrocardiography Database — 200 条 12 导联 ECG 逐导联 P/QRS/T 人工分界验证库

信息速览

数据集名称Lobachevsky University Electrocardiography Database — 200 条 12 导联 ECG 逐导联 P/QRS/T 人工分界验证库
数据类型人工标注,原始数据,信号数据
规模200 条记录来自 200 名受试者(1 记录/人;年龄 11 岁至 >89 岁,平均 52 岁;85 女 115 男)
接入方式PhysioNet 托管的 WFDB 格式 ECG:200 条 10 秒 12 导联记录,每条含 .hea 头文件 + .dat 信号文件 + 12 个逐导联标注文件(.i/.ii/.iii/.avr/.avl/.avf/.v1-.v6,标注 P/QRS/T 边界与峰值)+ ludb.csv 聚合患者信息表
AI 就绪度

INFOBOX — LUDB 一屏速览

维度 内容
本质 ECG 波形分界(delineation)验证数据库——200 条 10 秒 12 导联 ECG,逐导联人工标注 P/QRS/T
全称 Lobachevsky University Electrocardiography Database(罗巴切夫斯基大学心电图数据库)
团队 下诺夫哥罗德国立罗巴切夫斯基大学 IITMM;数据采自 Nizhny Novgorod City Hospital No 5
论文 IEEE Access 2020;8:186181-186190(doi:10.1109/ACCESS.2020.3029211);arXiv:1809.03393(2018 首发)
托管 PhysioNet,version 1.0.1(Published Jan. 19, 2021;DOI 10.13026/eegm-h675)
规模 200 记录 / 200 受试者;10 秒;12 导联;500 Hz
标注量 58,429 个波形=16,797 P + 21,966 QRS + 19,666 T(全 12 导联独立计)
采集设备 Schiller Cardiovit AT-101 心电图机;2017–2018
人群 年龄 11 岁–>89 岁(平均 52);85 女 / 115 男;含健康志愿者、患者、起搏器携带者
诊断体系 8 大类多类多标签(心律/心电轴/传导异常/期前收缩/肥厚/起搏/缺血/非特异性复极异常)
任务 ECG wave delineation(波形分界)+ 心律失常分类(arrhythmia classification)
许可 ODC-By 1.0,PhysioNet 完全开放直链(无申请、无 gated)
格式 WFDB-compatible(.hea/.dat/.atr)+ ludb.csv
库内互链 QT-Database(rid 122)、MIT-BIH Arrhythmia(rid 69)、MIT-BIH AFDB(rid 115)、MIMIC-IV-ECG(rid 172)

心电图波形分界(ECG delineation)是心电分析最底层的一步:在一条连续信号上,精确找出每一个 P 波、QRS 复合波和 T 波从哪里开始、峰在哪里、到哪里结束。这个"切点"的精度直接决定后续心率、PR 间期、QT 间期、ST 段等一切参数的准确性。LUDB(Lobachevsky University Electrocardiography Database)正是为解决"没有权威黄金标准可供对照"这一瓶颈而生:它把 200 条 12 导联 ECG 的每一个波形边界都交由持证心内科医生逐导联手工标出,并用 Open Data Commons Attribution 协议在 PhysioNet 上完全开放。

导语读法三则:

  1. 只想下数据:直奔 §6 获取与许可——ODC-By 1.0,PhysioNet 直链,无需申请,注意 cite 两个 DOI(数据集 + 论文)。
  2. 关心标注质量:直奔 §3 标注体系与 §4 数据构成——58,429 个逐导联独立标注是它区别于 MIT-BIH(仅标 QRS)与 QTDB(有未标复合波)的核心卖点。
  3. 做分界/分类算法:直奔 §5 任务与基准——分界 F1 达 97.8%–99.9% 的公开纪录,以及社区如何在小样本上做交叉验证。

§0 导读:这个数据集解决什么问题

在心电图自动分析领域,验证一套算法"标得准不准"比开发算法本身更棘手。难点在于没有权威答案可供对照:算法说 P 波在第 120 ms 开始,可"正确"的答案是什么?如果这个基准本身是机器生成的、或由不具资质的人标注的、或只覆盖部分波形,那么算法做得再好也无从度量。LUDB 论文开篇即指出这一痛点:可用的公开集合中,MIT-BIH Arrhythmia Database 与 European ST-T Database 只标了 QRS 复合波,而 QT Database 虽含 P、QRS、T 三类标注,却存在若干未标注的复合波。换句话说,没有一个现成数据库能提供"全波形、无缺口、逐导联、专家级"的完整黄金标准。

LUDB 的回答分三层。第一层是覆盖完整性:200 条记录、全部 12 导联、每一个 P/QRS/T 波形的起点与峰值与终点全部标出,全库 58,429 个标注波形,不留缺口。第二层是标注权威性:由持证心内科医生(certified cardiologists)对每条信号逐导联目视检查、独立标注,而非依赖自动检测结果二次修正。第三层是任务对齐性:数据采集与标注专门为"波形分界"这一任务设计,同时附 8 大类多类多标签诊断,让分界与分类两个任务能在同一批数据上耦合验证。

LUDB 的定位因此非常清晰:它不是一个用于训练大规模心律失常分类器的大数据集(那更适合 MIMIC-IV-ECG 或 CinC 挑战赛数据),而是一个小规模、高精度、专供验证的黄金标准库——学术界常用它作为"测试集"来考核一个分界算法是否达标,正如论文标题所言是"validation tool"(验证工具)。

§0 读法三则:

  1. 这个条目是"数据 + 方法论文 + 验证基准"三合一:本体是 200 条精标记录,论文是算法案例研究,实际角色是社区通用的分界测试集——三者共用同一份数据。
  2. 全部硬数字(200 记录、58429 波形、500 Hz)均经 PhysioNet 摘要、README、arXiv 摘要三源互证;节律/疾病分布存在 README 官方表与 ECGBench 重算表两口径,已在坑 5 存照。
  3. 检索时注意缩写是 LUDB 而非 LUBD;同时"ECG delineation database"是一个任务类别词(PhysioNet 上有 topic=delineation 标签页),不要把类别当成 LUDB 的别名。

§1 数据集速览:十问十答

Q1:LUDB 的"200 条"是什么规模?
200 条记录对应 200 名受试者,1 记录/人。每条是 10 秒的 12 导联 ECG。与万级记录的 MIMIC-IV-ECG(rid 172)相比,这是一个小而精的库:它的价值不在样本量,而在每一条记录都带完整、无缺口、专家级的人工波形分界标注。

Q2:它在 PhysioNet 上怎么放?
PhysioNet 托管,版本 1.0.1,Published Jan. 19, 2021,DOI 10.13026/eegm-h675,RRID:SCR_007345。属于 PhysioNet 的 Open Access 资源,无需注册、无需申请。

Q3:信号规格是什么?
10 秒时长,标准 12 导联(i, ii, iii, avr, avl, avf, v1–v6),采样率 500 samples/second,由 Schiller Cardiovit AT-101 心电图机采集,数据采集于 2017–2018 年。

Q4:标注了什么?
对每一条记录的每一个导联,独立标注 P 波、T 波的边界与峰值,以及 QRS 复合波的边界。全库合计 58,429 个标注波形:16,797 个 P 波、21,966 个 QRS 复合波、19,666 个 T 波(若把 12 导联分别独立计)。标注符号约定为 ( 起点、) 终点、p/N/t 分别为 P/QRS/T 峰值。

Q5:谁标注的,可靠吗?
由持证心内科医生(certified cardiologists)通过目视检查逐导联完成,独立于各导联。记录由专业医务人员(功能诊断护士)采集。所有志愿者在采集前提供知情同意;研究经罗巴切夫斯基大学 IRB 批准(#23,2017 年 10 月 19 日)。

Q6:除了波形边界,还有什么标签?
每条记录附诊断分类,共 8 大类多类多标签:心律(Heart rhythms)、心电轴(Electric axis of the heart)、传导异常(Conduction abnormalities)、期前收缩(Extrasystoles)、肥厚(Hypertrophies)、心脏起搏(Cardiac pacing)、缺血(Ischemia)、非特异性复极异常(Non-specific repolarization abnormalities),另加"其他状态"(早期复极综合征 9 例)。同一患者可有多类多诊断。

Q7:人群构成如何?
年龄从 11 岁到 >89 岁(官方 README 记 11–90 岁),平均 52 岁;性别 85 女 / 115 男。人群包含健康志愿者、各类心血管疾病患者,部分患者携带起搏器(心电轴表中 10 例标记为起搏器所致"None")。

Q8:许可和获取方式?
ODC-By 1.0(Open Data Commons Attribution License),完全开放直链。使用时须同时引用数据集 DOI(10.13026/eegm-h675)、原论文(IEEE Access 2020)以及 PhysioNet 平台的标准引用。

Q9:用什么格式、怎么读?
存储为 WFDB-compatible 格式,支持 WFDB Python Toolbox(pip install wfdb)或 WFDB Software Package 读取。每条记录含 .hea(头文件)、.dat(信号)、12 个逐导联标注文件;1.0.1 版新增 ludb.csv 聚合表。

Q10:它和 QT Database 有什么区别?
两者都提供 P/QRS/T 三类标注,但 QTDB 有若干未标注复合波,而 LUDB 覆盖每条记录的全部波形、且逐导联独立标注。LUDB 论文的出发点就是弥补 QTDB 等前代库"标注不彻底"的缺陷。QT-Database 在本库内为 rid 122,可对照阅读。

§2 数据构成与规格

2.1 规模、来源与机构构成

LUDB 的全部数据来自一次单中心采集:2017–2018 年间,在俄罗斯下诺夫哥罗德第 5 市立临床医院(Nizhny Novgorod City Hospital No 5)采集 200 条 10 秒 12 导联 ECG,采集对象为健康志愿者与各类心血管疾病患者。数据采集属于罗巴切夫斯基大学 Cyberheart 项目,受俄罗斯联邦教育部资助(合同号 No. 02.G25.31.0157 of 01.12.2015)。

承载机构是下诺夫哥罗德国立罗巴切夫斯基大学信息技术、数学与力学研究所(Institute of Information Technology, Mathematics and Mechanics, Nizhny Novgorod Lobachevsky State University)。手工标注与诊断由下诺夫哥罗德的医学机构医生完成。这种"大学研究机构 + 市立临床医院"的双主体结构,是俄罗斯学术数据集常见的采集模式,也决定了 LUDB 的单一中心特征(§10 坑 4)。

规模一句话概括:200 条记录 = 200 名受试者 = 200 条 10 秒 12 导联信号 = 58,429 个逐导联人工标注波形。

2.2 信号规格与文件结构

规格项 数值
记录数 200
每条时长 10 秒
导联数 12(i, ii, iii, avr, avl, avf, v1, v2, v3, v4, v5, v6)
采样率 500 samples/second
采集设备 Schiller Cardiovit AT-101 心电图机
存储格式 WFDB-compatible
采集年份 2017–2018

每条记录的文件构成(按 README 官方说明):

  • .hea —— 头文件,描述信号文件内容、格式及受试者信息(年龄、性别、诊断)
  • .dat —— 二进制信号文件
  • 12 个逐导联标注文件:.i、.ii、.iii、.avr、.avl、.avf、.v1、.v2、.v3、.v4、.v5、.v6——分别是各导联上人工确定的边界与峰值

此外,1.0.1 版新增 ludb.csv:聚合患者信息的结构化表(性别、年龄、节律类型、心电轴方向、起搏器有无等)。ECGBench 的使用说明特别指出:每条记录的 .hea 注释里携带的是扁平化的自由文本诊断,会丢失类别分组结构;要做结构化分析应读 ludb.csv。这是使用 LUDB 时一个容易踩的细节(§10 坑 6)。

ludb.csv 还有两个数据工程上的"怪癖",社区已有明确处理规范:

  1. 每个字符串单元格带尾部换行,且多值单元格用换行符而非逗号分隔多个值。若按普通 CSV 读入而不做拆分,Ischemia 类别看起来会像是"40 个类、每类至多 4 条记录",而按原子标签拆分后实为"22 个共现的发现"(finding)。
  2. 有一个年龄不是数字:记录 34 的年龄原始值记为 “>89”。ECGBench 的加载器在给出数值型 age 的同时,额外暴露 age_raw 字段原样保留 “>89”,数值型处则为 NaN。

2.3 标注量:58,429 个波形从哪来

全库标注波形总数为 58,429,拆解如下:

波形类型 数量
P 波 16,797
QRS 复合波 21,966
T 波 19,666
合计 58,429

这个数字是"consider all leads independently"(全 12 导联独立计)的口径——也就是说,同一次心跳的 P 波会在 12 个导联上各标一次,因此 58,429 是"导联 × 波形"的乘积量级,而非唯一波形事件数。这一点在引用时常被误读,检索者须注意(§10 坑 3)。

从每个导联的标注密度看:200 条 × 12 导联 = 2,400 个导联信号,每个导联信号平均标注 58,429 ÷ 2,400 ≈ 24.3 个波形。这符合 10 秒心电信号在正常心率下含约 10–15 个心动周期、每个周期含 1 个 P + 1 个 QRS + 1 个 T 的预期量级(约 30–45 个波形;实际受心率与信号质量影响)。

2.4 诊断分类体系与分布

LUDB 的诊断标签是多类多标签结构,共 8 大类。README 给出的分布表如下(注意:类别间有重叠,同一患者可归入多个类别)。

心律(Rhythms),总 200 条:

节律 记录数
Sinus rhythm 窦性心律 143
Sinus bradycardia 窦性心动过缓 25
Atrial fibrillation 房颤 15
Sinus arrhythmia 窦性心律不齐 8
Sinus tachycardia 窦性心动过速 4
Atrial flutter, typical 典型房扑 3
Irregular sinus rhythm 不规则窦性心律 2

心电轴(Electric axis of the heart),总 200 条:

心电轴 记录数
Normal 正常 75
Left axis deviation 电轴左偏 66
Vertical 垂直位 26
Horizontal 水平位 20
Right axis deviation 电轴右偏 3
None (pacemaker) 无(起搏器) 10

传导异常(Conduction abnormalities): Sinoatrial blockade, undetermined 1;I degree AV block 10;III degree AV block 5;Incomplete right bundle branch block 29;Incomplete left bundle branch block 6;Left anterior hemiblock 16;Complete right bundle branch block 4;Complete left bundle branch block 4;Non-specific intraventricular conduction delay 4。

期前收缩(Extrasystoles): 房性期前收缩(未定 2 / 低位房性 1 / 左房性 2 / SA 结性 3 / 单发 PAC 4 / 二联律 1 / 四联律 1 / 全律模式 1);室性期前收缩(多形性 2 / RVOT 前壁 3 / RVOT 前间隔 1 / IVS 中段 1 / LVOT-LVS 2 / LV 未定 1 / 单发 PVC 6 / 间位性 PVC 2 / 成对 2)。

肥厚(Hypertrophies): 右房肥厚 1;左房肥厚 102;右房负荷 17;左房负荷 11;左室肥厚 108;右室肥厚 3;左室负荷 11。

缺血(Ischemia): STEMI(前壁 8 / 侧壁 7 / 间隔 8 / 下壁 1 / 心尖 5);Ischemia(前壁 5 / 侧壁 8 / 间隔 4 / 下壁 10 / 后壁 2 / 心尖 6);Scar formation 瘢痕形成(侧壁 3 / 间隔 9 / 下壁 3 / 后壁 6 / 心尖 5);Undefined ischemia/scar/supp.NSTEMI(前壁 12 / 侧壁 16 / 间隔 5 / 下壁 3 / 后壁 4 / 心尖 11)。

非特异性复极异常(Non-specific repolarization abnormalities): 前壁 18;侧壁 13;间隔 15;下壁 19;后壁 9;心尖 11。

心脏起搏(Cardiac pacing): UNIpolar atrial pacing 1;UNIpolar ventricular pacing 6;BIpolar ventricular pacing 2;Biventricular pacing 1;P-synchrony 2。

其他状态(Other states): 早期复极综合征 9。

这张分类表对建模者有个直接启示:只有心律(Rhythms)这一类别覆盖全部 200 条记录,往下越走越稀疏——"其他状态"仅 9 条记录 1 个标签,"期前收缩"是 16 个标签分布在 14 条记录上(标签数比记录数还多)。这意味着在 LUDB 上训练分类器,除心律外的大多数类别样本量都极小(§10 坑 2)。

2.5 与 QT Database 的关系边界

LUDB 论文明确把自己定位为 QT Database(QTDB,本库 rid 122)的改进替代:QTDB 含 P、QRS、T 三类标注,但存在若干未标注的复合波;LUDB 则覆盖全部波形。两者不能混用为同一数据集,但在研究中常被放在一起对比(例如 PMC PMID 39736595 就把 LUDB 与 QTDB 联合用于心律失常分类实验)。若要做跨库对照,须注意两者采样率不同:LUDB 为 500 Hz,QTDB 为 250 Hz。

§3 标注体系:逐导联人工分界如何做到无缺口

3.1 标注人员与独立性设计

LUDB 标注的权威性来自两点:人员资质与标注独立性。

  • 人员资质:标注由持证心内科医生(certified cardiologists)完成。信号采集由专业医务人员(功能诊断护士,functional diagnostics nurses)执行。
  • 标注独立性:医生对每一条信号、每一个导联分别目视检查(eye inspection of each ECG signal and independently for each of 12 leads)。这意味着同一心跳在 i 导联的 P 波边界,与在 v1 导联的 P 波边界,是两次独立的判断——而不是把一次判断复制到所有导联。

这种设计的好处是忠实反映了临床读图的真实过程(不同导联波形形态本就不同),代价是标注工作量成倍增长——2,400 个导联信号 × 平均 ~24 个波形 = 58,429 次边界判断。

3.2 标注对象与符号约定

每个导联上标注的对象是 P 波、QRS 复合波、T 波三类,每类标注其边界(boundary)与峰值(peak):

标记 含义
( 波形起点(onset)
) 波形终点(offset)
p P 波峰值
N QRS 复合波峰值
t T 波峰值

(符号约定据 ECGBench / torch-ecg 对 LUDB 标注格式的说明;示例如 wfdb.rdann(f"{data_path}/data/1", "ii") 读第 1 条记录的 ii 导联标注。)

与仅标 QRS 的 MIT-BIH Arrhythmia(rid 69)、European ST-T 相比,LUDB 对 P 波与 T 波的完整边界标注,使它能直接支撑 PR 间期、QT 间期、P 波时限、T 波峰-末间期等参数的算法验证——这正是它作为"分界验证工具"的核心价值。

3.3 起点、峰值、终点三段标注的意义

为什么"边界"比"峰值"更难也更有价值?因为峰值检测(尤其 R 峰)是相对成熟的技术,而波形的起点与终点(onset/offset)才是临床参数计算的争议所在:P 波起点决定 PR 间期起点,QRS 终点(J 点)决定 ST 段测量,T 波终点决定 QT 间期终点。这三个"切点"在噪声、基线漂移、波形融合(如 P 波与 T 波重叠)时极难自动判准,是分界算法的"深水区"。LUDB 逐导联标出三段(onset/peak/offset),恰好把算法的考核点放在了最难、最有临床意义的地方。

PhysioNet 的 Usage Notes 引用文献 [7] 的深度学习分界算法结果:P 波起止 F1 ≥ 97.8%、T 波 ≥ 99.5%、QRS 复合波 ≥ 99.9%——这组数字既展示了当代算法的水平,也侧面说明 P 波边界(97.8%)是三类中最难的。

3.4 诊断标签的标注来源与多标签结构

诊断标签与波形边界是两套标注:波形边界是"几何标注",诊断是"语义标注"。README 中诊断分类表的作者说明:“Manual annotation of ECG signal complexes and diagnostics were performed by doctors of medical organizations in Nizhny Novgorod.”(信号复合波标注与诊断均由下诺夫哥罗德医学机构的医生完成。)

多类多标签结构的临床合理性在于:一个患者可能同时具有"窦性心律 + 左室肥厚 + I 度房室传导阻滞 + 前壁缺血"等多个发现,这些分属不同类别、彼此不互斥。MDPI Algorithms 2025 的论文特别指出,LUDB 因其多类多标签结构而"ideal for training a multi-class multi-label model"(非常适合训练多类多标签模型)——这是 LUDB 区别于单标签分类库的又一定位特征。

§4 任务定义:分界与分类双任务

4.1 主任务:ECG 波形分界(wave delineation)

这是 LUDB 的设计初心。任务定义为:给定一段 ECG 信号(或某一导联信号),自动检测并定位 P 波、QRS 复合波、T 波的起点、峰值、终点。评价指标通常用逐点匹配的 F1-measure(预测的边界点与真值点在容差窗内匹配),或分离的 onset/offset 检测 F1。

torch-ecg 的 LUDB 接口把两个任务并列列出:ECG wave delineation(波形分界)与 ECG arrhythmia classification(心律失常分类)。2020 年论文的案例研究则是用基于小波(wavelet-based)的算法与广泛使用的 ecg-kit 工具做对比,并论证多导联分析相对单导联的优势。

4.2 副任务:心律失常分类(arrhythmia classification)

借助 8 大类诊断标签,LUDB 也可用于分类任务。PMC PMID 39736595 的研究是典型用法:它从 LUDB 中取出 132 条正常窦性心律(NSR)+ 15 条房颤(AF)+ 24 条窦性心动过缓(SBR),仅在 lead II 上做特征工程(时域/频域/时频域浅特征 + 自编码器与卷积层深特征)与特征优化(基于元启发式优化的 TLO),再用 SVM 分类,并与 QTDB 的 13 条室上性心律失常记录合并评估。

这个案例揭示了 LUDB 用于分类时的两个现实约束:

  1. 类别极不平衡:NSR 132 条 vs AF 15/16 条 vs SBR 24 条,主类占压倒多数,直接训练易偏向多数类。
  2. 样本量小:仅用 lead II 的数百条 10 秒片段(每条 5,000 点 @500 Hz)做分类,结果对划分方式高度敏感——这正是社区选择交叉验证而非固定划分的原因。

4.3 为什么两个任务能耦合

分界与分类在 LUDB 上耦合,是因为波形边界是分类特征的上游:心率(依赖 R 峰)、PR 间期(依赖 P 起点与 QRS 起点)、QT 间期(依赖 QRS 起点与 T 终点)等分类常用特征,全部由分界结果计算。LUDB 同时提供精确边界与临床诊断,使研究者能直接评估"分界误差如何传导到分类性能"——例如验证当 P 波起点检测偏 10 ms 时,PR 间期分类判据是否失效。这是仅提供单任务标注的库无法做到的。

4.4 任务相关的规格换算

做算法设计时的几个关键换算:每条记录 10 秒 @500 Hz = 5,000 个采样点;每条记录 12 导联,若整条输入则形状为 (12, 5000)(torch-ecg / ECGBench 的默认加载形状,单位毫伏);每条记录约含 10–15 个心动周期,对应约 10–15 组 P-QRS-T。ECGBench 的验证摘要显示:以 500 Hz 版本核算,clean 记录 200 条,100% 通过质量检查,排除 0 条——即 LUDB 全部 200 条记录都通过了该平台的信号质量校验。

4.5 分界算法的评测口径详解

分界任务的评测远非"数对几个点"这么简单,实际研究中涉及多个口径选择,检索者必须明确所用口径:

口径 说明 影响
合并 vs 分离 onset/offset/peak 合并算一个 F1,还是分开算三个 合并口径普遍偏高
容差窗 预测点与真值点在多大时间窗内算匹配(常用 50–150 ms) 窗越宽容错越高,跨研究不可比
逐导联 vs 汇总 每个导联独立算再平均,还是全导联汇总 导联间质量差异会摊平
微平均 vs 宏平均 按波形事件加权,还是按类平均 类别不平衡时差异大
空导联处理 某些导联可能无该类波形,如何计分 处理不当会虚高

PhysioNet Usage Notes 给出文献 [7] 的参考值(P 波起止 ≥97.8%、T 波 ≥99.5%、QRS ≥99.9%)是"起止合并"口径。检索者若要复现对标,必须确认自己的评测口径与之一致,否则数字不可直接比较(§10 坑 7)。

4.6 为什么 QRS 分界比 P/T 容易

从文献 [7] 的 F1 梯度(QRS 99.9% > T 99.5% > P 97.8%)可以读出一个算法规律:波形越"尖锐"、越"高幅",分界越准。QRS 复合波幅值大、斜率陡,起点终点在信号上一目了然;T 波幅值中等、变化平缓,终点常与基线难以区分;P 波幅值最小、最易被噪声淹没,起点尤其难判。这解释了为何 P 波分界始终是分界算法的"最后一公里"。

4.7 从分界到临床参数的误差传导

分界误差如何影响临床解读,是本章最实用的部分:

临床参数 计算依赖 分界误差影响
心率 R 峰间期 R 峰检测最稳,影响最小
PR 间期 P onset → QRS onset P onset 误差直接传导
QRS 时限 QRS onset → QRS offset 两端误差叠加
QT 间期 QRS onset → T offset T offset 最难判,误差最大
ST 段 J 点(QRS offset)→ T onset 依赖两个易错切点

LUDB 逐导联标出全部三类波形的 onset/offset,使研究者能直接量化"分界误差 → 参数误差"的传导链,这是仅标 QRS 的库(如 MIT-BIH)无法支持的分析。

§5 论文与来源:三源互证

5.1 论文双版本

LUDB 有两个互为补充的文献载体,检索者必须分清:

载体 标题 时间 标识
arXiv 预印本 LUDB: a new open-access validation tool for electrocardiogram delineation algorithms v1 2018-08-30 / v4 2020-09-16 arXiv:1809.03393
期刊正式版 LUDB: A New Open-Access Validation Tool for Electrocardiogram Delineation Algorithms 2020 IEEE Access 8:186181-186190; doi:10.1109/ACCESS.2020.3029211

arXiv 版本共 11 页、10 图、6 表,分类 q-bio.QM(定量方法),交叉 eess.SP(信号处理)与 physics.med-ph(医学物理)。v1 于 2018 年 8 月 30 日提交(当时数据集尚在整理),v4 于 2020 年 9 月 16 日修订终稿,与 IEEE Access 发表时间吻合。引用应以 IEEE Access 2020 正式版为准,arXiv 首发 2018 作为时间线存照。

5.2 作者名单双口径存照

版本 作者
数据集(PhysioNet) Kalyakulina, Yusipov, Moskalenko, Nikolskiy, Kosonogov, Zolotykh, Ivanchenko(7 人)
IEEE 论文 Kalyakulina, Yusipov, Moskalenko, Nikolskiy, Kosonogov, Osipov, Zolotykh, Ivanchenko(8 人)

差异在于 IEEE 论文多出 Grigory V. Osipov。引用数据集用 7 人作者列表,引用论文用 8 人列表。这是同一团队、不同产出物的署名差异,非错误。

5.3 数据集 DOI 与平台信息

  • 数据集 DOI:10.13026/eegm-h675(PhysioNet,version 1.0.1)
  • PhysioNet RRID:SCR_007345
  • 论文 DOI:10.1109/ACCESS.2020.3029211
  • 相关早期工作(同团队):Kalyakulina et al., “Finding morphology points of electrocardiographic-signal waves using wavelet analysis,” Radiophysics and Quantum Electronics, 61(8-9), 689-703, 2019。

5.4 引用规范

PhysioNet 页面明确要求,使用 LUDB 时须引用三样:

  1. 数据集本身:Kalyakulina, A., Yusipov, I., Moskalenko, V., Nikolskiy, A., Kosonogov, K., Zolotykh, N., & Ivanchenko, M. (2021). Lobachevsky University Electrocardiography Database (version 1.0.1). PhysioNet. RRID:SCR_007345. https://doi.org/10.13026/eegm-h675
  2. 原论文:Kalyakulina et al., IEEE Access, vol. 8, pp. 186181-186190, 2020, doi: 10.1109/ACCESS.2020.3029211
  3. PhysioNet 平台标准引用(当前页面给出版本:Pollard, T., et al. (2026). PhysioNet as a global platform for biomedical research. Nature Health.)

5.5 三源互证结论

对最核心的三个硬数字做三源交叉核验:

硬数字 PhysioNet 摘要 PhysioNet README arXiv 摘要 结论
记录数 200 ✓ ✓(200 records from 200 subjects) ✓(200 recordings) 三源一致
标注波总数 58429 — ✓(21966 QRS / 19666 T / 16797 P) — README 单一权威(细分一致)
采样率 500 — ✓(500 samples per second) — README + MDPI 二次证实
12 导联 10 秒 ✓ ✓ ✓ 三源一致

P/QRS/T 三个分量的和:16,797 + 21,966 + 19,666 = 58,429,与总量自洽,无内在矛盾。

§6 获取与许可:完全开放直链

6.1 许可条款

LUDB 采用 ODC-By 1.0(Open Data Commons Attribution License,开放数据署名许可)。这是一份宽松的数据许可:允许自由使用、分发、修改、商用,唯一硬性要求是署名(attribution)——即按 §5.4 规范引用数据集与论文。它属于 PhysioNet 的 “Open Access”(开放获取)类别,无需申请、无需注册、无 gated 限制。

许可要点速查:

维度 条款
使用 自由(含商用)
分发 允许
修改/衍生 允许
署名 强制(cite 数据集 DOI + 论文)
获取门槛 无(PhysioNet Open Access 直链)

6.2 获取方式

  • 入口:PhysioNet 数据集页 https://physionet.org/content/ludb/1.0.1/
  • 数据目录:.../content/ludb/1.0.1/data/
  • 推荐方式:用 WFDB Python Toolbox 直接拉取(import wfdb; wfdb.dl_database('ludb', dl_dir) 或按记录读取 wfdb.rdrecord / wfdb.rdann),也可下载 WFDB Software Package 离线读取。
  • 读取示例:读第 1 条记录的 ii 导联标注 wfdb.rdann(f"{data_path}/data/1", "ii"),返回符号序列((=起点、)=终点、p/N/t=P/QRS/T 峰值)。

6.3 版本链

版本 变化
1.0.0 数据集首发
1.0.1 修正波形缩放信息;header 文件增加节律信息;新增 ludb.csv 聚合患者信息表

torch-ecg 的文档特别标注了 1.0.0 的一个已知问题:ADC gain 可能错误(“ADC gain might be wrong, either units should be μV, or adc_gain should be 1000 times larger”),该问题在 1.0.1 中修复。因此应优先使用 1.0.1 版本,避免幅值单位错误。

6.4 AI-Ready 评估

从"AI-Ready"(人工智能就绪)视角看,LUDB 的可获取性属于最优一档:许可宽松(ODC-By 1.0)、获取零门槛(PhysioNet 直链)、格式标准化(WFDB,工具链成熟)、标注结构化(逐导联文件 + CSV 聚合表)。它的主要"门槛"不在获取而在使用规范:必须正确理解 58,429 是导联级计数、必须正确解析 ludb.csv 的换行分隔多值、必须注意年龄字段的非数值特例——这些是数据消费层面的坑,而非获取层面的墙。

6.5 使用前置检查清单

下载后建议做以下检查再投入算法开发:

  1. 确认版本为 1.0.1(避免 1.0.0 的 ADC gain 问题);
  2. 用 WFDB 读一条记录,核对信号形状为 (12, 5000)、单位与幅值合理;
  3. 读一条记录的某个导联标注,核对符号集含 (/)/p/N/t;
  4. 用 pandas 读 ludb.csv 时显式处理尾部换行与换行分隔的多值单元格;
  5. 对年龄字段单独处理记录 34 的 “>89” 特例。

§7 生态与影响

7.1 PhysioNet 生态中的位置

LUDB 是 PhysioNet 上"ECG delineation"主题(topic=delineation)的代表性资源之一。PhysioNet(RRID:SCR_007345)是全球生物医学信号研究的公共平台,LUDB 作为其 Open Access 成员,天然接入 WFDB 工具链与 CinC 挑战赛社区。与它同平台、同为 ECG 资源的库包括:apnea-ecg(rid 658)、mimic-iv-ecg(rid 172)、以及大量 CinC 挑战赛数据(cinc-2011 至 cinc-2023,rid 689/660/662/666/487/382/162/493/656/692/644/499 等)。

7.2 与前代分界数据库的谱系

LUDB 的方法论文献里明确列出了它要超越的三个前代集合:

数据库 标注覆盖 本库 rid
MIT-BIH Arrhythmia Database 仅 QRS rid 69
European ST-T Database 仅 QRS 库内未见独立条目
QT Database P/QRS/T,但有未标复合波 rid 122

LUDB 的差异化定位:全波形 + 逐导联 + 无缺口。这使它在文献中常被当作分界算法的"黄金标准测试集"。

7.3 社区使用证据

三源证实 LUDB 被广泛用于算法研究:

  • torch-ecg(DeepPSP 项目)内置 torch_ecg.databases.LUDB 加载器,标注其支持 ECG wave delineation 与 ECG arrhythmia classification 两个任务。
  • ECGBench(HuggingFace Space vlbthambawita/ECGBench)的 dataset 目录收录 LUDB,提供 10-fold 分层切分工具与统一加载接口 ECGDataset("ludb", ...)。
  • MDPI Algorithms 2025;18(11):689(论文 “ECG Signal Analysis and Abnormality Detection Application”)用 LUDB 作 ECG 信号分析与异常检测的数据源,并按年龄/性别分组讨论正常范围。
  • PMC PMID 39736595 用 LUDB(NSR 132 / AF 16 / SBR 24,lead II)+ QTDB 做心律失常分类与特征优化。

7.4 对下游任务的影响

LUDB 最深的影响在于它定义了一个可复现的分界评测口径。在它出现前,"分界精度"在不同论文里用不同数据、不同指标、不同判断容差,结果不可比;LUDB 提供了公共数据 + 公共标注 + 公共符号约定,使 F1 这类指标第一次有了可横向比较的基准。这与下诺夫哥罗德团队自身的小波分界算法、以及后续深度学习分界算法(文献 [7] 报告 P/T/QRS F1 分别 ≥97.8%/99.5%/99.9%)共同构成了 ECG 分界从传统信号处理到深度学习的完整演进脉络。

7.5 与库内其他信号库的对照定位

库 定位 规模 与 LUDB 关系
QT-Database(rid 122) 前代分界库 105 条 15 分钟双导联 LUDB 的直接改进对象(补全未标复合波)
MIT-BIH Arrhythmia(rid 69) 心律失常分类经典库 48 条半小时间记录 仅标 QRS,分界任务不可用
MIT-BIH AFDB(rid 115) 房颤专用 25 条长程 与 LUDB 15 例房颤相关
MIMIC-IV-ECG(rid 172) 大规模分类库 80 万+ 条 大而标签粗,与 LUDB 小精标互补
apnea-ecg(rid 658) 呼吸暂停-心电 70 条 同为 PhysioNet 生理信号库

这张对照表的核心结论:LUDB 在"分界"维度无可替代,在"分类"维度不可单用——分类研究通常把它当精标测试集,而非训练语料。

7.6 学术影响力的量化迹象

LUDB 的影响力可从几个客观迹象读出:

  1. 被主流工具链内置:torch-ecg(深度学习 ECG 库)与 ECGBench(数据集基准平台)都内置了 LUDB 加载器,这是"事实标准"的一个信号——工具作者愿意为其适配,说明用户需求足够大。
  2. 被独立论文反复引用为数据源:MDPI Algorithms 2025、PMC PMID 39736595 等独立研究把 LUDB 作为实验数据源,而非仅在文献综述里提一句。
  3. 被用作深度模型训练集:PhysioNet 明确记载"最精确的分界算法之一用 LUDB 作训练集",说明其标注质量足以支撑训练(尽管样本量小)。
  4. 成为前代库的替代标准:论文把 LUDB 定位为 QTDB 的改进者,此后综述中讨论"ECG 分界数据库"时 LUDB 成为必列项。

7.7 PhysioNet 平台的"开放获取"治理模式

LUDB 所在的 PhysioNet 采用分层访问治理:一部分资源(如 LUDB)为 Open Access,任何人可直链下载;另一部分为 Restricted Access(需签署数据使用协议、完成 CITI 培训)。LUDB 属于前者,这决定了它的使用体验是"零摩擦"的——无需注册、无需伦理培训证明、无需申请审批,直接 wfdb.dl_database('ludb', ...) 即可。

这一治理模式对 AI-Ready 数据集的意义在于:获取门槛的降低直接放大了数据的使用基数。一个需要层层审批的数据集,即便质量再高,也难以成为社区通用基准;而一个开放直链的数据集,可以在一夜之间被成百上千的实验室采用。LUDB 的广泛使用,很大程度上是"ODC-By + Open Access"这套组合的胜利。

7.8 与"大模型时代"数据策略的对照

在大规模基础模型盛行的今天,一个 200 条记录的小库为何仍不可替代?答案在于数据资产的两种角色:模型需要的是海量训练数据(规模优先),而评测需要的是权威参考(质量优先)。LUDB 扮演的是后者。即便未来出现心电领域的基础模型,它仍需要一个"人类专家逐点标注的黄金标准"来宣称其分界能力——而这样的黄金标准,其生产成本与样本量天然呈反比:标注越精细,能标的数据就越少。

因此 LUDB 的长期价值不在被"取代",而在被"反复引用":只要还有新算法宣称能做 ECG 分界,LUDB 就仍会是那个被拿来考量的标准答案。

§8 方法学启示:三条可迁移的经验

8.1 "全波形、无缺口"比"样本量大"更能定义价值

LUDB 只有 200 条记录,却成为领域通用基准,原因在于它把一件事做到了极致:标注的完整性。反观 MIT-BIH Arrhythmia(48 条,但仅标 QRS)、European ST-T(仅标 QRS),以及 QTDB(有未标复合波),都因标注缺口而在分界任务上"不够用"。这给数据集设计者的启示是:在验证类任务上,"无缺口"的覆盖度比记录条数更重要——一条记录里漏标一个 T 波,整条记录对 T 波分界评测就失效了。LUDB 用 2,400 个导联信号的逐点标注,换来了"可直接用作黄金标准"的资格。

8.2 逐导联独立标注是"昂贵但正确"的选择

LUDB 的医生对每个导联独立标注,而非标一个导联再复制。这使标注量成倍增加,但换来了两点:一是忠实反映各导联波形形态的真实差异(12 导联波形本就不同,复制是错的);二是支持"多导联 vs 单导联"算法对比研究——论文的案例研究正是论证了多导联分析相对单导联的优势。可迁移经验:当任务本身是"逐通道/逐视角"的,标注就应当逐通道独立进行,不要用"一次标注、多路复用"节省成本,否则会污染评测。

8.3 "小规模精标库"与大库的分工范式

LUDB 不追求覆盖万人万病,而是把自己定位在评测环节。这与 MIMIC-IV-ECG(八十万级、标签粗)形成清晰分工:大库用于训练,小精标库用于测试与验证。可迁移经验:一条完整的数据生态链需要"训练语料"与"评测基准"两类资产;把两者混为一谈,要么导致训练不足,要么导致评测失真。LUDB 的 ODC-By 开放许可,正是为了让"评测"这一环人人可用。

8.4 从"验证工具"到"训练集"的角色漂移风险

LUDB 最初是为验证传统分界算法而设计的,但因其标注质量过硬,被深度学习社区"反向"用作了训练集。这种角色漂移带来一个方法学风险:当同一个数据集既当训练集又当测试集,报告的"高精度"可能只是过拟合。可迁移经验:数据集的使用者应明确区分"设计用途"与"实际用途",并在论文中透明披露划分方式。对 LUDB 而言,正确姿势是——若在 LUDB 上训练,就应在独立库上测试;若在 LUDB 上测试,模型就不应在 LUDB 上训练。

8.5 标注规范的"可传递性"设计

LUDB 采用 WFDB 标准格式与符号约定((/)/p/N/t),使任何遵循 WFDB 规范的工具都能无缝读取。这是一个被低估的设计决策:标注规范的可传递性,决定了数据集的工具生态广度。若 LUDB 用了私有格式,即便标注再好,也需要每个使用者自行写解析器;而采用 WFDB 标准后,wfdb 包一行代码即可读取,接入成本几乎为零。可迁移经验:数据集设计应优先采用领域内的通用标准,而非自定义格式。

8.6 文档作为核心竞争力

LUDB 的 README 把类别分布(8 大类逐项列出记录数)、文件结构(.hea/.dat/12 标注文件逐一说明)、引用规范(三个 DOI)、伦理信息(IRB 批号)讲得清清楚楚。这种文档完备度,是 LUDB 这类小库能与大库竞争的重要筹码——使用者拿到数据后能立刻判断"这个库能不能用在我的任务上",而无需先花一天摸清数据。可迁移经验:文档不是数据的附属品,而是数据产品的一部分;一份好文档能显著提升数据集的采用率。

8.7 伦理合规的"前置透明"

LUDB 在 README 中主动披露了 IRB 批号(#23)、批准日期(2017-10-19)、知情同意程序。这种"前置透明"的做法,让使用者在合规审查时有据可依,也建立了数据集的信任基础。可迁移经验:涉及人体数据的数据集,应把伦理信息作为一等文档内容公开,而非藏在申请流程背后。

§9 与库内条目的关系

9.1 家族图谱

LUDB 在本库内属于生理信号 / 心电信号族,与下列条目构成互链网络:

库内条目 rid 关系
QT-Database 122 最直接对照:同为 P/QRS/T 分界库,LUDB 是其改进替代
MIT-BIH Arrhythmia 69 前代分类库,仅标 QRS,分界不可用
MIT-BIH AFDB 115 房颤节律库,与 LUDB 15 例房颤相关
ltafdb 668 长程房颤数据库
apnea-ecg 658 同类 PhysioNet 心电/呼吸信号库
mimic-iv-ecg 172 大规模 ECG 分类库(互补定位)
physionet-cinc-2017 162 PhysioNet/CinC 生态
cinc-2011 / 2012 / 2013 / 2014 / 2015 / 2016 / 2018-sleep / 2019 / 2020 / 2021 / 2023 689/660/662/666/487/382/162/493/656/692/644/499 CinC 挑战赛 ECG 相关族群

9.2 检索路径建议

  • 若检索者是分界算法开发者:LUDB → QT-Database(对照前代)→ 二者联合使用。
  • 若检索者是心律失常分类研究者:LUDB(精标测试)→ MIMIC-IV-ECG(大规模训练)→ MIT-BIH AFDB(房颤专精)。
  • 若检索者关注生理信号平台:LUDB → apnea-ecg → CinC 系列,理解 PhysioNet 生态。

9.3 互链强度分析

互链对象 互链强度 理由
QT-Database(rid 122) 强 同任务(P/QRS/T 分界)、同前代谱系、常联合使用
MIT-BIH Arrhythmia(rid 69) 中 同属 ECG 经典库,论文背景对照
MIMIC-IV-ECG(rid 172) 中 互补定位(大训练库 vs 精标测试库)
MIT-BIH AFDB(rid 115) 弱-中 房颤节律相关性
ltafdb(rid 668) 弱-中 房颤长程库
apnea-ecg(rid 658) 弱 同平台生理信号
CinC 系列 弱 同平台 ECG 生态

9.4 建议的条目定位语

面向库内检索,LUDB 的一句话定位语建议为:“ECG 波形分界(P/QRS/T 边界)的黄金标准验证库——200 条 12 导联、58429 个逐导联人工标注、ODC-By 1.0 完全开放。” 这句话同时给出了任务(分界)、规模(200/58429)、规格(12 导联)与许可(ODC-By),便于检索者快速判断相关性。

§10 避坑清单:六个已踩过的坑

坑 1:把 58,429 当成唯一波形事件数。
58,429 是 “全 12 导联独立计” 的口径(consider all leads independently)。同一次心跳的 P 波会在 12 个导联上各标一次。若误当成唯一事件数,会高估数据量约一个数量级,并可能在跨数据集对比时得出错误结论。正确口径:58,429 = 导联 × 波形 的乘积量级。

坑 2:用 LUDB 训练多类分类器而不处理极端不平衡。
除心律(Rhythms)覆盖全部 200 条外,其余类别极稀疏:"期前收缩"16 个标签分布在 14 条记录上(标签数比记录多),"其他状态"仅 9 条 1 标签。直接训练分类器会严重偏向多数类。LUDB 的定位是验证而非大规模训练,分类任务应搭配大库或做重采样/分层。

坑 3:忽略 ludb.csv 的换行分隔与尾部换行。
ludb.csv 的每个字符串单元格带尾部换行,多值单元格用换行符(而非逗号)分隔。按普通 CSV 读入会把一个多值字段误当多个类别——例如 Ischemia 误看成"40 个类、每类至多 4 条记录",实际是"22 个共现发现"。读数前必须显式拆分多值单元格。

坑 4:忽视单一中心/单一设备的代表性问题。
全部数据来自 Nizhny Novgorod City Hospital No 5、单台 Schiller Cardiovit AT-101 心电图机、2017–2018。设备滤波器特性、人群地域构成都会带入数据集偏置。跨设备/跨人群部署算法时,不能假设 LUDB 上的性能可无损迁移。

坑 5:节律/疾病分布的两口径混用。
PhysioNet README 官方表(Sinus rhythm 143 / Sinus bradycardia 25 / Atrial fibrillation 15)与 ECGBench 从 ludb.csv 原子化重算的表(Sinus rhythm 142 / Sinus bradycardia 24 / Atrial fibrillation 14)存在 ±1 出入。引用时应以 README 官方表为准,并注明两口径差异,切勿混用同一张表里的不同来源数字。

坑 6:读 .hea 注释而非 .csv 取结构化诊断。
每条记录的 .hea 注释携带的是扁平化的自由文本诊断,会丢失类别分组结构(类别边界消失、多值黏连)。要做结构化/多标签分析,必须读 ludb.csv,而非解析 .hea 注释文本。

坑 7:跨研究直接比较分界 F1 而不核对评测口径。
不同论文的"F1"可能采用不同的容差窗(50 ms vs 150 ms)、不同的合并方式(onset/offset/peak 合并 vs 分离)、不同的平均方式(微平均 vs 宏平均)。拿自己算的 F1 去对标论文报告的 F1,若口径不一致,比较无效。复现前必须确认容差窗、合并口径、平均方式三项与目标一致。

坑 8:把 LUDB 当成"正常人群"对照库。
LUDB 的心电轴分布中,"左偏 66 例"几乎与"正常 75 例"持平,这显著偏离正常人群分布——说明该库以心血管病患者为主。若把它当作"健康对照"来训练异常检测模型,会引入错误的先验。

坑 9:忽略房颤/房扑的样本稀缺。
房颤 15 例、房扑 3 例,仅占全库 9%。任何以 LUDB 为唯一数据源的房颤检测研究,其结论都建立在这十几例样本上,统计功效极低,不可外推为"房颤检测性能"。这类研究应搭配房颤专精库(如 MIT-BIH AFDB,rid 115;ltafdb,rid 668)。

坑 10:忽略版本导致的单位错误。
1.0.0 版的 ADC gain 存在已知问题(单位应为 μV 或 adc_gain 应大 1000 倍),若使用 1.0.0,信号幅值可能偏差千倍。一切幅值相关的分析(如振幅测量、归一化)在错误版本上都会失真。务必用 1.0.1。

§11 总结

11.1 三句话总结

  1. LUDB 是 ECG 波形分界的黄金标准:200 条 10 秒 12 导联 ECG,58,429 个逐导联人工标注的 P/QRS/T 边界与峰值,由持证心内科医生完成。
  2. 它完全开放且工具友好:ODC-By 1.0,PhysioNet 直链,WFDB 格式,无需申请;1.0.1 版修复了 1.0.0 的 ADC gain 问题并新增 ludb.csv。
  3. 它的价值在"验证"而非"训练":小规模、高精度、多类多标签诊断,是分界算法评测的通用基准,也是大库训练之上的精标测试环。

11.2 适合谁

  • ECG 分界算法开发者:可将其作为无缺口的黄金标准测试集,验证 P/QRS/T 起点/峰值/终点的检测精度。
  • 生理信号处理研究者:可研究多导联 vs 单导联分析、小波 vs 深度学习分界方法的差异。
  • 心律失常分类团队:可将其作为精标测试集,评估分类器的泛化与鲁棒性(注意不平衡与样本量约束)。
  • 医学教育者:数据库可用于教学,展示真实临床 ECG 的多样形态与专家标注。
  • 可穿戴心电算法评测者:可用其验证在受控条件下的分界基线性能。

11.3 不适合谁

  • 需要海量训练样本的深度学习团队:200 条记录远不足以直接训练大型模型,应搭配 MIMIC-IV-ECG 等大库。
  • 需要覆盖广泛人群/设备的研究者:单一中心单一设备,代表性有限。
  • 需要稀有疾病大样本的临床研究者:多数疾病类别仅数条至十几条记录。

11.4 30 秒决策卡

问题 答案
我要做什么? 验证 ECG 分界(P/QRS/T 边界)算法
LUDB 够用吗? 够——它就是为此设计的黄金标准
怎么拿? PhysioNet 直链,ODC-By 1.0,无需申请
怎么读? WFDB Python Toolbox(import wfdb)
用哪个版本? 1.0.1(修复 1.0.0 的 ADC gain 问题)
要注意什么? 58,429 是导联级计数;ludb.csv 换行分隔;类别极不平衡
训练还是测试? 测试/验证为主,训练需搭配大库

FAQ(高频问答 32 问)

A. 基础认知

Q1:LUDB 全称是什么?
Lobachevsky University Electrocardiography Database(罗巴切夫斯基大学心电图数据库),缩写 LUDB。

Q2:它发布在哪?
PhysioNet(RRID:SCR_007345),version 1.0.1,2021 年 1 月 19 日发布。

Q3:谁做的?
下诺夫哥罗德国立罗巴切夫斯基大学信息技术、数学与力学研究所团队,论文作者含 Kalyakulina、Yusipov、Moskalenko、Nikolskiy、Kosonogov、Zolotykh、Ivanchenko 等。

Q4:什么时候采集的?
2017–2018 年,采集于 Nizhny Novgorod City Hospital No 5。

Q5:LUDB 和 LUBD 是同一个吗?
不是。正确缩写是 LUDB,无 “LUBD” 这一写法。

Q6:它属于哪个任务类别?
PhysioNet 归类为 ECG delineation(波形分界)主题,同时支持心律失常分类。

Q7:数据集有论文吗?
有。IEEE Access 2020;8:186181-186190, doi:10.1109/ACCESS.2020.3029211;arXiv:1809.03393(2018 首发)。

Q8:数据是真实患者还是合成?
真实。来自健康志愿者与患者的实际采集,非合成数据。

B. 数据与获取

Q9:怎么下载?
PhysioNet 数据集页 https://physionet.org/content/ludb/1.0.1/,数据目录 .../data/,Open Access 直链。

Q10:需要申请吗?
不需要。ODC-By 1.0,完全开放,无 gated、无注册。

Q11:什么许可?
ODC-By 1.0(Open Data Commons Attribution License),宽松,须署名。

Q12:商业用途可以吗?
可以。ODC-By 允许商用,唯一硬要求是引用署名。

Q13:数据格式是什么?
WFDB-compatible(.hea 头文件 / .dat 信号 / 12 个逐导联标注文件),另有 ludb.csv。

Q14:怎么读?
用 WFDB Python Toolbox(pip install wfdb)或 WFDB Software Package。

Q15:有多少条记录?
200 条,来自 200 名受试者。

Q16:采样率多少?
500 samples per second。

Q17:每条多长时间?
10 秒。

Q18:几个导联?
12 导联(i, ii, iii, avr, avl, avf, v1–v6)。

Q19:用的什么设备?
Schiller Cardiovit AT-101 心电图机。

Q20:有几个版本?
1.0.0 与 1.0.1;1.0.1 修复 ADC gain 并新增 ludb.csv,优先用 1.0.1。

C. 标注与标签

Q21:标注了多少波形?
58,429 个(16,797 P + 21,966 QRS + 19,666 T,全 12 导联独立计)。

Q22:谁标的?
持证心内科医生(certified cardiologists),逐导联目视独立标注。

Q23:标了什么?
P/T 波的边界与峰值、QRS 复合波的边界。符号:( 起点、) 终点、p/N/t 为 P/QRS/T 峰值。

Q24:有诊断标签吗?
有。8 大类多类多标签:心律、心电轴、传导异常、期前收缩、肥厚、起搏、缺血、非特异性复极异常,另加其他状态。

Q25:年龄范围?
11 岁至 >89 岁(README 记 11–90 岁),平均 52 岁。

Q26:性别比例?
85 女 / 115 男。

Q27:有起搏器患者吗?
有。心电轴表中 10 例标记为起搏器所致"None",起搏类别下另有多种起搏模式。

Q28:标签互斥吗?
不互斥。同一患者可跨类别、甚至同类别多诊断,属多类多标签。

D. 使用与评测

Q29:能用它训练分类器吗?
可以但不理想——仅心律覆盖全部 200 条,其余类别极稀疏。定位是验证/测试集。

Q30:分界算法能达到多高精度?
文献 [7] 的深度学习算法:P 波起止 F1 ≥97.8%、T 波 ≥99.5%、QRS ≥99.9%。

Q31:有官方 train/test 划分吗?
没有。社区自行切分(如 ECGBench 做 10-fold 分层)。

Q32:和 QT Database 什么关系?
LUDB 是 QTDB 的改进替代:QTDB 有未标复合波,LUDB 覆盖全部波形;两者采样率不同(500 vs 250 Hz)。

事实清单(硬事实 36 条)

  1. 全称:Lobachevsky University Electrocardiography Database,缩写 LUDB。
  2. 托管平台:PhysioNet(RRID:SCR_007345)。
  3. 版本:1.0.1(Published Jan. 19, 2021);初版 1.0.0。
  4. 数据集 DOI:10.13026/eegm-h675。
  5. 论文 DOI:10.1109/ACCESS.2020.3029211(IEEE Access, vol. 8, pp. 186181-186190, 2020)。
  6. arXiv:1809.03393(v1 2018-08-30;v4 2020-09-16)。
  7. 记录数:200 条。
  8. 受试者数:200 名(1 记录/人)。
  9. 每条时长:10 秒。
  10. 导联数:12(i, ii, iii, avr, avl, avf, v1, v2, v3, v4, v5, v6)。
  11. 采样率:500 samples/second。
  12. 采集设备:Schiller Cardiovit AT-101。
  13. 采集地点:Nizhny Novgorod City Hospital No 5。
  14. 采集年份:2017–2018。
  15. IRB 批号:#23,批准日 2017-10-19。
  16. 资助:俄罗斯联邦教育部,合同号 No. 02.G25.31.0157 of 01.12.2015。
  17. 项目背景:Cyberheart project。
  18. 标注波总数:58,429。
  19. P 波数:16,797。
  20. QRS 复合波数:21,966。
  21. T 波数:19,666。
  22. 标注方式:逐导联独立、certified cardiologists 目视检查。
  23. 标注符号:( 起点、) 终点、p/N/t 分别为 P/QRS/T 峰值。
  24. 年龄范围:11 岁至 >89 岁(README 记 11–90 岁)。
  25. 平均年龄:52 岁。
  26. 性别:85 女 / 115 男。
  27. 节律:Sinus rhythm 143 / Sinus bradycardia 25 / Atrial fibrillation 15 / Sinus arrhythmia 8 / Sinus tachycardia 4 / Atrial flutter 3 / Irregular sinus rhythm 2。
  28. 心电轴:Normal 75 / Left axis deviation 66 / Vertical 26 / Horizontal 20 / Right axis deviation 3 / None (pacemaker) 10。
  29. 诊断分类:8 大类多类多标签 + 其他状态。
  30. 许可:ODC-By 1.0。
  31. 获取:PhysioNet Open Access 直链,无申请门槛。
  32. 格式:WFDB-compatible + ludb.csv。
  33. 文件构成:.hea + .dat + 12 逐导联标注文件。
  34. 1.0.1 新增:ludb.csv(聚合患者信息)。
  35. 引用要求:数据集 DOI + 论文 + PhysioNet 标准引用,三者齐备。
  36. 官方 train/test 划分:无(社区自行划分)。

术语表(30 条)

术语 英文 释义
心电图 ECG / electrocardiogram 记录心脏电活动的信号
十二导联 12-lead 从 12 个电极视角记录的心电信号
波形分界 delineation 定位波形起点、峰值、终点
起点 onset 波形起始时刻
终点 offset 波形结束时刻
峰值 peak 波形振幅最大点
P 波 P wave 心房去极化波
QRS 复合波 QRS complex 心室去极化波群
T 波 T wave 心室复极化波
PR 间期 PR interval P 起点至 QRS 起点
QT 间期 QT interval QRS 起点至 T 终点
心率 heart rate 单位时间心搏数
窦性心律 sinus rhythm 正常起搏心律
窦性心动过缓 sinus bradycardia 心率过慢的窦性心律
窦性心动过速 sinus tachycardia 心率过快的窦性心律
房颤 atrial fibrillation, AF 心房无规律颤动
房扑 atrial flutter 心房规律快速扑动
期前收缩 extrasystole 提前出现的心搏
早搏 PVC / PAC 室性/房性期前收缩
传导异常 conduction abnormality 心脏电传导阻滞类异常
束支传导阻滞 bundle branch block 束支传导受阻
肥厚 hypertrophy 心肌/心腔增厚
缺血 ischemia 心肌供血不足
心肌梗死 STEMI / NSTEMI ST 段抬高/非抬高型心梗
心电轴 electrical axis 心室去极化主方向
起搏器 pacemaker 人工心脏起搏装置
复极异常 repolarization abnormality 心室复极异常
早期复极 early repolarization 一种复极变异
黄金标准 gold standard 权威参考标注
WFDB WaveForm DataBase 生理信号标准格式与工具链

术语表补充(进阶 20 条)

术语 英文 释义
多类多标签 multi-class multi-label 一个样本可归多个类别、每类可有多个标签
导联级计数 lead-wise count 58,429 的口径:按导联分别计数
容差窗 tolerance window 判定预测点与真值匹配的时间窗
逐点匹配 F1 point-wise F1 分界常用指标,按点匹配算 P/R/F1
分层切分 stratified split 按类别比例划分训练/测试
交叉验证 cross validation 小样本库常用评估方式
类别不平衡 class imbalance 各类样本量悬殊
长尾分布 long-tail distribution 少数类样本极少的分布
过拟合 overfitting 模型只记住训练集
去标识 de-identification 去除个人身份信息
知情同意 informed consent 志愿者采集前书面同意
伦理审查 IRB / ethics review 机构审查委员会批准
波形融合 wave fusion 相邻波形重叠难分
基线漂移 baseline wander 信号基线的低频波动
工频干扰 powerline interference 50/60 Hz 电网噪声
小波分析 wavelet analysis 时频分析方法
特征工程 feature engineering 人工构造分类特征
元启发式优化 metaheuristic optimization 用于特征选择的优化算法
深度分界 deep delineation 用神经网络做波形分界
信号质量检查 signal quality check 校验信号是否可用(ECGBench 全通过)

附录

附录 A:条目信息速查卡

项 值
slug ludb
全称 Lobachevsky University Electrocardiography Database
rid(待入池) 由主会话分配
平台 PhysioNet
版本 1.0.1
数据集 DOI 10.13026/eegm-h675
论文 DOI 10.1109/ACCESS.2020.3029211
arXiv 1809.03393
许可 ODC-By 1.0
规模 200 记录 / 58429 波形 / 500 Hz / 12 导联 / 10 秒
category_tags 生理信号、心电信号、医学图像分割、心血管疾病、评测基准

附录 B:DAIMS 评估全表

DAIMS(Data and AI Model Scorecard 取向的数据集评估维度)对 LUDB 的逐维打分:

维度 评分 说明
可获得性(Accessibility) ★★★★★ ODC-By 1.0,PhysioNet 直链,零门槛,无 gated
文档完备度(Documentation) ★★★★★ README 详尽列出全部类别分布表、文件结构、引用规范
标注质量(Annotation Quality) ★★★★★ 持证心内科医生逐导联独立标注,全波形无缺口
标注完整度(Annotation Completeness) ★★★★★ 覆盖全部 P/QRS/T 波形,这是核心卖点
格式标准化(Standardization) ★★★★★ WFDB 标准格式,工具链成熟(wfdb 包)
规模充分性(Scale) ★★☆☆☆ 200 条记录,小样本,不足以单独训练大模型
人群代表性(Representativeness) ★★☆☆☆ 单一中心、单一设备、地域局限(俄罗斯)
类别均衡性(Class Balance) ★★☆☆☆ 除心律外类别极稀疏,长尾严重
可复现性(Reproducibility) ★★★☆☆ 无官方划分,社区自切分导致跨研究不可直接比较
伦理合规(Ethics) ★★★★★ IRB 批准(#23)、知情同意、去标识、开放许可
可维护性(Maintainability) ★★★★☆ PhysioNet 版本管理,1.0.1 已修复已知问题
AI 就绪度(AI-Readiness) ★★★★☆ 格式/许可/标注均就绪,扣分在规模与均衡性

DAIMS 总评:LUDB 是一个**“高精度、小规模、强文档、完全开放”**的验证型数据集。在可获得性、标注质量、格式标准化、伦理合规四个维度满分,但在规模、代表性、类别均衡三个维度偏低——这正符合它"分界验证工具"的设计初衷。若把它当训练库用会失望,若把它当黄金标准测试集用则近乎完美。

附录 C:逐项证据链

结论 证据
200 记录 PhysioNet 摘要 + README + arXiv 摘要三源
58429 波形 README 明细(16797+21966+19666 自洽)
500 Hz README + MDPI Algorithms 2025
ODC-By 1.0 ECGBench 页面(License ODC-By 1.0)+ PhysioNet Open Access 类别
逐导联标注 README 文件结构说明(12 个 .i/.ii/… 文件)
8 大类诊断 README 分类表 + MDPI Algorithms 2025 分类说明
年龄/性别 README(11–90,85 女 115 男)
1.0.1 修复 ADC gain torch-ecg 文档 Issues 节
分界 F1 97.8/99.5/99.9 PhysioNet Usage Notes 引文献 [7]

附录 D:数据获取决策树

是否需要 ECG 波形分界(P/QRS/T 边界)的权威参考?
├─ 是 → LUDB(本条目)为首选黄金标准
│        └─ 需要对照前代?→ 加上 QT-Database(rid 122)
├─ 否,只需 QRS → MIT-BIH Arrhythmia(rid 69)
├─ 否,需要房颤专精 → MIT-BIH AFDB(rid 115)/ ltafdb(rid 668)
├─ 否,需要大规模分类训练 → MIMIC-IV-ECG(rid 172)
└─ 否,需要通用 PhysioNet 信号 → apnea-ecg(rid 658)/ CinC 系列

附录 E:读取 LUDB 的代码骨架

import wfdb
import numpy as np
import pandas as pd

# 1) 读取第 1 条记录的信号(12 导联,5000 点 @500Hz)
record = wfdb.rdrecord('ludb/1.0.1/data/1')
signal = record.p_signal            # shape: (5000, 12) 单位 mV
leads = record.sig_name             # ['i','ii','iii','avr',...,'v6']

# 2) 读取某导联的人工标注(ii 导联)
ann = wfdb.rdann('ludb/1.0.1/data/1', 'ii')
# ann.symbol: '('=onset, ')'=offset, 'p'/'N'/'t' = P/QRS/T 峰值
# ann.sample: 对应的采样点索引

# 3) 读取聚合患者信息表(注意:字符串带尾部换行、多值用换行分隔)
df = pd.read_csv('ludb/1.0.1/ludb.csv')
# 多值单元格需按 '\n' 拆分,勿用逗号;记录 34 年龄原始值为 '>89'

附录 F:分界评测指标骨架

# 逐点匹配的 F1(以 onset 检测为例)
def match_f1(pred_idx, true_idx, tol=0.05):
    """tol: 容差窗(秒); 采样率 500Hz 时 0.05s = 25 点"""
    tp = 0
    used = set()
    for p in pred_idx:
        for j, t in enumerate(true_idx):
            if j in used:
                continue
            if abs(p - t) <= tol * 500:
                tp += 1
                used.add(j)
                break
    fp = len(pred_idx) - tp
    fn = len(true_idx) - tp
    precision = tp / (tp + fp) if (tp + fp) else 0.0
    recall = tp / (tp + fn) if (tp + fn) else 0.0
    f1 = 2 * precision * recall / (precision + recall) if (precision + recall) else 0.0
    return precision, recall, f1

# 论文参考值(文献 [7] 深度学习算法):
# P 波起止 F1 >= 97.8%
# T 波 F1     >= 99.5%
# QRS 复合波 F1 >= 99.9%

附录 G:类别分布速查(用于分层采样)

类别 覆盖记录数(约) 备注
Rhythms 200 唯一全量覆盖
Electric axis 200(10 例起搏器 None) 全量覆盖
Non-specific repolarization ~85 稀疏
Hypertrophies ~140(重叠计) 主要为左房/左室
Conduction abnormalities ~66(重叠计) 以不完全右束支阻滞 29 最多
Ischemia ~51(重叠计,22 原子标签) 高度长尾
Extrasystolies ~14(16 标签) 标签数>记录数
Cardiac pacing ~10 起搏模式分散
Other states 9 早期复极综合征

附录 H:许可署名模板

Kalyakulina, A., Yusipov, I., Moskalenko, V., Nikolskiy, A., Kosonogov, K.,
Zolotykh, N., & Ivanchenko, M. (2021). Lobachevsky University
Electrocardiography Database (version 1.0.1). PhysioNet. RRID:SCR_007345.
https://doi.org/10.13026/eegm-h675

Kalyakulina, A.I., Yusipov, I.I., Moskalenko, V.A., Nikolskiy, A.V.,
Kosonogov, K.A., Osipov, G.V., Zolotykh, N.Yu., Ivanchenko, M.V.: LUDB: A New
Open-Access Validation Tool for Electrocardiogram Delineation Algorithms,
IEEE Access, vol. 8, pp. 186181-186190, 2020,
doi: 10.1109/ACCESS.2020.3029211

附录 I:坑点档案(与 §10 对照)

坑号 一句话 后果
坑 1 58,429 当唯一事件数 高估数据量一个数量级
坑 2 忽视类别极端不平衡 分类器严重偏多数类
坑 3 ludb.csv 换行分隔未处理 误判类别数(Ischemia 40 vs 22)
坑 4 忽视单一中心/设备偏置 跨设备迁移性能失真
坑 5 节律分布两口径混用 引用数字前后矛盾(±1)
坑 6 读 .hea 而非 .csv 取结构化诊断 丢失类别分组结构

附录 J:与库内条目关系声明

  • 上游无本体依赖:LUDB 为独立采集,非任何数据集的重标注或衍生版本。
  • 对照对象:QT-Database(rid 122)为最直接的前代对照库。
  • 互补对象:MIMIC-IV-ECG(rid 172)为大规模分类库,与 LUDB 形成"训练—测试"分工。
  • 同族:MIT-BIH Arrhythmia(rid 69)、MIT-BIH AFDB(rid 115)、ltafdb(rid 668)、apnea-ecg(rid 658)及 CinC 系列(rid 689/660/662/666/487/382/162/493/656/692/644/499)。

附录 K:检索决策树

搜 "LUDB" 或 "Lobachevsky ECG" → 本条目
搜 "ECG delineation dataset" → 任务类别,LUDB 是其中代表,勿当别名
搜 "ECG 分界 数据库 中文" → 本条目(罗巴切夫斯基大学心电图数据库)
搜 "QT database ECG" → QT-Database(rid 122),非 LUDB
搜 "arrhythmia classification" → 可能指向 MIT-BIH(rid 69)/ MIMIC-IV-ECG(rid 172)

附录 L:数据健康检查 5 步

  1. 版本核对:确认下载目录为 1.0.1(避免 1.0.0 ADC gain 问题)。
  2. 信号形状:抽查记录,确认信号为 (5000, 12) 或 (12, 5000),单位 mV。
  3. 标注符号:抽查标注,确认符号含 (/)/p/N/t。
  4. CSV 解析:读 ludb.csv 时按 \n 拆分多值,剥离尾部换行,单独处理记录 34 的 “>89”。
  5. 计数自洽:确认全库 P+QRS+T = 58,429,与官方一致。

附录 M:LUDB 疾病分类完整清单(README 全表转写)

传导异常(Conduction abnormalities):

类型 记录数
Sinoatrial blockade, undetermined 窦房阻滞(未定) 1
I degree AV block 一度房室传导阻滞 10
III degree AV block 三度房室传导阻滞 5
Incomplete right bundle branch block 不完全性右束支传导阻滞 29
Incomplete left bundle branch block 不完全性左束支传导阻滞 6
Left anterior hemiblock 左前分支阻滞 16
Complete right bundle branch block 完全性右束支传导阻滞 4
Complete left bundle branch block 完全性左束支传导阻滞 4
Non-specific intraventricular conduction delay 非特异性室内传导延迟 4

期前收缩(Extrasystoles):

类型 记录数
房性期前收缩(未定) 2
房性期前收缩(低位房性) 1
房性期前收缩(左房性) 2
房性期前收缩(SA 结性) 3
房性期前收缩(单发 PAC) 4
房性期前收缩(二联律) 1
房性期前收缩(四联律) 1
房性期前收缩(全律模式) 1
室性期前收缩(多形性) 2
室性期前收缩(RVOT 前壁) 3
室性期前收缩(RVOT 前间隔) 1
室性期前收缩(IVS 中段) 1
室性期前收缩(LVOT-LVS) 2
室性期前收缩(LV 未定) 1
室性期前收缩(单发 PVC) 6
室性期前收缩(间位性 PVC) 2
室性期前收缩(成对) 2

肥厚(Hypertrophies):

类型 记录数
Right atrial hypertrophy 右房肥厚 1
Left atrial hypertrophy 左房肥厚 102
Right atrial overload 右房负荷 17
Left atrial overload 左房负荷 11
Left ventricular hypertrophy 左室肥厚 108
Right ventricular hypertrophy 右室肥厚 3
Left ventricular overload 左室负荷 11

缺血(Ischemia):

类型 记录数
STEMI: anterior wall 8
STEMI: lateral wall 7
STEMI: septal 8
STEMI: inferior wall 1
STEMI: apical 5
Ischemia: anterior wall 5
Ischemia: lateral wall 8
Ischemia: septal 4
Ischemia: inferior wall 10
Ischemia: posterior wall 2
Ischemia: apical 6
Scar formation: lateral wall 3
Scar formation: septal 9
Scar formation: inferior wall 3
Scar formation: posterior wall 6
Scar formation: apical 5
Undefined ischemia/scar/supp.NSTEMI: anterior wall 12
Undefined ischemia/scar/supp.NSTEMI: lateral wall 16
Undefined ischemia/scar/supp.NSTEMI: septal 5
Undefined ischemia/scar/supp.NSTEMI: inferior wall 3
Undefined ischemia/scar/supp.NSTEMI: posterior wall 4
Undefined ischemia/scar/supp.NSTEMI: apical 11

非特异性复极异常(Non-specific repolarization abnormalities):

类型 记录数
Anterior wall 前壁 18
Lateral wall 侧壁 13
Septal 间隔 15
Inferior wall 下壁 19
Posterior wall 后壁 9
Apical 心尖 11

心脏起搏(Cardiac pacing):

类型 记录数
UNIpolar atrial pacing 单极房性起搏 1
UNIpolar ventricular pacing 单极室性起搏 6
BIpolar ventricular pacing 双极室性起搏 2
Biventricular pacing 双心室起搏 1
P-synchrony P 波同步起搏 2

其他状态(Other states):

类型 记录数
Early repolarization syndrome 早期复极综合征 9

附录 N:心电轴与节律的临床解读

心电轴(Electrical axis) 反映心室去极化的平均方向,正常范围通常为 -30° 至 +90°。LUDB 把心电轴分为六类:Normal(正常)、Left axis deviation(左偏)、Vertical(垂直位)、Horizontal(水平位)、Right axis deviation(右偏)、None(起搏器所致)。

从分布看,心电轴左偏(66 例)几乎与正常(75 例)持平,这与一般人群的心电轴分布显著不同——正常人群中心电轴左偏比例通常远低于此。这提示 LUDB 的受试者并非普通人群抽样,而是以心血管病患者为主(左偏常与左室肥厚、左前分支阻滞等病理相关)。这一点在把 LUDB 当作"正常对照"使用时必须警惕。

节律(Rhythms) 分布中,窦性心律 143 例占绝对多数(71.5%),窦性心动过缓 25 例(12.5%),房颤 15 例(7.5%),其余均是个位数。这一分布决定了 LUDB 在多节律分类任务上的局限:房颤/房扑等关键心律失常样本量小,难以支撑稳健的节律分类器训练。

附录 O:年龄与性别的分布特征

维度 数值
年龄下限 11 岁
年龄上限 >89 岁(README 记 90 岁)
平均年龄 52 岁
女性 85 例(42.5%)
男性 115 例(57.5%)

年龄跨度从 11 岁到 >89 岁,覆盖儿童、成人、老年三段,这在 ECG 数据集中相对少见(多数临床 ECG 库以成人为主)。但样本量有限(200 例),每个年龄段的样本不足以做精细的年龄分层分析。MDPI Algorithms 2025 用 LUDB 做年龄/性别分组的 ECG 参数正常范围总结时,就把年龄段压缩为 16–19、20–29 …… 80–89 的十岁一档。

附录 P:与 MIT-BIH / QTDB 的规格对照全表

维度 LUDB QT Database MIT-BIH Arrhythmia
记录数 200 105 48
每条时长 10 秒 15 分钟 ~30 分钟
导联数 12 2 2
采样率 500 Hz 250 Hz 360 Hz
P 波标注 ✓ 完整 ✓ 部分未标 ✗
QRS 标注 ✓ ✓ ✓
T 波标注 ✓ 完整 ✓ 部分未标 ✗
逐导联独立标注 ✓ — —
诊断分类 8 大类多标签 有限 心搏类型
定位 分界黄金标准 分界(前代) 心律失常分类

附录 Q:LUDB 在深度学习时代的角色演变

LUDB 诞生于 2018 年(arXiv 首发),正值 ECG 分析从传统信号处理向深度学习过渡的转折点。它最初的自我定位是"开放获取的验证工具",服务对象是基于小波等传统方法的分界算法——论文案例研究对比的正是 wavelet-based 算法与 ecg-kit。

但随着深度学习兴起,LUDB 的角色发生了微妙转变:它从"算法验证工具"变成了"深度模型训练集"。PhysioNet Usage Notes 明确指出,文献 [7] 的深度学习分界算法就用 LUDB 作训练集,达到 P/T/QRS F1 分别 ≥97.8%/99.5%/99.9% 的精度。这是一个值得留意的现象——一个为验证而设计的 200 条小库,因为标注质量过硬,被"反向"用作了训练数据。

这一转变带来的风险是:当 LUDB 同时被用作训练集又用作测试集时,"性能提升"可能只是过拟合。检索者在使用 LUDB 时应明确区分两种用法:(1)用作纯测试集(测其他库上训练的模型)——这是它设计的初衷;(2)用作训练集(在 LUDB 内部划分)——此时必须用严格交叉验证,且结论不可外推到其他数据集。

附录 R-2:ECG 分界算法的技术演进简史

阶段 代表方法 与 LUDB 的交集
经验规则法 幅度阈值、斜率分析 LUDB 的前代验证对象
小波变换 wavelet-based 分界 论文案例研究对照算法
经典工具箱 ecg-kit(MATLAB) 论文案例研究对照工具
机器学习 SVM + 手工特征 PMC 39736595 的做法
深度学习 CNN/RNN/Transformer 分界 文献 [7] 用 LUDB 训练,F1 ≥97.8%/99.5%/99.9%

从这条时间线看,LUDB 贯穿了 ECG 分界从规则法到深度学习的全过程——它既是传统算法的验证场,也是新算法的训练炉,这正是其长生命周期的来源。

附录 R-3:为什么"逐导联"很重要——临床视角

在临床读图中,同一心跳在不同导联上的波形形态、极性、幅度都不同。例如:

  • P 波:在 II 导联最清晰,在 aVR 导联倒置;
  • QRS:在 V1 呈 rS 型、在 V5/V6 呈 qR 型;
  • T 波:在多数导联直立,在 aVR 倒置。

因此,"在 II 导联上标一次 P 波边界,再复制到其他导联"在临床上是错误的——不同导联的 P 波起点可能相差数十毫秒。LUDB 坚持逐导联独立标注,正是为了忠实反映这一临床事实。这也是它能支撑"多导联 vs 单导联"算法对比研究的技术基础。

附录 R-4:分界数据库的评测公平性设计

一个公正的分界评测需要满足几个条件,LUDB 恰好都具备:

  1. 独立的真值来源:标注由人工专家完成,而非自动算法——避免"用算法验证算法"的循环。
  2. 覆盖完整:全部波形都标,无缺口——避免"只测标得好的那部分"的选择性偏差。
  3. 公开可复现:数据与标注公开、格式标准——任何团队都能跑出同样结果。
  4. 标注者资质明确:持证心内科医生——避免"标注质量不可知"。
  5. 多导联独立:不复制标注——避免单导联偏差扩散到全库。

这五点共同构成 LUDB 作为"公平评测基准"的资格。

附录 R-5:LUDB 在教学方法中的价值

除了研究用途,LUDB 还有一个常被忽略的价值:教学。PhysioNet 摘要明确提到"The database can be used for educational purposes"(该数据库可用于教育目的)。具体而言:

  1. 医学生教学:可用真实 ECG + 专家标注对照,学习如何识别 P/QRS/T 及其边界。
  2. 信号处理教学:可用它演示采样、滤波、波形检测等概念的实操。
  3. 算法课程:可作为学生练习"实现一个分界算法并在标准库上评测"的素材库——因为评测口径清晰、真值可靠。
  4. 数据科学教学:可用其演示多类多标签、类别不平衡、交叉验证等数据科学概念。

一份数据同时服务研究、教学、评测三种场景,且都以 ODC-By 开放——这是 LUDB 对社区的复合贡献。

附录 R-6:ECG 信号基础——十分钟速成

为非心电专业读者补一节基础,理解 LUDB 标注的临床含义:

一次心动周期的波形序列:

  1. P 波:心房去极化,正常时限 <120 ms,振幅 <0.25 mV(II 导联)。代表窦房结冲动传至心房的电活动。
  2. PR 间期:P 波起点到 QRS 起点,正常 120–200 ms。反映房室传导时间。
  3. QRS 复合波:心室去极化,正常时限 <120 ms。振幅大、变化快。
  4. ST 段:QRS 终点(J 点)到 T 波起点,正常与基线平齐。抬高/压低提示心肌缺血或梗死。
  5. T 波:心室复极化,代表心室恢复。
  6. QT 间期:QRS 起点到 T 终点,随心率变化。延长提示心律失常风险。

LUDB 的标注正对应这些关键切点:P 波起止(→ PR 间期起点)、QRS 起止(→ QRS 时限、J 点)、T 波起止(→ QT 间期终点)。理解了这几段,就理解了为什么"分界"是心电分析的地基。

附录 R-7:LUDB 诊断类别的临床分层

从临床严重性看,LUDB 的 8 大类可粗分为三层:

层级 类别 临床意义
节律层 Rhythms、Extrasystoles、Cardiac pacing 描述心搏起源与节律,最基础
传导层 Conduction abnormalities、Electric axis 描述电传导通路
结构/供血层 Hypertrophies、Ischemia、Non-specific repolarization 描述心肌结构与血供,最接近诊断

这种分层也解释了为何 LUDB 的标注覆盖度"上密下疏":节律层覆盖全库(每条都有节律),而供血层只有部分记录有发现(缺血类共约 51 例重叠计数)。

附录 R-8:如何判断一个 ECG 数据集是否适合你的任务

你的需求 关键判断问题 LUDB 的回答
分界评测 是否提供 P/QRS/T 完整边界? ✓ 全波形
分界训练 样本量是否足够? ✗ 仅 200 条
分类训练 类别是否均衡、样本是否充足? ✗ 长尾、样本少
分类测试 标签是否权威? ✓ 专家诊断
跨设备泛化 是否多设备采集? ✗ 单设备
人群多样性 是否多中心多地域? ✗ 单中心
快速上手 是否开放直链、工具成熟? ✓ ODC-By + WFDB

一句话结论:LUDB 是"评测友好、训练不友好"的数据集,用对了场景就是宝,用错了场景就失望。

附录 R:LUDB 使用场景手册

场景 1:验证一个 P 波检测算法。
步骤:① 用 WFDB 读入全部 200 条记录;② 对每条记录的每个导联,算法输出 P 波起点/终点;③ 与对应导联标注文件的 (/)/p 符号比对;④ 用逐点匹配 F1(容差窗建议 50–150 ms)计算精度;⑤ 分别报告 onset、offset、peak 三类指标。注意:论文参考值 P 波起止 F1 ≥97.8% 是"起止合并"口径。

场景 2:训练一个多导联分界模型。
步骤:① 明确划分训练/验证/测试(LUDB 无官方划分,需自建,建议 10-fold);② 输入形状 (12, 5000);③ 输出 12 导联 × 三类波形的边界检测;④ 注意类别不平衡(P/T 波数量不同);⑤ 若把 LUDB 全量用于训练,测试应另选独立库(如 QTDB)以避免过拟合。

场景 3:做 ECG 参数(PR/QT)计算验证。
步骤:① 用标注的真值边界计算 PR = QRS onset − P onset、QT = T offset − QRS onset;② 用算法检测的边界算同样的参数;③ 对比两者误差,评估"分界误差如何传导到参数误差"。这是 LUDB 相对其他库的独特价值——因为它的 P/T 边界完整。

场景 4:小样本心律失常分类。
步骤:① 从 ludb.csv 取节律标签;② 按 lead II 提取信号(如 PMC PMID 39736595 的做法);③ 做特征工程或端到端模型;④ 必须处理类别不平衡(NSR 132 vs AF 15 vs SBR 24);⑤ 用分层交叉验证;⑥ 报告 per-class 指标而非只报总体准确率。

场景 5:多导联 vs 单导联对比研究。
步骤:① 分别在单导联(如 lead II)和全 12 导联上跑同一分界算法;② 对比 F1;③ 论证多导联的增益(论文案例研究的核心论点)。LUDB 的逐导联独立标注使这种对比天然成立。

附录 S:常见误用与纠正

误用 纠正
把 58,429 当唯一波形数 它是"导联 × 波形"计数,实际唯一心跳事件远少于此
用 LUDB 训练大模型后宣称 SOTA 200 条样本不足以支撑,且易过拟合;应明确是验证用途
把 .hea 注释当结构化标签解析 用 ludb.csv;.hea 是扁平自由文本
忽略 1.0.0 的 ADC gain 问题 一律用 1.0.1
把心电轴正常 75 例当"正常人群对照" 该库以患者为主,心电轴左偏 66 例异常偏高,非正常抽样
把两口径节律分布数字混用 统一用 README 官方表,标注 ECGBench 差异
声称有官方 train/test 划分 没有;社区自切分

附录 T:数据许可与伦理合规清单

合规项 状态
数据许可 ODC-By 1.0(允许商用,须署名)
伦理审批 罗巴切夫斯基大学 IRB #23(2017-10-19)
知情同意 志愿者采集前提供书面知情同意
去标识 数据为信号 + 诊断,个人标识已去除
署名要求 数据集 DOI + 论文 + PhysioNet 标准引用
二次分发 允许(ODC-By)

附录 U:LUDB 时间线全表

时间 事件
2015-12-01 资助合同签订(No. 02.G25.31.0157)
2017-10-19 IRB 批准(#23)
2017–2018 数据采集(Nizhny Novgorod City Hospital No 5)
2018-08-30 arXiv v1 提交(论文首发)
2020-09-16 arXiv v4 修订(终稿)
2020 IEEE Access 正式发表(vol. 8, pp. 186181-186190)
2021-01-19 PhysioNet 发布 version 1.0.1
2021+ 被 torch-ecg、ECGBench 等收录,成为分界基准

附录 V:相关工具链清单

工具 用途 与 LUDB 关系
WFDB Python Toolbox 读写生理信号 读取 LUDB 的标准工具
WFDB Software Package 离线信号处理 同上(C 版)
torch-ecg PyTorch ECG 数据库接口 内置 LUDB loader
ECGBench ECG 数据集统一加载与切分 收录 LUDB,提供 10-fold
ecg-kit MATLAB ECG 分析工具 论文案例研究对照工具
scikit-learn 分类/评估 分类任务常用

附录 W:跨数据集互操作注意事项

把 LUDB 与其他 ECG 库联合使用时,须注意以下不一致:

  1. 采样率不同:LUDB 500 Hz、QTDB 250 Hz、MIT-BIH 360 Hz——联合建模前必须重采样到统一频率。
  2. 时长不同:LUDB 10 秒、QTDB 15 分钟、MIT-BIH ~30 分钟——需切分或填充到统一下游尺寸。
  3. 导联数不同:LUDB 12 导联、QTDB 2 导联、MIT-BIH 2 导联——单导联模型需统一选择(如都用 lead II)。
  4. 标注符号可能有差异:不同库的 WFDB 标注符号集未必完全一致,读入后应核对。
  5. 诊断标签体系不同:各库分类编码不通用,多库联合训练需建立标签映射。

PMC PMID 39736595 的做法可作为参考:它把 LUDB(500 Hz,lead II)与 QTDB(250 Hz,lead II)的信号统一切分为 5,000 点固定长度,再各自截取所需类别,从而绕开时长/采样率差异。

附录 X:给数据集设计者的启示卡

  1. "验证库"是一门独立的生意:LUDB 证明,不追求样本量、只追求标注质量的数据集,也能成为领域基础设施。
  2. 完整性即通用性:全波形、逐导联的标注,使 LUDB 能被"反向"用作训练集,扩大了生命周期。
  3. 符号约定要标准化:采用 WFDB 标准格式与符号,是 LUDB 工具链无缝接入的关键。
  4. 开放许可放大影响:ODC-By 的宽松条款与 PhysioNet 的直链,让 LUDB 零摩擦进入每一个实验室。
  5. 文档就是产品:README 把分布、文件结构、引用规范讲得清清楚楚,降低了使用门槛——这是小库能与大库竞争的重要因素。

附录 Y:LUDB 数据使用检查表(打印版)

下载 LUDB 后,逐项打勾确认:

  • [ ] 版本为 1.0.1(非 1.0.0,避免 ADC gain 问题)
  • [ ] 记录数为 200 条
  • [ ] 能用 WFDB 读入信号,形状 (5000, 12) 或 (12, 5000)
  • [ ] 单位确认为 mV(幅值合理,非千倍偏差)
  • [ ] 能读入 12 个逐导联标注文件,符号含 (/)/p/N/t
  • [ ] 能用 pandas 读 ludb.csv,并按 \n 拆分多值单元格
  • [ ] 已处理记录 34 的年龄 “>89” 特例
  • [ ] 已剥离字符串单元格的尾部换行
  • [ ] 已按需求选择统一导联(如 lead II)
  • [ ] 已明确训练/测试划分方式(LUDB 无官方划分)
  • [ ] 已按 ODC-By 要求准备署名(数据集 DOI + 论文)
  • [ ] 已核对评测口径(容差窗/合并方式/平均方式)

附录 Z:LUDB vs 其他 ECG 库五维雷达对照

维度 LUDB QTDB MIT-BIH MIMIC-IV-ECG
规模 低(200) 低(105) 低(48) 极高(80 万+)
标注精度 极高 中 高 低
波形完整度 极高(全波形) 中(有缺口) 低(仅 QRS) 低
获取便利 极高(直链) 高(直链) 高(直链) 高(需申请)
任务适配 分界 分界 分类 分类

读表结论:LUDB 在"标注精度"与"波形完整度"两维满分,在"规模"维度最低——这是"黄金标准库"的典型特征:规模与精度天然权衡。

附录 AA:常见检索词的指向

检索词 正确指向
LUDB 本条目
Lobachevsky University ECG 本条目
罗巴切夫斯基 心电图 本条目
ECG delineation database 任务类别(topic=delineation),LUDB 为代表
QT database QT-Database(rid 122)
MIT-BIH arrhythmia MIT-BIH Arrhythmia(rid 69)
WFDB 格式标准(被多个库采用)
Schiller Cardiovit AT-101 LUDB 采集设备
Cyberheart project LUDB 所属项目

附录 AB:条目自证清单

本条目所有陈述均可回溯至以下一手来源:

  1. PhysioNet LUDB 数据集页(https://physionet.org/content/ludb/1.0.1/)——摘要、Methods、Data Description、Release Notes、Usage Notes。
  2. PhysioNet LUDB README(.../1.0.1/README)——全部类别分布表、文件结构、贡献者、伦理信息。
  3. arXiv:1809.03393 摘要页——论文时间线(v1/v4)、作者、页数。
  4. torch-ecg LUDB 文档——两个任务定义、1.0.0 ADC gain 问题。
  5. ECGBench(HuggingFace Space)LUDB 页——ODC-By 1.0 许可、ludb.csv 特性、记录 34 年龄特例、10-fold 切分。
  6. MDPI Algorithms 2025;18(11):689——多类多标签说明、导联/采样率二次证实。
  7. PMC PMID 39736595——LUDB+QTDB 联合使用案例、NSR/AF/SBR 计数。

附录 AC:坑点速记卡(回看版)

记住这六个数,LUDB 的坑就避开大半:
58429 是导联级计数(坑 1);除心律外类别极稀疏(坑 2);ludb.csv 换行分隔(坑 3);单中心单设备(坑 4);节律分布两口径(坑 5);读 csv 不读 hea(坑 6)。
再加四条:F1 口径要核对(坑 7);不是正常人群库(坑 8);房颤样本稀缺(坑 9);必须用 1.0.1(坑 10)。

延伸阅读与资源

一手资源

资源 链接
PhysioNet 数据集页 https://physionet.org/content/ludb/1.0.1/
PhysioNet README https://physionet.org/content/ludb/1.0.1/README
数据目录 https://physionet.org/content/ludb/1.0.1/data/
论文 DOI https://doi.org/10.1109/ACCESS.2020.3029211
数据集 DOI https://doi.org/10.13026/eegm-h675
arXiv 预印本 https://arxiv.org/abs/1809.03393
Cyberheart 项目页 http://www.cyberheart.unn.ru/database

工具与生态

资源 说明
WFDB Python Toolbox https://pypi.org/project/wfdb/
WFDB Software Package https://archive.physionet.org/physiotools/wfdb.shtml
torch-ecg LUDB 文档 https://deeppsp.github.io/torch_ecg/api/generated/torch_ecg.databases.LUDB.html
ECGBench HuggingFace Space vlbthambawita/ECGBench
PhysioNet delineation 专题页 https://www.physionet.org/content?topic=delineation

相关文献

  1. Kalyakulina et al. LUDB: A New Open-Access Validation Tool for ECG Delineation Algorithms. IEEE Access 2020;8:186181-186190.
  2. Kalyakulina et al. Finding morphology points of electrocardiographic-signal waves using wavelet analysis. Radiophysics and Quantum Electronics 2019;61(8-9):689-703.
  3. Moskalenko, Zolotykh, Osipov. Deep Learning for ECG Segmentation. International Conference on Neuroinformatics 2019:246-254.
  4. Moody & Mark. The impact of the MIT-BIH arrhythmia database. IEEE Eng Med Biol Mag 2001;20(3):45-50.
  5. Laguna et al. A database for evaluation of algorithms for measurement of QT and other waveform intervals in the ECG. Computers in Cardiology 1997:673-676.
  6. 独立使用案例:ECG Signal Analysis and Abnormality Detection Application. Algorithms 2025;18(11):689.
  7. 独立使用案例:An improved electrocardiogram arrhythmia classification performance with feature optimization. PMC PMID 39736595.

本条目关联的库内条目

条目 rid 关联类型
QT-Database 122 前代对照
MIT-BIH Arrhythmia 69 分类对照
MIT-BIH AFDB 115 房颤相关
MIMIC-IV-ECG 172 大库互补
ltafdb 668 房颤长程
apnea-ecg 658 同平台生理信号

结语

LUDB 是一个把"少而精"做到极致的数据集:它不追求规模,却凭借 200 条记录、58429 个逐导联人工标注波形,成为了心电图波形分界领域公认的黄金标准。它的故事说明了一个朴素却常被忽视的道理——在验证类任务上,一份权威、完整、开放的小数据,比一份庞大、粗糙、封闭的大数据更有价值。无论你是刚入门的心电算法学习者,还是资深的分界模型研究者,LUDB 都值得在你的工具箱里占一个位置:作为那条衡量"标得准不准"的基准线。


相关数据集导航

以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:

  • code-test — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • ecg-arrhythmia — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • ecg-fragment-high-risk-label — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • code-ii — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • norwegian-athlete-ecg — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • brugada-huca — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • mit-bih-afdb — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • cinc-2021 — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • icentia11k — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准
  • ltafdb — 共享标签:生理信号 / 心电信号 / 心血管疾病 / 评测基准

导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

返回 AI-Ready 数据集