RFMiD — 视网膜多病种眼底图像数据集 | AI-Ready 百科 | 千方病案医数集

3,200 张眼底彩照 · 45+ 病种多标签标注 · 罕见病长尾筛选

来源 RIADD Grand Challenge (Grand Challenge in Biomedical Image Analysis) url: https://riadd.grand-challenge.org/发布时间: 2026-09-09最后更新: 2026-09-09 阅读 2

信息速览

数据集名称RFMiD — 视网膜多病种眼底图像数据集 | AI-Ready 百科 | 千方病案医数集
数据类型3,200 张眼底彩照,45+ 病种多标签,CC-BY 4.0,竞赛托管获取
规模3,200 张眼底图像(图像级,非独立患者计数)
接入方式RIADD Grand Challenge (Grand Challenge in Biomedical Image Analysis) url: https://riadd.grand-challenge.org/
AI 就绪度

数据集封面

RFMiD — 视网膜多病种眼底图像数据集 AI-Ready Wikipedia


INFOBOX

数据集名称 RFMiD 视网膜多病种图像数据集
英文全称 Retinal Fundus Multi-Disease Image Dataset (RFMiD)
别名/简称 RFMiD 1.0、RFMiD_All_Classes、RFMiD_Challenge_Dataset
疾病分类 视网膜及眼科疾病谱(ICD-11:9B71 视网膜病 / 9B75.0 年龄相关性黄斑变性 / 9B74 视网膜血管阻塞 / 9C61 青光眼 / 9B76 病理性近视 等,详见 §2.1)
SNOMED CT Diabetic retinopathy / Age-related macular degeneration / Glaucoma / Retinal vein occlusion(详见 §2.1b,为标签级概念映射)
数据模态 彩色眼底照相(2D 眼底彩照,RGB)
AI 任务类型 眼底疾病筛查(正常 vs 异常,二分类)、多病种多标签分类、罕见病检测、长尾/少样本学习、迁移学习基线
样本总数 3,200 张眼底彩照(训练 1,920 / 验证 640 / 测试 640)
数据大小 图像约 ~150 MB(原始主分发为多 ZIP,详见 §6.2)
数据格式 PNG(图像)+ CSV(标注);原始分发包为 ZIP
许可证 CC BY 4.0(Creative Commons Attribution 4.0 International)
访问级别 申请审核(经 Grand Challenge / IEEE DataPort 注册登录后获取)
DUO 标签 GRU(通用研究用途),以官方许可为准
语言 英文(标注、文档、CSV 表头)
首发日期 2020-11-25(IEEE DataPort 创建)/ 2021-02-03(数据描述论文)
最后更新 2021-02-03(RFMiD 1.0 数据描述论文发表)
发布机构 SGGS 工程技术学院信号与图像处理卓越中心(CEISP)等印度与欧美联合团队
官方主页 https://riadd.grand-challenge.org/
下载地址 https://riadd.grand-challenge.org/Download/
DOI 10.3390/data6020014(数据描述论文)/ 10.21227/s3g7-st65(IEEE DataPort 数据集)
引用次数 349+(Google Scholar,截至 2026-09)
AI 就绪度评分 ⭐⭐⭐⭐(4/5)— 官方 3 折划分成熟、多标签格式即开即用;扣分项:罕见病类极端长尾、无官方预处理脚本、Challenge/All-Classes 两套标签易混用
页面状态 published

§0 E-E-A-T 信任声明与免责声明

医学审核者:千方病案医学编辑部交叉审核:§2 医学背景(ICD-11 与 SNOMED CT 标签映射、视网膜疾病谱、多标签金标准描述)、§7 偏倚与公平性分析。

数据工程审核者:千方病案医学编辑部交叉审核:§4 DAIMS 数据字典(ID 与标签 CSV 结构)、§5 官方划分与泄漏风险、§6 预处理 Pipeline 与 8 个坑点、§7.7 DAIMS 评估。

审核日期:2026-09-05

医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。

技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。

数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。RFMiD 以 CC BY 4.0 发布,使用需对数据集及其数据描述论文进行适当署名引用;通过 Grand Challenge 或 IEEE DataPort 获取时需按平台要求完成注册与条款确认。DUO 标签仅供参考,具体使用限制以数据集官方协议为准。


§1 数据集概览

§1.0 📌 30 秒速览

这是什么? RFMiD 是一个印度团队构建的公开眼底彩照数据集,共 3,200 张彩色眼底图像,由两位资深视网膜专家通过裁定式共识(adjudicated consensus)为每张图标注了是否含病(Disease_Risk)以及多达 45 种疾病/病理的多标签。它按 60/20/20 切分为训练(1,920)、验证(640)与测试(640)三折,图像源自 2009–2020 年在一家临床眼科诊所的数千次检查。因为同时覆盖糖尿病视网膜病变、黄斑变性等高频病和多种罕见病,它是同类眼底数据集中疾病谱最宽的之一。

为什么重要? 绝大多数公开眼底数据集(如针对糖尿病视网膜病变、青光眼、AMD)只覆盖少数高频病,临床中眼科医生会检出的很多"少见但致盲"的病理(如视网膜动脉阻塞、前部缺血性视神经病变)往往被忽略,这让 AI 筛查模型患上了"隧道视野"。RFMiD 的价值就在于它捕获了常规临床中真实会遇到的完整疾病谱——包括只出现几次的罕见病长尾,从而推动从"单一疾病检测"走向"泛化的多病种视网膜筛查"。它还直接支撑了 2021 年 IEEE ISBI 附属的 RIADD 国际挑战赛(74 个提交)。

我能用它做什么? 你可以用它训练(a)正常 vs 异常的眼底筛查二分类器,(b)28 类或 45+ 病种的多标签分类器,(c)针对罕见病/长尾分布与少样本学习的研究,以及(d)作为眼底影像领域的通用预训练与迁移学习基线。官方已经给出固定的训练/验证/测试划分,标注以「每行一张图、每列一个 0/1 标签」的宽格式 CSV 交付,加载门槛低,适合快速复现与消融实验。

关键数字
图像总数 3,200
训练 / 验证 / 测试 1,920 / 640 / 640
疾病/条件数(All_Classes) 46 条件(1 正常 + 45 疾病/标志物)
分类类别数(Challenge) 28 类(≥10 张样本独立 + OTHER)
采集时间 2009–2020
相机数 / 图像分辨率 3 台 / 2,048×1,536–4,288×2,848
许可 CC BY 4.0
数据格式 PNG + CSV
首发 / 数据描述论文 2020-11(IEEE DataPort)/ 2021-02(《Data》)

§1.1 技术摘要

RFMiD(Retinal Fundus Multi-Disease Image Dataset)由 Pachade、Porwal、Kokare 等人于 2021 年在 MDPI《Data》期刊以数据描述论文形式发布(DOI 10.3390/data6020014),并在 IEEE ISBI-2021 附属的 RIADD(Retinal Image Analysis for multi-Disease Detection)Grand Challenge 中作为官方数据公开。其设计要点在于:图像不是为单一病种采集的筛选样本,而是从 2009–2020 年患者因眼部不适就诊的眼科门诊检查中抽取的 3,200 张彩色眼底图像,刻意同时纳入高质量与低质量图像以增加挑战性;由两位高级视网膜专家独立逐张标注,综合患者的临床记录与视野作为金标准参照,若同一图像含多种疾病则赋多个标签,标注分歧由项目组负责人会同两位专家复核裁定,形成"裁定式共识"。官方提供两套标签视图——用于完整疾病谱研究的 All_Classes(含正常在内 46 个条件)与用于竞赛的二分类/28 类 Challenge 视图。数据以 PNG 图像与 CSV 标签交付,采用 CC BY 4.0 许可。RIADD 挑战总结论文于 2025 年发表于《Medical Image Analysis》(99:103365),系统报告了顶部团队用 EfficientNet 族、专用损失(Asymmetric/Focal/加权 BCE)与多分辨率集成的做法。

§1.2 战略价值

罕见病与疾病谱完整性的稀缺价值。 绝大多数眼底公开集以糖尿病视网膜病变、青光眼或 AMD 的"单病种/少数病种"为主,而 RFMiD 是极少数把常规门诊中完整疾病谱(含视网膜血管阻塞、缺血性视神经病变、黄斑水肿、多种眼底标志物等)都纳入标注的公开数据。这种"长尾但真实"的分布让它成为研究泛化性视网膜筛查系统、而非只会看单病的判别器的核心原料。RIADD 挑战的多病种平均分(AUC + mAP)仍仅 0.78 左右、筛查 AUC 可超 0.98,正说明"判有无病"已接近解决而"逐病精分类"仍是对深度学习泛化的真实考验。

多标签标注的基准效应。 因为一张眼底图可同时含糖尿病视网膜病变与黄斑水肿等多种疾病,RFMiD 天然是多标签学习与标签共现研究的基准。它可与其他以单标签或分级为主的眼底数据(IDRiD、ODIR、EyePACS、Messidor 等)互补,用于跨数据集泛化测试(已有研究在 ODIR 上训练、在 RFMiD 上验证,评估跨设备/跨人群的稳健性)。这使它不仅是眼科专属资源,也常被自然图像/泛化研究者用作医学领域多标签与长尾分类的参照基准。

§1.3 同类眼底影像数据集横向对比

数据集 图像数 模态 标注/病种 划分 差异化特点
RFMiD 3,200 眼底彩照 45+ 病种多标签(46 条件含正常) 官方 60/20/20 疾病谱最宽、覆盖罕见病长尾、双视图标签
IDRiD 516 眼底彩照 DR/DME 分级 + 病灶分割 官方划分 印度人群、DR 精细化分级与分割
ODIR ~5,000 眼底彩照 + 临床 8 类(单标签为主) 官方训练/测试 含左右眼与临床文本,筛查导向
EyePACS (DR) ~88,702 眼底彩照 DR 0–4 级分级 竞赛划分 大规模 DR 分级、人群多样
Messidor / Messidor-2 1,200 / 1,748 眼底彩照 DR/DME 分级 官方划分 法国人群、DME 标注
Kaggle APTOS 3,662 眼底彩照 DR 0–4 级 竞赛划分 DR 分级竞赛

注:上表为代表性公开眼底数据集的横向定位,规模与任务详以各官方页为准;RFMiD 行内容以本数据集官方来源为准。

§1.4 版本时间轴

时间 事件 说明
2020-10 RIADD 挑战在 ISBI-2021 官网宣布 挑战附属 IEEE ISBI-2021(法国尼斯)
2020-11-25 IEEE DataPort 创建 RFMiD 数据记录 数据集首次上线,DOI 10.21227/s3g7-st65
2020-11-22 训练数据(图 + 金标准)发放 挑战训练阶段
2021-02-03 RFMiD 数据描述论文发表 《Data》6(2):14,DOI 10.3390/data6020014
2021-04-13 RIADD on-site 研讨会(ISBI-2021) 验证/测试集评测与获奖公布
2023 RFMiD 2.0 发布(Panchal et al.) 《Data》8(2):29;细分 OTHER 罕见病为具体疾病
2025 RIADD 挑战总结论文发表 《Medical Image Analysis》99:103365

§1.5 典型应用场景

  • 眼底疾病智能筛查(二分类):训练正常 vs 异常判别器,作为基层眼科预检工具的原型,验证其对完整疾病谱而非单病的召回能力。
  • 多病种多标签诊断:对一张眼底图同时预测糖尿病视网膜病变、黄斑变性、视网膜静脉阻塞等是否存在,研究与医生"一张图看多病"的匹配度。
  • 罕见病与长尾识别:针对只有几十张甚至个位数样本的罕见病,研究类别不平衡、focal loss、few-shot/零样本在医学影像上的效果。
  • 跨数据集与跨设备泛化:将 RFMiD 作为外部验证或训练集之一,评估模型在三台不同相机(分辨率/FOV/色彩各异)与不同人群间的稳健性。
  • 眼底表示学习 / 迁移基线:把在大规模眼底或自然图像上预训练的编码器在 RFMiD 多标签任务上微调,作为眼科影像领域通用基线的对比锚点。

§2 医学背景

§2.1 ICD-11 疾病编码映射表

RFMiD 的 45 种疾病/病理标签 + 正常标签在医学上是"标签级概念",并非所有都对应正式疾病诊断实体(部分为眼底标志物如骨胶样改变、视盘杯凹等)。下表仅对其中可明确对应 ICD-11 视网膜/眼科疾病实体的高频病种做映射,属策划性映射而非数据集自带编码:

RFMiD 标签 中文名 ICD-11 实体/码 说明
DR 糖尿病视网膜病变 9B71 Retinopathy(DR 为 9B71 下分型) 数据集最大样本病种(632)
ARMD 年龄相关性黄斑变性 9B75.0 Age-related macular degeneration 黄斑区退行性变
BRVO / CRVO 视网膜静脉阻塞 9B74.1 Retinal venous occlusions 分支/中央静脉阻塞
CRAO / BRAO 视网膜动脉阻塞 9B74.0 Retinal artery occlusions 罕见但致盲
CSR 中心性浆液性脉络膜视网膜病变 9B75.2 Central serous chorioretinopathy 浆液性视网膜脱离
MH 黄斑裂孔(Media haze 冲突) ⚠️ MH 在 RFMiD 指"介质混浊"(屈光介质),非黄斑裂孔
MYA 近视 9D00(屈光)相关 / 9B76 病理性近视 近视性眼底改变
RS 视网膜炎 9B72 Inflammatory diseases of the retina 炎症性视网膜病
其余多种 罕见病/标志物 详见 RFMiD 数据描述论文附录 含血管阻塞、黄斑水肿、视神经病变等

§2.1b SNOMED CT 映射参考

SNOMED CT 为标签级临床概念映射(非数据集自带),建议在术语服务器核实后再用于编码研究:

RFMiD 标签 SNOMED CT 概念(英文) 说明
DR Diabetic retinopathy (disorder) 高频病映射明确
ARMD Age-related macular degeneration 属黄斑部疾病概念
BRVO/CRVO Retinal vein occlusion 视网膜静脉阻塞概念
CRAO/BRAO Retinal artery occlusion 视网膜动脉阻塞概念
Glaucoma Glaucoma 部分样本的视盘杯凹相关
其他 视具体标签映射 需 SNOMED 浏览器确认

注:RFMiD 原始 CSV 仅用大写缩写作标签(如 DR、ARMD、MH、DN),未附 ICD/SNOMED 编码;任何面向临床术语学的二次编码都应由领域专家结合原始临床记录完成,本表仅作研究起点,禁止直接据此做诊疗编码。

§2.2 疾病背景与流行病学

按世界卫生组织《World report on vision》2019 估计,全球约有 22 亿人存在某种形式的视力损伤,其中至少 10 亿属于本可预防或尚未得到处理的病例。眼底彩色照相通过无创观察视网膜血液循环,不仅能发现眼部疾病,还能为糖尿病、卒中、高血压、动脉硬化、心血管与神经退行性疾病等全身性疾病提供早期线索,使视网膜被视为"系统性健康的替代器官"。RFMiD 覆盖的疾病谱中,糖尿病视网膜病变、年龄相关性黄斑变性、视网膜静脉阻塞等是老年人群中常见的致盲原因;而视网膜动脉阻塞、前部缺血性视神经病变等罕见病理虽然单病种罕见,却因可导致不可逆视功能丧失而在临床筛查中具有高优先价值。RFMiD 的核心动机正是:多数既有眼底数据集只为少数高频病设计,忽略了这些在常规门诊中真实出现、却可能被 AI 与筛查系统"漏看"的少见致盲病。

§2.2b 主要病种眼底特征速览

RFMiD 数据描述论文对每类疾病/标志物的显著视觉特征作了说明。下表摘录几类高频或临床关键病种供阅读与病灶检索参考(非穷尽;完整逐类说明见论文正文与附录):

标签 眼底特征概览 临床/数据意义
DR 微动脉瘤、出血、硬/软性渗出、新生血管 最常见筛查病种,样本最多
ARMD 玻璃膜疣、地图样萎缩、黄斑区出血/新生血管 老年致盲主因,判读主观
MH 屈光介质混浊,图像偏白/雾状、对比下降 既是病种也是图像质量混杂因素
MYA 近视弧、豹纹状眼底、后巩膜葡萄肿倾向 与正常眼底边界模糊
BRVO/CRVO 沿血管分布的火焰状出血、静脉迂曲扩张 静脉阻塞类,具空间分布特征
CRAO/BRAO 视网膜急性缺血变白、樱桃红斑样改变 罕见致盲,应急就诊
TSLN 脉络膜血管透见、眼底呈豹纹纹理 非疾病,属形态标志物
ODE/ODP 视盘水肿隆起 / 视盘苍白 视神经相关,判读较难

说明:由于一张图可同时含多种病(如 DR + 黄斑水肿),多标签训练依赖上述特征可共存的事实;模型应输出多个"概率"而非互斥类别,评测也应以多标签口径进行。

§2.3 临床任务定义

  • 疾病筛查(二分类):判断一张眼底图是否存在疾病/异常(Disease_Risk = 0/1)。对应社区与临床的"是否需要转诊"预检,RIADD 子挑战 1。
  • 多病种多标签分类:预测 28 类(竞赛视图)或 45+ 病种(All_Classes 视图)中哪些存在。对应临床"一张图综合看多病"的诊断模式。
  • 罕见病 / 分级(延伸):数据集本身不提供 DR 0–4 分级(分级属其他数据集的差异化任务),但可支撑罕见病检测与"从有/无到具体诊断"的递进。
  • 眼底病灶/解剖(非本集):RFMiD 不提供像素级病灶分割或视盘/视杯分割标注,这类任务请改用 IDRiD、REFUGE 等专用分割数据集。

§2.4 患者与图像人群

属性 说明
来源机构 印度 Nanded 的 Sushrusha 医院眼科门诊 与 SGGS 学院 CEISP(CEISP 负责采集)
采集时间 2009–2020 年(跨越 11 年)
就诊类型 因眼部健康担忧而就诊的门诊患者眼底检查
人群 印度马哈拉施特拉邦 Nanded 地区临床人群(单一地区,非人群普查抽样)
检查前处理 多数患者以 1 滴 0.5% 托吡卡胺散瞳(mydriasis)
图像视角 每图以黄斑或视盘为中心
说明 数据集以图像为单位发布,公开 CSV 不含患者级人口学(年龄/性别/种族)明细

§2.5 临床价值

RFMiD 的临床价值在于"把筛查范式从单病扩展到疾病谱"。基层眼科与远程筛查工具如果只在糖尿病视网膜病变、青光眼等少数病种上训练,那么在真实门诊遇到介质混浊、视网膜动脉阻塞、缺血性视神经病变等少见但致盲的情况时会漏诊。RFMiD 通过标注完整疾病谱 + 固定三折划分,为训练"全谱"筛查模型、测试其长尾召回率提供统一素材,也常被作为眼底表示学习与跨数据泛化的评测锚点,帮助评估模型在脱离训练分布的设备与人群上是否退化。

§2.6 金标准描述

维度 说明
划分 官方固定 60/20/20:训练 1,920 / 验证 640 / 测试 640
标注者 两位高级视网膜专家(senior retinal experts)独立标注
金标准依据 以患者临床记录 + 视野的综合评估作为疾病"存在与否"的参考标准
共识方式 独立标注完成后,项目负责人复核;发现差异时会同两位专家会商裁定,形成 adjudicated consensus
多标签性质 同一图像可同时含多种疾病,允许多个标签为 1(多标签非单标签)
输出 三份 CSV:Training / Validation / Testing Labels

§2.6b RIADD 挑战组织与使用要求(背景)

RFMiD 最初作为 RIADD(Retinal Image Analysis for multi-Disease Detection)挑战的官方数据在 IEEE ISBI-2021 期间公开。据挑战主页 Rules,其使用/评测约定对理解该数据的"官方口径"有参考价值:

  • 两个子挑战:子挑战 1 为疾病筛查(正常 vs 异常,二分类);子挑战 2 为疾病/病理分类(28 类多标签)。
  • 参与限制:注册信息须完整真实,不接受匿名注册。
  • 结果披露:上传结果的评测会公开到排行榜,提交即授权官方发布评测。
  • 提交频次:每位参与者/团队每日最多 5 次提交;进入最终轮须提交 4 页 ISBI 风格方法论文。
  • 允许外部公开数据:参与者可使用其他公开数据集(如 Kaggle DR、IDRiD、Messidor、APTOS),但须在提交论文中说明来源。
  • 智力成果归属:参赛团队保有各自算法的所有权;顶部团队获邀合著挑战总结论文(每队每子挑战至多 2 名作者)。

说明:RFMiD 后来已脱离竞赛作为独立公开数据集使用;官方固定三折与"筛查/28 类"评测口径仍被大量复现研究沿用。


§3 数据集规格

§3.0 版本抉择矩阵

RFMiD 目前存在两套相关版本/视图,使用时必须先明确目标,避免混用:

你的需求 推荐选择 说明
疾病筛查(正常 vs 异常) Challenge 视图 与 RIADD 官方基准可比;主要用 Disease_Risk 列
多病种多标签分类 All_Classes 视图 45 种疾病全谱标注,最贴近完整疾病谱研究
复现 RIADD 挑战结果 Challenge 视图 28 类(含 OTHER 合并),与竞赛评测定义一致
罕见病细分研究 RFMiD 2.0(2023) 把 Challenge 中笼统的 OTHER 细分为具体疾病,类别质量更高
跨版本消融 需自行对齐标签 RFMiD 1.0 与 2.0 标签定义不同,不可直接混用

§3.1 模态详情

RFMiD 为单一模态——2D 彩色眼底照相(color fundus photograph,CFP)。图像为 RGB 彩色、以黄斑或视盘为中心的眼底视图,成像设备为三台不同眼底相机,因而分辨率和视场角(FOV)并不统一。三台相机及其在本数据集中的图像数与规格如下(来源:Pachade et al. 2021 数据描述论文 Table 2):

相机型号 配套相机硬件 FOV 分辨率(像素) 图像数
TOPCON 3D OCT-2000 Nikon D7000 45° 2,144 × 1,424 2,427
Kowa VX-10α Nikon D70s 50° 4,288 × 2,848 467
TOPCON TRC-NW300 一体化数字 CCD 45° 2,048 × 1,536 306
合计 3,200

数据质量说明:作者刻意从 2009–2020 年间数千次检查中抽取 3,200 张,同时纳入高质量与低质量图像,使数据集对真实世界的成像质量变化更具挑战性与代表性。

§3.2 按子集与标签视图的样本数

子集 图像数 占比 说明
训练(Training) 1,920 60% 官方发布含图 + 金标准 CSV
验证(Validation/Evaluation) 640 20% 官方发布含图 + 金标准 CSV
测试(Test) 640 20% 竞赛中测试金标准隐藏;后期逐步公开
合计 3,200 100% 三个子集合计 3,200

标注视图维度:All_Classes 视图提供 1 个 Disease_Risk + 45 个疾病标签共 46 条件;Challenge 视图提供 28 类(≥10 张样本的疾病独立成类,其余并成 OTHER)。疾病按类别在训练/验证/测试中的分层比例平均约为 60±7% / 20±7% / 20±5%(来源:RIADD 挑战论文)。

§3.3 数据格式

文件类型 内容 格式
图像 单张眼底彩照 PNG(RGB,分辨率见 §3.1)
标注 逐图多标签真值 CSV(逗号分隔,宽格式)
打包 官方分发包 ZIP(含图片文件夹 + CSV)

说明:CSV 每行对应一张图像(以 ID 标识),每列为一个 0/1 标签,列顺序为 ID、Disease_Risk 后接各疾病缩写(DR、ARMD、MH、DN … 直至 CL 等)。

§3.4 存储大小参考

RFMiD 2.0 在 IEEE DataPort 的公开分卷提供了量级参考:RFMiD2_0.zip 约 60.71 MB、Training_set.zip 约 35.49 MB、Validation_set.zip 约 12.64 MB、Test_set.zip 约 12.59 MB。RFMiD 1.0 原始分发包体积以官方下载页为准(图像为主、数百 MB 量级),建议下载前预留充足磁盘空间并核对平台说明。

§3.5 标注方式

  • 人工专家标注:两位高级视网膜专家逐张独立人工标注,非自动/弱监督生成。
  • 金标准参照:综合患者临床记录与视野的评估,而非仅凭图像肉眼判读,提高标签可信度。
  • 裁定式共识:独立标注完成后,项目负责人核查,差异处会同两位专家会商裁定,减少单专家主观偏差。
  • 多标签赋值:若一张图像含多种疾病则同时赋多个标签,忠实反映共病现实。
  • 说明:本数据集不提供像素级病灶分割或解剖结构分割标注;RFMiD 面向分类任务。

§3.6 标注者资质与一致性

  • 标注者为高级视网膜专家(两名),属领域高年资,具备视网膜影像判读能力。
  • 论文以"adjudicated consensus"描述一致性流程,但未公开逐对标注者间的 Kappa/一致性数值;需二次研究时建议参考其数据描述论文附录并自行抽样验证。
  • 罕见病因个体数少,标注的"存在/不存在"边界(尤其与正常或低置信度视觉特征区分时)可能更易受主观性影响。

§3.7 采集周期与设备

  • 采集周期:2009–2020 年。
  • 采集地点:印度 Nanded 的 Sushrusha 医院眼科门诊 与 SGGS 学院 CEISP。
  • 检查前处理:多数患者用 1 滴 0.5% 托吡卡胺散瞳。
  • 相机与镜头-眼距:Kowa VX-10 为 39 mm;TOPCON 3D OCT-2000 与 TOPCON TRC-NW300 为 40.7 mm。
  • 成像部位:黄斑中心或视盘中心。

§3.8 地域覆盖

数据全部来自印度马哈拉施特拉邦 Nanded 地区的一家临床眼科环境。单一地区来源带来人群与眼底表现(色素、屈光、视网膜特征分布)的偏倚,跨地区/跨人群推广前须做外部验证(详见 §7)。

§3.9 设备规格汇总

属性
模态 彩色眼底照相(非 OCT)
FOV 45°–50°
分辨率 2,048×1,536 至 4,288×2,848 不等
相机数量 3 台(TOPCON / Kowa / TOPCON)
颜色 RGB
图像定位 黄斑 / 视盘中心

§3.10 深度溯源链

  • 采集源:2009–2020 年临床门诊眼底检查。
  • 机构链路:Sushrusha 医院眼科门诊(临床采集)+ SGGS 学院 CEISP(数据工程)。
  • 标注:两位高级视网膜专家 + 项目负责人裁定共识。
  • 分发:RIADD Grand Challenge(官方)→ IEEE DataPort(镜像/元数据)→ 社区镜像(Kaggle、Hugging Face 转发,需注意来源一致性)。
  • 版本沿革:RFMiD 1.0(本条目主体)→ RFMiD 2.0(2023,标签细分)。

§4 数据结构详解

§4.0 目录树

解压官方 RFMiD_All_Classes(或 Challenge)分发包后,典型目录结构如下。注意:不同来源(Grand Challenge / IEEE DataPort / 社区镜像)目录组织可能略有差异,下面以官方 Challenge/All-Classes 常见布局为准:

RFMiD_All_Classes/            # 或 RFMiD_Challenge_Dataset/
├── Training/                 # 训练图(1,920 张)
│   ├── 1.png
│   ├── 2.png
│   ├── ...
│   └── 1920.png
├── Validation/               # 验证图(640 张)
│   ├── 1.png
│   ├── ...
│   └── 640.png
├── Test/                     # 测试图(640 张,Challenge 测试金标准曾隐藏)
│   ├── 1.png
│   └── ...
├── RFMiD_Training_Labels.csv     # 训练标签
├── RFMiD_Validation_Labels.csv   # 验证标签
└── RFMiD_Testing_Labels.csv      # 测试标签

说明:图像按整数 ID 命名并与 CSV 中 ID 列一一对应;测试子集金标准在 RIADD 竞赛期间被隐藏,官方后续逐步公开。Challenge 视图与 All_Classes 视图共用同一批图像,仅标签文件列集不同(28 类 vs 46 条件)。

§4.1 DAIMS 字段字典(核心 CSV)

下表以 All_Classes 训练标签 CSV 为例,给出核心字段字典(类型/说明/示例/AI 用途/观测误差/信息性缺失编码/取值范围):

字段名 类型 说明 示例 AI 用途 观测误差 缺失编码 取值范围
ID int 图像身份号,与 PNG 文件名一致 1 关联图像与标签 无(主键) 不适用 1–3,200
Disease_Risk int 全图是否存在疾病/异常的总体风险标志 1 二分类筛查靶标 依赖专家判定 0 视为"无风险" 0/1
DR int 糖尿病视网膜病变是否存在 1 多标签分类 罕见早期病灶可漏标 0 0/1
ARMD int 年龄相关性黄斑变性是否存在 0 多标签分类 早期/地图样萎缩判读主观 0 0/1
MH int 介质混浊(Media Haze)是否存在 1 多标签分类 + 图像质量 命名易与"黄斑裂孔"混淆 0 0/1
DN int 玻璃膜疣/Drusen 是否存在 0 多标签分类 大小数量判读差异 0 0/1
MYA int 近视(近视性眼底改变) 1 多标签分类 与正常屈光眼底边界模糊 0 0/1
BRVO int 分支视网膜静脉阻塞 0 多标签分类 出血范围判读主观 0 0/1
TSLN int 豹纹状眼底(tessellation) 1 多标签分类(标志物) 非疾病,为眼底形态标志 0 0/1
int 其余疾病/标志物标签 0 多标签分类 罕见病判读主观 0 0/1
CL int 脉络膜视网膜侧支(collateral)是否存在 0 多标签分类 罕见标志物 0 0/1

注:CSV 中标签以列缩写命名;同一张图像允许多列同时为 1(多标签)。原始 CSV 不含显式"NA"缺失标记——某标签为 0 表示专家判定该病不存在,而非数据缺失;"信息性缺失"主要体现在图像本身质量不足、难以判读的低置信度情形,官方未单列标记列。

§4.2 标签分布(数量级概览)

RFMiD 高度类别不平衡。以 RIADD 挑战论文公开的逐类图像计数为基础(训练/验证/测试三折合计;来源 Table 逐类计数),主要病种样本量级大致如下(供选型参考,精确计数以论文为准):

疾病/标志物 合计图像数(量级) 说明
正常(Normal) ~2,500(训练/验证/测试合计口径不一,以官方为准) 训练集 Normal 1,519 张量级
DR(糖尿病视网膜病变) ~630 最大病种
MH(介质混浊) ~520 第二大病种
TSLN(豹纹状眼底) ~300 近视相关标志物
ODC(视盘杯凹) ~280 训练量级 青光眼相关
ARMD ~170 量级 黄斑变性
MYA(近视) ~170 量级
ODE / ODP(视盘水肿/苍白) 数十至百 视神经相关
其余 30+ 罕见病 个位数至数十 含 CRAO、BRAO、HPED 等,极长尾

要点:不少罕见病样本 <50 甚至 <10 张,存在极端长尾;Challenge 视图将 >10 张者独立成类、其余并入 OTHER,正是为缓解这种长尾。

§4.3 关键统计

  • 图像总数:3,200。
  • 三折:训练 1,920 / 验证 640 / 测试 640。
  • 相机图像分布:TOPCON 3D OCT-2000 2,427 / Kowa VX-10α 467 / TOPCON TRC-NW300 306。
  • 条件数:All_Classes 46 条件(1 正常 + 45 疾病/标志物);Challenge 分类 28 类。
  • 多标签性质:每图可为 0 个(正常)、1 个或多个疾病标签为 1。

§4.4 数据层级

RFMiD 为图像级数据集,无患者→多检查→多序列的层级结构:每张眼底图是一个独立样本(一条 CSV 行),图像与患者没有在公开 CSV 中显式关联(未披露患者级明细)。因此不存在序列/切片聚合问题,但也不支持患者级划分或随访建模——这既是简单性也是局限性。

§4.5 缺失值与信息性缺失

  • CSV 标签无显式缺失标记:某病列 = 0 视为"专家判定不存在",而非"未评估"。
  • 图像层面的"信息性缺失":低质量/模糊/视场截断的图像更难判读,可能导致标签保守化或漏标;作者虽刻意纳入低质量图以增强鲁棒性,但并未单独标注每张图的可判读度。
  • 建议:做与图像质量相关的研究时,自行补充质量分级或采用能抑制低质量噪声的预处理,并将"难以判读"作为一个可能的混淆因素写入局限分析。

§4.6 标签速查与视图对照(常用缩写)

RFMiD 用大写缩写命名标签列,理解缩写是避免语义错配的第一步。下表汇总数据描述论文中出现的常见缩写及其中文含义(分类:DR=疾病,M=眼底标志物/形态,O=其他病变);挑战视图把这些类别归并为 28 组(>10 张独立 + OTHER),下表仅列高频/易混淆项:

缩写 中文 类型 易混淆点
Disease_Risk 全图疾病风险标志 总标志 独立于各病种列
DR 糖尿病视网膜病变 疾病 高频病
ARMD 年龄相关性黄斑变性 疾病 与 DN/玻璃膜疣相关
MH 介质混浊(Media Haze) 标志物 ⚠️ 非"黄斑裂孔"
DN 玻璃膜疣(Drusen) 标志物/疾病 与 ARMD 相关
MYA 近视(近视性眼底改变) 疾病/标志物 与 TSLN 相关
BRVO / CRVO 分支/中央视网膜静脉阻塞 疾病 视网膜血管阻塞类
CRAO / BRAO 中央/分支视网膜动脉阻塞 疾病 罕见致盲
CSR 中心性浆液性脉络膜视网膜病变 疾病 易与黄斑水肿混淆
TSLN 豹纹状眼底(tessellation) 标志物 近视相关形态
ODC 视盘杯凹(optic disc cupping) 标志物 与青光眼相关
ODE 视盘水肿(optic disc edema) 体征 视神经相关
ODP 视盘苍白(optic disc pallor) 体征 对 AI 与专家均难
CL 脉络膜侧支(collateral) 标志物 罕见标志物
OTHER 其余合并类(仅 Challenge 视图) 合并类 含极罕见病,无单一语义

要点:All_Classes 视图保留上述 45 个具体疾病/标志物列;Challenge 视图把 OTHER 作为一列、总类数 28(含正常筛查用 Disease_Risk 语义的对偶视图)。跨数据集或跨论文对齐时,请用全名与数据描述论文附录核对,勿仅凭缩写比对。


§5 数据划分与使用建议

§5.1 官方划分

RFMiD 官方提供固定的三折划分(来源:Pachade et al. 2021 数据描述论文):

子集 图像数 占比 用途
训练(Training) 1,920 60% 模型训练(含金标准 CSV)
验证(Validation) 640 20% 超参与早期评估(含金标准 CSV)
测试(Test) 640 20% 最终评测(竞赛期间金标准隐藏,后期公开)

疾病按类别在三折的分层比例平均约为 60±7% / 20±7% / 20±5%,即每类在三个子集的比例大致与整体 60/20/20 一致,便于类别均衡下的可比评测。

§5.2 社区惯例划分

  • 多数研究直接采用官方 60/20/20 三折,不做重切分,以便与 RIADD 基准及后续论文横向对比。
  • 对仅需训练/测试两项的研究,常把官方训练 + 验证合并(1,920 + 640 = 2,560)作为训练,官方测试(640)作为测试。
  • 跨数据集研究会把 RFMiD 测试(或验证)当作外部评测集,评估在 ODIR、EyePACS 等上训练的模型的泛化(已有研究以 ODIR 训练、RFMiD 验证的模式)。
  • 说明:部分社区镜像为便于加载会重命名文件或重排 CSV 列;复现时应记录所用来源与列集,避免标签视图混用。

§5.3 数据泄漏风险(重点)

  • 同一图像出现在多折:官方三折已互斥,理论上不存在同一图像跨折问题;但社区镜像若把 Challenge 与 All_Classes 两套 CSV 当作"两批数据"分别喂入同一训练管线,会造成图像级重复与标签不一致,间接引入泄漏。
  • 跨数据集重复样本:RFMiD 与 IDRiD、ODIR 同源部分来自印度眼底影像生态,若同时把同源数据(尤其 IDRiD)放进训练又与 RFMiD 同测,可能在共享分布上虚高泛化。
  • 相机域作为捷径:模型可能"记住"相机(分辨率/FOV/色彩),若三折相机分布失衡,测试时会把"相机身份"当特征,造成病种性能的伪影。建议报告按相机分层的结果。
  • 患者级泄漏的缺失:公开 CSV 不披露患者映射,无法做严格的患者级 GroupShuffle 再划分;这使"同一患者的双眼/多图"可能在训练与测试间并存,影响跨图泛化评估的纯净度。

§5.4 交叉验证建议

  • 若需更稳的估计,可在官方训练 + 验证(2,560)上做 K 折交叉验证,但务必保留官方测试作为最终 unseen 评测。
  • 由于罕见病样本极少,分层 K 折应基于病种标签做分层抽样;对极罕见类,可考虑"至少保留在训练或验证"的约束而非强制每折都含。
  • 若关注相机泛化,可做"留一台相机/留分辨率"的分组交叉验证(如 Kowa 或 TRC 作为外测),评估设备鲁棒性。

§5.5 外部验证建议

  • 将模型在 RFMiD 上训练后在独立眼底数据(IDRiD、ODIR、EyePACS、Messidor、APTOS 等)上评测,关注跨设备/跨人群的 AUC 变化。
  • 反向亦可:在 ODIR 等上预训练、在 RFMiD 上微调,验证"预训练分布外是否仍有效"。
  • 报告时必须说明两数据集病种标签口径的差异(RFMiD 多标签含罕见病,部分外部集为单标签 DR 分级),仅可比对两者都覆盖的病种,避免把"标签集合不同"误判为"模型缺陷"。

§6 AI 就绪指南

本节给出从数据下载、目录布局、多标签训练到评估的一站式可运行 PyTorch 指南。核心约定:data_root 指向解压后的根目录,其下为 Training/(或 Training_Set/)等子文件夹与三份标签 CSV。请先明确你用的是 All_Classes(45 病种)还是 Challenge(28 类)视图,再对应加载不同的 CSV 列集。

§6.0 云端 / 程序化快速启动

若你想跳过手动申请、直接以程序化方式取用社区整理版(例如用 Hugging Face 的 datasets),可参考下面骨架。注意:第三方转发可能改动目录/列集,正式复现请回到官方 Grand Challenge 或 IEEE DataPort 源;以下仅作快速原型演示:

# 云端快速启动示例(社区镜像,非官方分发)
# 先确认镜像遵循 CC BY 4.0 且列集与你目标视图一致再使用。
from datasets import load_dataset

# 选择一个已发布 RFMiD 镜像(此处仅为示意;镜像名请按实际搜索确认)
ds = load_dataset("SomeHub/rfmid")
train = ds["train"]
print("样本数:", len(train))
print("示例字段:", train[0].keys())

提示:不少 Kaggle / Hugging Face 镜像把"图 + 标签"打包成便于 datasets 直接读取的形式,能省去手动解压 CSV 的步骤;但请务必核对正样本列定义(Disease_Risk 之外的各病种列)与官方 All_Classes / Challenge 一致后再用于正式训练。官方渠道的完整性与可追溯性最高,云端镜像更适合快速验证代码路径。

§6.1 快速上手(目录注释)

在使用前,请先确认识别到的目录与文件。以下是加载训练数据的最小代码骨架,含目录结构预期的注释:

# 约定目录布局(请按实际解压结果调整):
#   rfmid_root/
#     Training/              -> 训练图像 *.png
#     Validation/            -> 验证图像 *.png
#     Test/                  -> 测试图像 *.png
#     RFMiD_Training_Labels.csv
#     RFMiD_Validation_Labels.csv
#     RFMiD_Testing_Labels.csv
#
# 以 All_Classes 视图为例:CSV 第 1 列为 ID,第 2 列为 Disease_Risk,
# 之后每列对应一种疾病标签。Challenge 视图列更少(28 类含 OTHER)。
#
# 注意:不同下载源可能用 "Training_Set/1.png" 或 "Training/1.png",
# 请先 print(os.listdir(root)) 核对实际文件夹名。

import os, pandas as pd

data_root = "path/to/rfmid_root"          # 改为你的解压根目录
img_dir   = os.path.join(data_root, "Training")

# 读取训练标签(All_Classes 视图)
df = pd.read_csv(os.path.join(data_root, "RFMiD_Training_Labels.csv"))
print("行数(图像数):", len(df))
print("列名(标签):", df.columns.tolist())
# 建议打印前 3 行核对 ID 与标签的 0/1 结构
print(df.head(3))

说明:最小可用子集是官方训练 + 验证(共 2,560 张,均含金标准),足够跑通筛查二分类与主流多标签实验;测试 640 张仅用于最终评测。

§6.2 数据获取

下载要点(表 + 说明):

渠道 需登录 视图 备注
RIADD Grand Challenge All_Classes + Challenge 官方权威来源
IEEE DataPort(1.0) 同上 DOI 10.21227/s3g7-st65
IEEE DataPort(2.0) 45 病种 DOI 10.21227/mrd2-ap11
Kaggle / HF 镜像 视平台 多为 All_Classes 需核对列集与来源一致性

§6.3 预处理全流程

本数据集以标准 PNG + CSV 交付,格式转换不是主要障碍,重心在图像统一尺寸多标签损失。参考管线:

# 1) 清洗:确认 ID 与文件名对应、无重复、标签值域为 {0,1}
def load_labels(csv_path):
    df = pd.read_csv(csv_path)
    assert df["ID"].is_unique, "存在重复 ID"
    label_cols = df.columns[2:]            # 跳过 ID、Disease_Risk
    assert set(df[label_cols].values.ravel()).issubset({0, 1}), "标签应为 0/1"
    return df, label_cols

# 2) 图像读取 + 尺寸统一:因相机分辨率不同,建议统一 resize
import cv2, numpy as np

def load_image(path, size=(512, 512)):
    img = cv2.imread(path, cv2.IMREAD_COLOR)   # BGR
    img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
    img = cv2.resize(img, size)                # 统一分辨率
    return img.astype(np.float32) / 255.0

说明:统一尺寸建议 512×512 或 768×768(RIADD 顶部团队多用 768/960 并做多分辨率集成)。若相机分辨率悬殊(2,048×1,536 vs 4,288×2,848),建议记录相机域信息以做域分析,而非只做一次缩放。

§6.3b 类别不平衡 EDA 与 pos_weight 计算

多标签长尾决定了先诊断分布再定损失。下面代码打印各类正样本数并据此生成 BCEWithLogitsLosspos_weight

import pandas as pd, numpy as np, torch

df = pd.read_csv("rfmid_root/RFMiD_Training_Labels.csv")
label_cols = df.columns[2:]                 # All_Classes:跳过 ID、Disease_Risk
y = df[label_cols].astype(int).values
pos = y.sum(axis=0)                          # 各类正样本数
neg = y.shape[0] - pos                       # 各类负样本数
freq = pd.Series(pos / y.shape[0], index=label_cols).sort_values(ascending=False)

print("类别数:", len(label_cols))
print("各类正样本占比 Top10:\n", freq.head(10).round(4))
print("正样本 <50 的类别数:", int((pos < 50).sum()))   # 长尾规模提示

# 逐类 pos_weight = neg/pos,供 BCEWithLogitsLoss 缓解不平衡
pos_weight = torch.tensor((neg / np.maximum(pos, 1)).astype(np.float32))
loss_fn = torch.nn.BCEWithLogitsLoss(pos_weight=pos_weight)

# 补充:对 pos==0 的类别(训练集完全无正例)单独提示,避免 nan
if (pos == 0).any():
    print("警告:以下类别在训练集无正样本:", label_cols[pos == 0].tolist())

说明:pos_weight=neg/pos 让低频病类的正误判获得更大惩罚,是对抗长尾的第一步;对训练集完全无正例的类别,模型无法学会其阳性形态,需换 Challenge 的 OTHER 归并或引入外部同病数据。

§6.3c 相机/色彩域归一化(可选增强)

三台相机色彩与取景差异大,若不做任何色彩归一化,模型可能把"某台相机的色偏"当判别线索。下面给出一个轻量的全局直方图匹配参考实现(可置于 DataLoader 的 transform 前;数据集级可改用全图均值/方差对齐):

# 轻量色彩归一化:把每张图缩放到统一强度统计(示意)
import numpy as np

def normalize_illumination(img_rgb):
    """img_rgb: float32 in [0,1], shape (H,W,3)。按通道做均值-方差白化近似。"""
    per_channel_mean = img_rgb.mean(axis=(0, 1), keepdims=True)
    per_channel_std  = img_rgb.std(axis=(0, 1), keepdims=True) + 1e-6
    return (img_rgb - per_channel_mean) / per_channel_std * 0.2 + 0.5

# 说明:
# 1) 该操作是"样本内"标准化,不引入对全集的统计泄漏;
# 2) 若你想要更强的跨相机一致性,可用灰度直方图匹配或 CLAHE;
# 3) 不要对低质量图过度增强,以免放大伪影(见 §6.6)。

提示:先做"按相机留一验证"判断色彩域影响是否显著,再决定是否上色彩归一化;若内部性能与按相机分组性能差距大,说明模型依赖相机捷径,此时归一化比换更大模型更对症。

§6.4 PyTorch DataLoader 完整可运行代码

下列代码定义了一个可直接用于多标签分类的 Dataset,支持 All_Classes 45 病种与 Challenge 28 类两种视图(通过 view 参数切换标签列集):

import os
import torch
from torch.utils.data import Dataset, DataLoader
from torchvision import transforms
from PIL import Image
import pandas as pd

class RFMiDDataset(Dataset):
    """RFMiD 多标签眼底数据集。

    args:
        csv_path: 某子集标签 CSV 绝对路径
        img_dir : 对应子集图像文件夹绝对路径
        view    : 'all_classes'(默认) 或 'challenge'
        target_size: 统一图像尺寸
    """
    def __init__(self, csv_path, img_dir, view="all_classes",
                 target_size=512, train=True):
        self.df = pd.read_csv(csv_path)
        self.img_dir = img_dir
        self.train = train
        # 标签列:challenge 只含 28 类;all_classes 排除 ID 与 Disease_Risk
        if view == "challenge":
            # challenge 视图中常见首列为 ID、其余 28 列为类
            self.label_cols = self.df.columns[1:].tolist()
        else:
            self.label_cols = self.df.columns[2:].tolist()  # 跳过 ID, Disease_Risk
        self.labels = self.df[self.label_cols].astype(int).values

        self.transform = None
        if train:
            self.transform = transforms.Compose([
                transforms.Resize((target_size, target_size)),
                transforms.RandomHorizontalFlip(),
                transforms.ToTensor(),
                transforms.Normalize(mean=[0.485, 0.456, 0.406],
                                     std=[0.229, 0.224, 0.225]),
            ])
        else:
            self.transform = transforms.Compose([
                transforms.Resize((target_size, target_size)),
                transforms.ToTensor(),
                transforms.Normalize(mean=[0.485, 0.456, 0.406],
                                     std=[0.229, 0.224, 0.225]),
            ])

    def __len__(self):
        return len(self.df)

    def __getitem__(self, idx):
        row = self.df.iloc[idx]
        img_id = int(row["ID"])
        path = os.path.join(self.img_dir, f"{img_id}.png")
        img = Image.open(path).convert("RGB")
        if self.transform is not None:
            img = self.transform(img)
        target = torch.tensor(self.labels[idx], dtype=torch.float32)
        return img, target


# 实例化(路径请替换为你的实际目录)
train_ds = RFMiDDataset(
    csv_path="rfmid_root/RFMiD_Training_Labels.csv",
    img_dir="rfmid_root/Training",
    view="all_classes",
    target_size=512,
    train=True,
)
train_loader = DataLoader(train_ds, batch_size=32, shuffle=True,
                          num_workers=4)

# 冒烟测试:取一个 batch 验证形状
imgs, labels = next(iter(train_loader))
print("batch 图像张量:", imgs.shape)      # (B, 3, 512, 512)
print("batch 标签张量:", labels.shape)     # (B, n_labels)

说明:多标签损失建议用带 pos_weight 的二值交叉熵(torch.nn.BCEWithLogitsLoss(pos_weight=...)),pos_weight 可由每类正样本比例反推,缓解类别不平衡(详见坑点 2 与 §6.5)。

§6.5 八个 RFMiD 特有坑点

⚠️ 坑点 1:All_Classes 46 条件 vs Challenge 28 类——两套标签不能混用(分类:标签理解)

问题:官方把同一批 3,200 张图提供了两套标注:All_Classes(1 个 Disease_Risk + 45 个疾病标签 = 46 列)与 Challenge(28 类,其中样本 ≤10 张的疾病被并成 OTHER)。论文常报"46 病种"或"28 类",若你在不同论文/镜像间把两类 CSV 混喂进同一管线,标签维度与语义都对不上。

症状:loss 维度不匹配(46 vs 28);把 OTHER 类当独立疾病算指标;复现某论文精度时训练/评测列集不一致导致无法对齐。

解决:先明确你要对齐的基准视图;All_Classes 用于完整病谱、Challenge 用于 RIADD 竞赛复现;在代码里把视图名显式记录进配置与输出文件名(如 view="challenge"),禁止在训练与评测间切换视图。

参考https://doi.org/10.21227/s3g7-st65https://hal.science/hal-05304065v1

⚠️ 坑点 2:极端长尾与类别不平衡——少数病只出现几次(分类:标签理解)

问题:RFMiD 罕见病样本极少(不少 <50 甚至 <10 张),普通 BCE + Adam 会把罕见类压成恒为"不存在",个别极罕见病在训练集甚至可能"正样本缺席"。

症状:罕见类 precision/recall 接近 0、不随 epoch 上升;多数类(DR、MH)主导 loss,模型退化为只看高频病。

解决:给 BCEWithLogitsLosspos_weight(= 负样本数 / 正样本数,逐类)或换 Focal / Asymmetric Loss(RIADD 顶部团队实证 loss 选择影响常大于架构);对极罕见类做欠采样/过采样或按 Challenge 的 OTHER 归并。

参考https://doi.org/10.1016/j.media.2024.103365 (Asymmetric/Focal 用法);Lacuna 摘要。

⚠️ 坑点 3:MH 标签是"介质混浊"不是"黄斑裂孔"——缩写歧义(分类:标签理解)

问题:RFMiD 用 MH(Media Haze)表示屈光介质混浊,与眼科其他语境中 MH = Macular Hole(黄斑裂孔)撞缩写。误读后会把"介质混浊"当黄斑裂孔去对文献,语义全错。

症状:医疗背景描述错误、跨数据集标签对齐时把不同病当成同一病、讨论黄斑裂孔却用 Media Haze 样本。

解决:以 RFMiD 数据描述论文的标签缩写表为准建立映射字典;凡涉缩写先查 RFMiD_Training_Labels.csv 列含义;跨数据对齐时按全名匹配,勿按缩写猜测。

参考https://doi.org/10.3390/data6020014 (CSV 列含义说明)。

⚠️ 坑点 4:下载后 ground truth CSV 缺失/为空——获取渠道的陷阱(分类:工程陷阱)

问题:IEEE DataPort 评论区多位用户反映解压后 ground truth CSV 缺失或显示为空,实际是某些镜像/打包把标签单独存放或需在挑战页面二次下载金标准,而非数据集真缺失。

症状pd.read_csv 报 FileNotFoundError 或返回空表;训练无标签可用。

解决:优先用 RIADD Grand Challenge 官方下载页拿图 + 金标准;下载后先 assert len(open(csv).readlines())>1 核验;若为空去官方页面按 All_Classes / Challenge 分别取对应 CSV,勿从标注缺失的镜像硬凑。

参考https://doi.org/10.21227/s3g7-st65 (评论区反馈)。

⚠️ 坑点 5:三台相机分辨率/FOV 不统一——把"相机域"误当病种特征(分类:偏倚陷阱)

问题:图像来自 TOPCON 3D OCT-2000(2,144×1,424,2,427 张)、Kowa VX-10(4,288×2,848)、TOPCON TRC-NW300(2,048×1,536)。模型易"记住"分辨率/色偏/FOV 而非病变,跨相机泛化退化。

症状:内部测试精度虚高,但按相机留一验证或上真实 Kowa/TRC 图像时 AUC 大跌;某台相机的病全被误判。

解决:统一 resize 并做颜色/直方图归一化;训练记录每张图的相机源做"留相机"分组验证;RIADD 顶部团队用多分辨率(768/960)集成抑制该偏倚。

参考https://www.researchgate.net/publication/348994714https://hal.science/hal-05304065v1

⚠️ 坑点 6:RFMiD 1.0 与 RFMiD 2.0 标签定义不同——版本混用破坏复现(分类:工程陷阱)

问题:RFMiD 2.0(2023)把 1.0 Challenge 里笼统的 OTHER 细分还原为具体罕见病,疾病数/类目与 1.0 不一致;不少人把 1.0 图 + 2.0 标签当同一份数据。

症状:训练标签与评测标签类目对不上;复现 1.0 论文却拿到 2.0 标签,罕见病类目错位。

解决:明确"我的实验基于哪个版本";若对比 1.0 基线,就只用 1.0 官方 CSV;引用时写明版本(RFMiD 1.0 / RFMiD 2.0)与对应 DOI,勿混。

参考https://github.com/openmedlab/Awesome-Medical-Dataset/blob/main/resources/RFMiD.mdhttps://www.mdpi.com/2306-5729/8/2/29

⚠️ 坑点 7:只报 accuracy 会严重误导——长尾下精确率被多数类主导(分类:评估误用)

问题:罕见病占样本比例极低,全图预测"无病"或"只有高频病"也能拿到高 accuracy;多标签 + 长尾下 accuracy/mAP 口径不同会得出相反结论。

症状:单一 accuracy 高但罕见病全漏;用 macro-average 与 micro-average 得到的"最好模型"不一致。

解决:报 macro/micro AUC、各类别 recall(尤其罕见病)、以及 RIADD 采用的平均分(AUC + mAP);对罕见病逐类报告并说明类别计数;勿只用单一阈值 accuracy 定 SOTA。

参考https://doi.org/10.1016/j.media.2024.103365 (官方评估口径:AUC 与 mAP)。

⚠️ 坑点 8:单一印度地区来源的偏倚——把 RFMiD 内指标当"普适"声明(分类:偏倚陷阱)

问题:数据全来自印度 Nanded 一家眼科环境(2009–2020),人群与眼底表现(色素、近视、DR 分布)与其他地区差异大;低质量图+单一地区会放大此偏倚。

症状:在 RFMiD 上 AUC 很高,迁移到 ODIR/EyePACS/欧洲人群时显著退化(跨数据集研究已观察到性能下滑);论文把单数据集结果写成临床普适结论。

解决:把 RFMiD 当"训练/内测"而非"临床泛化证明";至少做一次外部眼底数据验证并报告相对变化;结论限定于训练分布人群。

参考https://lacuna.tiptreesystems.com/paper/… (局限讨论:人口偏倚);跨数据集研究(Pham et al. 2024)。

§6.6 数据增强

安全(推荐用于眼底彩照)

  • 轻度随机水平/垂直翻转(眼底左右眼翻转需谨慎,水平翻转较安全)。
  • 轻度旋转(±10°–15°)与平移/缩放。
  • 色彩抖动(亮度、对比度、饱和度微调)——可缓解相机色彩差异,但幅度不宜过大以免引入伪色。
  • 随机裁切 + resize(可增强对 FOV/取景差异的鲁棒性)。

危险(避免)

  • ❌ 大幅旋转/翻转可能破坏视盘-黄斑空间关系与左右眼对称性,扭曲病种判读。
  • ❌ 过度色彩/锐化增强会放大相机色偏与低质量伪影,掩盖真实病变纹理。
  • ❌ 对极罕见类做随机几何增强时,可能把本就模糊的少数样本增强到失真,反而损害判读。
  • ❌ 对图像做与疾病外观耦合的增强(如模拟出血/渗出)会引入标注与伪病变不一致,破坏金标准可信度。

§6.7 模型推荐表

任务 推荐模型 说明
疾病筛查(二分类) EfficientNet-B0/B1、ResNet-50 任务已近饱和,轻量 CNN 即可;RIADD 筛查 AUC >0.98
多标签 28/45 类分类 EfficientNet-B3/B5 + Focal/Asymmetric RIADD 顶部 KAMATALAB 用 EfficientNet 族 + 专用损失
罕见病/长尾 Asymmetric Loss / Focal Loss + 类别加权 loss 选择常比架构更关键
跨数据集迁移 ViT / Swin / CoatNet(混合架构) 跨数据集研究中混合架构平均表现较好
表示学习 大规模眼底预训练编码器微调 增强罕见病少样本泛化

§6.8 硬件需求表

场景 建议硬件 说明
冒烟/最小实验(子集) 单张消费级 GPU(8–16 GB) 512² 分辨率可跑通
标准多标签训练(2,560 张) 单张 24 GB GPU 主流 CNN/Transformer
RIADD 级多分辨率集成 多卡(≥2× 24 GB) 顶部团队用多分辨率集成
大规模预训练 A100/H100 集群 可选用预训练权重代替自训

§6.9 评估指标代码

多标签 + 长尾场景应同时计算筛查二分类与多标签的指标。参考实现:

import numpy as np
from sklearn.metrics import roc_auc_score, average_precision_score

def evaluate_multilabel(logits, labels):
    """labels/logits: (N, n_labels) float,logits 为 sigmoid 前输出。"""
    probs = 1.0 / (1.0 + np.exp(-logits))        # sigmoid
    n_labels = labels.shape[1]
    auc_list, ap_list = [], []
    for i in range(n_labels):
        # 该列若只有一个类别则跳过(长尾常见)
        if len(np.unique(labels[:, i])) < 2:
            continue
        auc_list.append(roc_auc_score(labels[:, i], probs[:, i]))
        ap_list.append(average_precision_score(labels[:, i], probs[:, i]))
    macro_auc = float(np.mean(auc_list))
    macro_ap  = float(np.mean(ap_list))          # mAP
    print(f"macro-AUC: {macro_auc:.4f} | mAP: {macro_ap:.4f}")
    return macro_auc, macro_ap

# 用法:logits_test 来自模型前向输出,labels_test 为 0/1 多标签真值
# evaluate_multilabel(logits_test, labels_test)

说明:RIADD 官方对多病种子挑战以"平均分 = (AUC + mAP) 综合"作为排序依据,评测时应同时看 macro-AUC 与 mAP,并对罕见类单独报告类别级 recall 而非只看整体均值。

§6.10 MLOps 笔记

  • 版本/视图跟踪:把 view(all_classes/challenge)与数据集版本(1.0/2.0)写进实验配置,避免训练与评测标签视图漂移。
  • 固定评测口径:保留官方 640 张测试作为不可触碰的最终评测集;开发期只用训练 + 验证。
  • 相机域标记:训练前为每张图附加相机/分辨率元数据,便于做域分析、留相机验证与失败样本归因。
  • 罕见类审计:训练后对"验证集上 recall 异常低"的类做失败样本人工复核,判断是标签边界主观、图像低质量还是增强破坏。
  • 复现日志:记录 CSV 来源 URL、解压哈希、标签视图、resize 尺寸、loss 权重,保证可复现。
  • 对外声明克制:RFMiD 单地区来源 + 长尾,任何"泛化"或"临床可用"声明都须附外部验证证据与分布限定。

§6.11 复现自查清单

动笔前逐项核对的清单,能显著减少 RFMiD 特有陷阱:

  • [ ] 明确数据版本:RFMiD 1.0 还是 RFMiD 2.0?
  • [ ] 明确标签视图:All_Classes(45 病种)还是 Challenge(28 类)?
  • [ ] 记录图像来源与 CSV 来源 URL,解压后 ID.is_unique 校验通过。
  • [ ] 核对 CSV 首列确为 ID、次列确为 Disease_Risk(All_Classes)。
  • [ ] 训练/验证/测试均来自同一视图与版本,禁止跨视图拼装。
  • [ ] 统一图像 resize,并记录目标尺寸(512/768 等)。
  • [ ] 记录每张图的相机/分辨率元数据(若需要域分析)。
  • [ ] 计算各类正样本数,检查训练集是否出现正样本为 0 的类别。
  • [ ] 多标签损失采用 pos_weight / Focal / Asymmetric 之一。
  • [ ] 评测保留官方 640 张测试为 unseen,开发期只用训练 + 验证。
  • [ ] 报告 macro/micro AUC、mAP、各类别 recall。
  • [ ] 若主张"泛化",附外部眼底数据验证与分布限定。

§7 质量评估与局限性

§7.1 已知偏倚表

偏倚类型 描述 严重程度 缓解
地理/人群偏倚 全部图像来自印度 Nanded 单一临床地区(2009–2020) 外部人群验证;结论限定训练分布
类别不平衡(长尾) 高频病(DR、MH)vs 罕见病(<10 张)样本悬殊 pos_weight / Focal / OTHER 归并
相机域偏倚 三台相机分辨率、FOV、色彩不同且样本数不均(2,427/467/306) 中高 统一预处理 + 留相机验证
图像质量混杂 刻意纳入低质量图像,低质量可能系统性对应某些病种/相机 质量归一化 + 质量分层报告
标注主观性 罕见病"存在与否"边界主观,仅两位专家 + 裁定共识 独立专家复核/抽样验证;公布局限
无患者级元数据 未披露年龄/性别/双眼关系,无法做患者级分组或公平性细分 承认局限,不据此做人群子组声明

§7.2 标注质量

标注由两位高级视网膜专家独立完成,并以患者临床记录与视野作为金标准参照,比纯图像肉眼判读更可靠;随后由项目负责人复核、分歧处会同两位专家会商形成裁定式共识(adjudicated consensus)。多标签设计忠实反映共病。局限是:作者未公开逐对标注者间的一致性统计量(如 Kappa),且罕见病样本少、边界判读主观,二次研究者建议对高争议类别做抽样复标。

§7.2b 二次研究者的抽样复标建议
  • 优先复标类别:低置信度/主观性强的高争议病(如视盘苍白、介质混浊与正常模糊边界、早中期黄斑变性)。
  • 抽样方式:对目标类别分层随机抽样(如每类 30–50 张),交由 1–2 名第三方眼科医师盲法复标。
  • 对比指标:计算第三方与官方标签的 Cohen’s Kappa / 一致率;对低一致类别在论文中单列说明,并在评估中考虑"标签噪声上限"。
  • 价值:可量化罕见类标签的可靠性,也能为"为何某类 recall 低"提供依据,避免误把标签噪声归咎于模型。
  • 局限认知:第三方也是人,仍存在主观性;抽样复标用于发现"系统性偏差",而非证明标签完美。

§7.3 泛化性表

场景 失效风险 证据/说明
迁移到非印度人群(欧洲/拉美/东亚) 单地区来源 + 眼底表现人群差异;已有跨数据集研究观察到跨集性能下滑
迁移到其他眼底相机 中高 三相机域差异证明模型需跨域校准;低 FOV 截断图像易漏周边病变
罕见病(极低样本) 少样本 + 长尾使罕见类 recall 低,属已知难点(视盘苍白等连专家也难)
分级/病灶分割任务 高(任务不匹配) RFMiD 仅分类,不含 DR 分级与分割标注,不能直接用于此类任务
时间漂移(2010 vs 2020) 跨越 11 年采集,相机/临床流程可能有漂移,未见官方分时段分析

§7.4 伦理

RFMiD 以眼底照片发布,作者声明已对全部受试者取得知情同意。眼底彩照属可识别性较高的生物医学图像,尽管公开发布已做去标识化并集中在图像与标签,未附患者明细,使用者仍应把其视为敏感医学数据对待:遵守 CC BY 4.0 署名义务、不以图像反推个体、不据此做个体诊疗判断。任何临床转化前需独立 IRB 评估与监管审批。

§7.5 公平性

由于公开 CSV 不含年龄、性别、种族等人口学字段且无法做患者级分组,本数据集目前不足以支撑严谨的亚群公平性审计。研究者在讨论模型公平性时,应说明数据缺失该维度,避免从单一印度门诊分布外推出跨人群公平性结论。

§7.6 数据漂移

RFMiD 是静态发布(2009–2020 回顾采集,2021 公开),无持续更新流;社区后续的 RFMiD 2.0 是标签质量的单次修订而非时间增量。模型训练采用的历史眼底分布可能随时间/设备/临床实践演化而与未来真实数据漂移,部署型研究应规划持续的外部再验证与质量监控。

§7.7 DAIMS 24 项数据就绪度评估

# 检查项 状态 说明
1 数据为宽格式(每行一个样本/事件) 每行一张图像、每列一个标签,宽格式 CSV
2 有唯一标识符列 ID 列与 PNG 文件名一一对应
3 无 Unicode 或特殊字符 标签为 ASCII 大写缩写,ID 为整数
4 无重复行 官方 ID 唯一;需自行核验镜像来源
5 缺失值已识别并编码 ⚠️ CSV 无显式 NA;0 表示"判定不存在"而非缺失,需文档化
6 标签列被明确标识 首列为 ID、次列为 Disease_Risk、其后为各病种标签
7 已对罕见类别(<3%)进行分组 ⚠️ All_Classes 未分组;仅 Challenge 视图把罕见病并入 OTHER
8 偏倚评估已完成 §7.1 列出人群/长尾/相机/质量等偏倚
9 有完整的数据字典 ⚠️ 数据描述论文说明列含义,但无机器可读字典文件
10 对"信息性缺失"有明确编码解释 未单列"图像难判读/低置信度"标记列
11 数据采集设备和设置已记录 §3.1 三台相机型号、FOV、分辨率、图像数完整
12 已移除完全共线性变量 ⚠️ 保留原始全部标签列,部分疾病/标志物存在相关性(如近视-豹纹状眼底)
13 对编码的映射标准已说明 ⚠️ 提供标签缩写但未内置 ICD/SNOMED 映射
14 对时间戳的处理已明确说明 采集期 2009–2020 已记录;以图像级发布,无逐图时间戳
15 训练/验证/测试划分建议已给出 官方固定 60/20/20 划分
16 数据泄漏风险已被讨论 §5.3 讨论镜像混用、跨数据集重复、相机域泄漏
17 标签分布已被分析 论文提供逐类图像计数;§4.2 概述主要类别量级
18 选择性测量偏倚已被讨论 门诊来源 + 低质量图混杂 + 单一地区,§7.1/§7.6
19 外部验证建议已给出 §5.5 建议 IDRiD/ODIR/EyePACS 等外部评测
20 数据更新和版本信息已记录 1.0(2021)→ 2.0(2023)版本沿革清晰
21 最小必要预处理脚本已提供 官方未提供预处理脚本;需自行 resize/清洗
22 合规使用要求已明确 CC BY 4.0 + 平台注册条款
23 多模态对齐方法已说明 ⚠️ 单一模态;无跨模态对齐需求但相机域差异需处理
24 去标识化方法已被记录 ⚠️ 声明知情同意并发布去标识化图+标签,但未披露具体去标识化流程细节

DAIMS 评分:15.0 / 24

评分解读中上——RFMiD 在"官方划分、宽格式标签、设备记录、版本沿革"上做得出色,这些正是它易上手、适合当眼底多标签基准的核心优势;主要失分集中在"未附预处理脚本、无信息性缺失标记、无 ICD/SNOMED 映射、人群单一"等工程与泛化层面的缺口。

对你意味着什么:RFMiD 的数据结构质量足以支撑你直接做多标签训练(✅ 项主要来自官方划分与宽格式 CSV)。真正要花力气的是其长尾与单一地区带来的缺口:极罕见类建议用 Challenge 的 OTHER 归并或 pos_weight/Focal 缓解(对应 #7/#17);跨集报告务必限定于训练分布并做外部验证(对应 #19/#24);若做编码或术语研究,需自建 ICD/SNOMED 映射并请领域专家复核(对应 #13)。把它定位为"疾病谱最宽、格式最规整"的多标签眼底基准,而非"可直接临床部署"的数据,使用体验会更贴合实际。

§7.8 外部验证矩阵

下列为已见诸同行评审或预印本的跨数据集验证线索(供读者定位,性能以各论文为准;RFMiD 常作为被迁移验证的目标数据集):

外部场景 来源 评估任务 关键发现
ODIR 训练 → RFMiD 验证 跨数据集研究(Sungkyunkwan Univ. 等) 五病种多标签分类 CoatNet 等混合架构平均 AUC 领先,ViT 在个别类占优;跨集存在明显分布差距
多数据集横向比较 Das et al. 2024 DR/眼底分类 RFMiD 上 accuracy 约 89.10%,低于部分专病数据集(口径不同,非直接可比)
罕见病检测 RIADD 挑战各队 28 类多标签 筛查接近解决(AUC>0.98),多病种平均分 ~0.78,罕见病仍难
Hybrid Trio-Network Inan 2024(arXiv 2405.18449,预印) 12 病种 平均 accuracy ~97%、AUC 0.96;Siamese 结构对部分罕见病更稳

注:上表数值来自各自论文且评测口径(病种子集、阈值、是否预训练)不一,不可直接横向比较作 SOTA;跨数据集时 RFMiD 与训练集病种标签集合不同,差距既有分布也有口径成分。


§8 基准性能与生态

§8.1 排行榜与代表结果

RFMiD 没有 Kaggle/Paper-with-Code 式的统一在线排行榜,主要基准来自 RIADD 挑战及其后续论文与预印本。下表为代表性结果,评测口径(病种子集、视图、是否预训练、阈值)不一,数值不可直接横向比较作 SOTA

排名/参考 模型 性能 年份 关键技术 完整引用/代码
RIADD 筛查顶部 EfficientNet 族(多队) 筛查 AUC >0.98 2021 预训练 + 多分辨率集成 Pachade et al. 2025, Med Image Anal 99:103365
RIADD 多病种获胜 KAMATALAB 等集成方案 平均分 (AUC+mAP) 0.7821 2021 EfficientNet + Asymmetric/Focal + 768/960 集成 Pachade et al. 2025, Med Image Anal 99:103365
跨集多标签 CoatNet / ViT / Swin 等 部分类 AUC 领先 2024 混合架构在 ODIR→RFMiD 迁移 Pham et al. 2024(韩国学术会议)
12 病种分类 Hybrid Trio-Network 平均 accuracy ~97%、AUC 0.96 2024 CNN+两阶段 CNN+Siamese 集成 Inan 2024, arXiv 2405.18449(预印)
多集比较 Das et al. 2024 RFMiD accuracy 89.10% 2024 DL 对比 Das et al. 2024(PMC 引用)

注:RIADD 平均分 0.7821 与 Hybrid Trio 的 0.96 AUC 分属不同子集与任务口径(28 类挑战 vs 12 病种子集),不可直接对比。

§8.2 SOTA 总结与选型建议

  • 筛查(正常 vs 异常)已近饱和:RIADD 顶队 AUC >0.98,说明"判有无病"在 RFMiD 上接近解决;新方法在此维度难以拉开差距。
  • 多病种分类仍是难点:28/45 类多标签平均分仅 ~0.78,罕见病 recall 是关键瓶颈。
  • 架构 vs 损失:挑战结论显示 loss 选择(Asymmetric/Focal/加权 BCE)对性能影响常大于网络架构;建议优先在损失与类别加权上下功,再换更重编码器。
  • 跨域是真实挑战:单地区 + 多相机使 RFMiD 上高分不等于跨人群/跨设备高分;做通用眼底模型时应以外部验证为准。

§8.3 评测协议

  • 数据划分:官方 60/20/20(训练/验证/测试),保留官方测试作 unseen 评测。
  • 筛查子挑战:二分类(正常 vs 异常),以 AUC 为主指标。
  • 分类子挑战:28 类多标签,官方以 AUC 与 mAP 的平均分排序。
  • 建议额外报告:macro/micro AUC、mAP、各类别 recall(尤其罕见病),并注明视图(All_Classes/Challenge)与数据版本。
  • 跨集评测:报告相对内部变化并明确两数据集病种口径差异,避免把口径差当模型缺陷。

§8.4 相关数据集

数据集 用途 与 RFMiD 的差异/互补
IDRiD DR/DME 分级与分割 同印度人群,但聚焦 DR 精细病灶;可做像素级对比
ODIR 8 类眼底病筛查 单标签 + 左右眼 + 临床文本;常作 RFMiD 训练的外部源
EyePACS (DR) 大规模 DR 分级 病种单一、规模大;用于大规模预训练后迁移 RFMiD
Messidor / Messidor-2 DR/DME 法国人群;跨人群外部验证参照
RFMiD 2.0 眼底多病种 RFMiD 的标签细分修订版(2023)
REFUGE / Drishti 青光眼视盘视杯分割 需分割任务时补 RFMiD 无分割之不足

§8.5 关键论文 Top 列表

  1. Pachade, S., Porwal, P., Thulkar, D., Kokare, M., et al. (2021). Retinal Fundus Multi-Disease Image Dataset (RFMiD): A Dataset for Multi-Disease Detection Research. Data 6(2):14. DOI 10.3390/data6020014 —— 数据集数据描述论文,定义 3,200 张、45+ 病种标注、三相机规格、专家裁定标注协议。是使用本数据集的必引文献。
  2. Pachade, S., Porwal, P., Kokare, M., et al. (2025). RFMiD: Retinal Image Analysis for multi-Disease Detection challenge. Medical Image Analysis 99:103365. DOI 10.1016/j.media.2024.103365 —— RIADD 挑战总结,报告划分、74 提交、筛查/分类结果与顶部技术路线。
  3. Panchal, S., Naik, A., Kokare, M., et al. (2023). Retinal Fundus Multi-Disease Image Dataset (RFMiD) 2.0: A Dataset of Frequently and Rarely Identified Diseases. Data 8(2):29. DOI 10.3390/data8020029 —— RFMiD 2.0,把 OTHER 罕见病细分、类别质量更高。
  4. Inan, Y. S. (2024). Adaptive Multiscale Retinal Diagnosis: A Hybrid Trio-Model Approach… arXiv 2405.18449(预印)—— CNN + Siamese 集成,在 RFMiD 12 病种上报告高精度,示范罕见病检测。
  5. Pham, V.-N., Xiaoying, S., Choo, H. (2024). Disease Diagnosis on Fundus Images: A Cross-Dataset Study(韩国会议)—— ODIR 训练、RFMiD 验证的五病种迁移,报告混合架构优势与跨集差距。

§8.6 社区活跃度

  • RFMiD 作为 ISBI-2021 挑战数据,自 2021 年起被眼科与医学影像社区广泛采用,Google Scholar 引用持续增长。
  • 围绕它形成的社区资源:多个 Kaggle/Hugging Face 镜像、Awesome-Medical-Dataset 收录条目、诸多论文以 RFMiD 做多标签/长尾对比基线。
  • 维护主要来自原创作者(SGGS 团队)通过 Grand Challenge / IEEE DataPort 更新;未见活跃的开放 Issue 讨论版,问题反馈多散落于 IEEE DataPort 评论区。

§8.7 生态快照

资源 类型 链接/DOI 推荐理由
RIADD Grand Challenge 主页 官方托管 https://riadd.grand-challenge.org/ 数据集与竞赛规则权威来源
RFMiD 数据描述论文 必引文献 10.3390/data6020014 定义数据集规格与标注协议
RIADD 挑战总结论文 基准报告 10.1016/j.media.2024.103365 划分、评估口径、顶部结果
IEEE DataPort RFMiD 1.0 数据镜像 10.21227/s3g7-st65 下载与版本元数据
IEEE DataPort RFMiD 2.0 数据修订 10.21227/mrd2-ap11 标签细分版下载
RFMiD 2.0 描述论文 必引文献 10.3390/data8020029 2.0 标签定义
Awesome-Medical-Dataset/RFMiD 社区收录 GitHub openmedlab 快速了解目录与统计
Hugging Face 镜像 社区镜像 huggingface.co 搜索 RFMiD 便于程序化加载(列集需核对)

§9 相关资源与引用

§9.1 官方文档与教程

§9.2 数据下载与镜像

§9.3 BibTeX 完整引用

若你使用 RFMiD 1.0,请同时引用数据描述论文;若复现 RIADD 挑战,建议一并引用挑战总结论文;若使用 RFMiD 2.0,请引用其数据描述论文。

@article{Pachade2021,
  author  = {Pachade, Samiksha and Porwal, Prasanna and Thulkar,
             Dhanshree and Kokare, Manesh and Deshmukh, Girish and
             Sahasrabuddhe, Vivek and Giancardo, Luca and
             Quellec, Gwenol{\'e} and M{\'e}riaudeau, Fabrice},
  title   = {Retinal Fundus Multi-Disease Image Dataset (RFMiD):
             A Dataset for Multi-Disease Detection Research},
  journal = {Data},
  volume  = {6},
  number  = {2},
  pages   = {14},
  year    = {2021},
  doi     = {10.3390/data6020014}
}

@article{Pachade2025challenge,
  author  = {Pachade, Samiksha and Porwal, Prasanna and Kokare, Manesh
             and Deshmukh, Girish and Sahasrabuddhe, Vivek and
             Luo, Zhengbo and others},
  title   = {RFMiD: Retinal Image Analysis for multi-Disease Detection challenge},
  journal = {Medical Image Analysis},
  volume  = {99},
  pages   = {103365},
  year    = {2025},
  doi     = {10.1016/j.media.2024.103365}
}

@article{Panchal2023,
  author  = {Panchal, Sachin and Naik, Ankita and Kokare, Manesh and
             Pachade, Samiksha and Naigaonkar, Rushikesh and
             Phadnis, Prerana and Bhange, Archana},
  title   = {Retinal Fundus Multi-Disease Image Dataset (RFMiD) 2.0:
             A Dataset of Frequently and Rarely Identified Diseases},
  journal = {Data},
  volume  = {8},
  number  = {2},
  pages   = {29},
  year    = {2023},
  doi     = {10.3390/data8020029}
}

§9.4 引用指南

  • 使用 RFMiD 1.0 数据:引用 Pachade et al. 2021(数据描述论文)。
  • 复现 RIADD 挑战:引用 Pachade et al. 2025(挑战总结)。
  • 使用 RFMiD 2.0:引用 Panchal et al. 2023(2.0 数据描述论文)。
  • 依据 CC BY 4.0,无论何种应用均须对数据集来源适当署名,并在论文/报告中注明数据版本与获取渠道。

§9.5 常见问题(FAQ)

Q:RFMiD 到底是"46 病种"还是"28 类"?
RFMiD 1.0 的 All_Classes 视图含 46 条件(1 正常 + 45 疾病/标志物)用于完整病谱研究;RIADD 竞赛用的 Challenge 视图把样本 ≤10 张的罕见病合并为 OTHER,得到 28 类。文献中"46"多指条件总数,"28"指竞赛分类口径,两者不是同一套标签。

Q:RFMiD 和 RFMiD 2.0 有什么关系?
RFMiD 2.0(2023)是 1.0 的标签修订版,把 Challenge 中笼统的 OTHER 细分还原为具体罕见病,使疾病类别更精确、数量更多。两者图像同源但标签定义不同,复现与对比时必须锁定版本。

Q:需要申请或付费吗?
数据集以 CC BY 4.0 公开,本数据集本身不收费;通过 Grand Challenge / IEEE DataPort 下载需按平台完成注册并同意条款(多数平台登录后即可下载)。

Q:为什么有时解压后没有 ground truth CSV?
部分镜像把标签单独存放或未打包齐全,或测试子集金标准在竞赛期间本就被隐藏。请以官方下载页的对应 CSV 为准,并核对 All_Classes / Challenge 视图。

Q:RFMiD 能做 DR 分级或分割吗?
不能直接做。RFMiD 仅提供分类标签(有/无及各病种),不提供 DR 0–4 分级,也不提供像素级病灶或视盘视杯分割标注;这类任务需用 IDRiD、REFUGE、Messidor 等专用数据。

Q:模型在 RFMiD 上 AUC 高,能用于临床吗?
不能以此作为临床可部署证据。RFMiD 为单一印度地区 + 多相机采集,含显著长尾;任何临床转化都需要在目标人群/设备上做独立外部验证与监管审批。


§10 AI 使用声明卡

§10.1 AI 模型列表

本页面撰写过程中未使用生成式 AI 模型逐字生成医疗结论或数据集事实;事实性数字均来自公开论文/官方页检索并经人工核对。行文组织与章节结构参考了既定百科模板,医学/数据判断由编辑部人工完成。

§10.2 AI 参与范围

  • 辅助:行文起草的结构辅助、markdown 排版、代码骨架生成。
  • 未参与:数据集规模/设备/版本等硬事实的判定(均以来源为准);医学结论与偏倚判断由人工审核定稿。

§10.3 输入来源列表

  1. Pachade et al. 2021,Data 6(2):14 —— 数据集规格、三相机参数、标注协议。DOI 10.3390/data6020014。
  2. Pachade et al. 2025,Med Image Anal 99:103365 —— 划分、28 类定义、74 提交、筛查/分类结果。
  3. Panchal et al. 2023,Data 8(2):29 —— RFMiD 2.0 标签细分。
  4. RIADD Grand Challenge 官方主页与 Rules —— 下载入口、竞赛流程、时间轴。
  5. IEEE DataPort RFMiD 1.0 记录(DOI 10.21227/s3g7-st65)—— 子集视图、评论区坑点反馈、版本日期。
  6. IEEE DataPort RFMiD 2.0 记录(DOI 10.21227/mrd2-ap11)—— 2.0 文件大小与引用。
  7. Awesome-Medical-Dataset / RFMiD 页 —— RFMiD 2.0 结构、45 病种、下载/论文链接。
  8. RIADD 挑战论文 HAL PDF —— 相机表、分层比例、逐类计数。
  9. RFMiD 数据描述论文 ResearchGate/Semantic Scholar 全文 —— 相机规格、CSV 列含义、采集细节。
  10. Google Scholar 引用页 —— 引用次数快照。
  11. Lacuna / RIADD 挑战论文摘要 —— 顶部结果、loss 结论、人口偏倚局限。
  12. 跨数据集研究(Pham et al. 2024;Das et al. 2024)—— 外部验证与多集比较线索。
  13. WHO World report on vision 2019(经数据论文转引)—— 视力损伤流行病学背景。

§10.4 人工校验表

内容模块 审核者 审核方式 审核状态
frontmatter / INFOBOX 千方病案医学编辑部 交叉审核 ✅ 已通过
§2 医学背景与 ICD/SNOMED 映射 千方病案医学编辑部 交叉审核 ✅ 已通过
§3–§4 数据集规格与字段字典 千方病案医学编辑部 交叉审核 ✅ 已通过
§6 AI 就绪指南与坑点 千方病案医学编辑部 交叉审核 ✅ 已通过
§7 质量评估与 DAIMS 评分 千方病案医学编辑部 交叉审核 ✅ 已通过
§8–§9 基准与引用 千方病案医学编辑部 交叉审核 ✅ 已通过

§10.5 AI 生成章节标注

全篇章节结构与行文由辅助起草 + 人工审核;凡涉具体数字、设备规格、引用出处之处均给出文献锚点,供读者溯源。

§10.6 最后人工审核日期

最后人工审核日期:2026-09-05

页面状态:published(全部内容已完成审核并发布)


§C JSON-LD 结构化数据

返回 AI-Ready 数据集