DRISHTI-GS — 青光眼视盘/视杯分割基准 AI-Ready Wikipedia

101 幅眼底照像 · 4 名专家软标注的视盘/视杯分割基准

来源 IIIT Hyderabad(CVIT / MIP 组)与 Aravind Eye Hospital, Madurai url: http://cvit.iiit.ac.in/projects/mip/drishti-gs/mip-dataset2/Home.php发布时间: 2026-09-12最后更新: 2026-09-25 阅读 32
DRISHTI-GS — 青光眼视盘/视杯分割基准 AI-Ready Wikipedia

信息速览

数据集名称DRISHTI-GS — 青光眼视盘/视杯分割基准 AI-Ready Wikipedia
数据类型101 幅眼底照像,2896×1944 PNG,4 名专家软标注 + CDR,约 1.16 GB(镜像),免费非商业申请获取
规模101 幅眼底照像(单眼为单位,患者级数量未单独披露)
接入方式IIIT Hyderabad(CVIT / MIP 组)与 Aravind Eye Hospital, Madurai url: http://cvit.iiit.ac.in/projects/mip/drishti-gs/mip-dataset2/Home.php
AI 就绪度

数据集封面

DRISHTI-GS — 青光眼视盘/视杯分割基准数据集 AI-Ready Wikipedia

INFOBOX

字段 内容
数据集名称 DRISHTI-GS / Drishti-GS1
英文全称 DRISHTI-GS: Retinal Image Dataset for Optic Nerve Head (ONH) Segmentation
别名/简称 Drishti-GS1;DRISHTI-GS1;Drishti-GS Retina Dataset for ONH Segmentation
疾病分类(ICD-11) 9C61(青光眼 Glaucoma)
SNOMED CT 71596000(青光眼);56668005(视盘结构)
数据模态 彩色眼底照像(30° 视场,以视盘为中心)
AI 任务类型 视盘/视杯联合分割;杯盘比(CDR)估计;切迹检测;青光眼图像级分类
样本总数 101 幅图像(训练 50 + 测试 51)
数据大小 约 1.16 GB(Kaggle 镜像 708 个文件,截至 2026-09)
数据格式 PNG 图像 + TXT 边界/CDR 文本 + XLS 图像级诊断表
许可证 免费使用(官方声明 free to use;非商业研究用途,须致谢 IIIT-H MIP 组)
访问级别 注册后开放(官方邮件申请);Kaggle 社区镜像直接开放
DUO 标签 NPUNCU(非商业、非营利用途)
语言 英语(文档与标注文件);图像无语言属性
首发日期 2014 年(IEEE ISBI 2014 论文同步发布)
最后更新 2015 年(扩展为 Drishti-GS1,增加切迹与图像级诊断标签)
发布机构 IIIT Hyderabad(CVIT / MIP 组)与 Aravind Eye Hospital, Madurai
官方主页 cvit.iiit.ac.in Drishti-GS
下载地址 官方注册下载;Kaggle 镜像
DOI 10.1109/ISBI.2014.6867807
引用次数 585+(Semantic Scholar,截至 2026-09)
AI 就绪度评分 ⭐⭐⭐⭐(4/5)— 官方划分与多专家软标注齐备、评估协议明确,但官方无预处理脚本,测试集真值需注册,需手动实现软图阈值化与边界插值
页面状态 published

§0 E-E-A-T 审核与声明

医学审核:千方病案医学编辑部(眼科方向执业医师)交叉审核:§2 医学背景(ICD-11 与 SNOMED CT 映射、青光眼流行病学、杯盘比临床意义)、§7 偏倚分析(人群构成与标签可靠性)。审核日期:2026-09-05。

数据工程审核:[千方病案医学编辑部交叉审核] 医疗 AI 数据工程师,审核范围:§4 DAIMS 数据字典、§5 数据划分策略、§6 预处理 Pipeline 和坑点。审核日期:2026-09-05。

医疗免责声明:本页面内容仅供信息参考与教育目的,不构成医疗建议、诊断或治疗建议。任何涉及临床决策的应用请咨询执业医师,并遵循所在机构的诊疗规范与监管要求。数据集中包含的任何标签(如青光眼/正常)均为科研用途的专家意见或多数票结果,不能替代临床诊断。

技术免责声明:本页面提供的代码片段按"现状"提供,仅供研究与学习使用。在将其用于生产环境前,请自行完成单元测试、数据校验与性能验证。代码与数据格式可能随数据集版本更新而变化,使用前请以官方发布为准。

数据使用合规声明:DRISHTI-GS 由 IIIT Hyderabad 与 Aravind Eye Hospital 免费发布供研究使用。使用本数据集时须遵守官方使用条款:仅限非商业研究用途,发表成果时须引用官方指定论文并向数据提供方致谢。使用者应自行确认其应用场景符合当地法律法规与伦理要求。

审核覆盖范围声明:本页审核覆盖全部事实性内容(数字、日期、编码、引文)与关键判断(评分、建议);文献转引口径(如逐子集类别分布)已在正文显式标注可信度层级。审核不覆盖:AI 无法验证的实机运行结果,该部分由使用者自行承担验证责任(§10.2)。


§1 数据集概览

§1.0 📌 30 秒速览

这是什么? DRISHTI-GS(扩展版称 Drishti-GS1)是一套专为"让计算机看懂青光眼眼底"而生的基准数据集:101 幅以视神经头(视盘)为中心的 30° 彩色眼底照像,全部采集自印度 Aravind 眼科医院(Madurai)的就诊者。其中 50 幅训练图像配有极其讲究的真值标注——4 名经验分别为 3、5、9、20 年的青光眼专家独立圈画视盘与视杯边界,并提供每位专家的软分割图、平均边界坐标、各自的杯盘比数值,以及"3/4 多数票"的图像级青光眼判定与切迹标记;另 51 幅为测试图像,真值仅向注册者提供。

为什么重要? 青光眼是全球第二大致盲病因,且造成的视力丧失不可逆。筛查的核心体征之一是视杯相对视盘的扩大(杯盘比 CDR 升高)。在 2D 眼底照像上精确分割视杯极其困难——深度信息丢失、边界模糊、专家之间分歧很大。DRISHTI-GS 是最早公开提供视杯多专家真值的基准之一:它不回避不确定性,而是把专家间的分歧直接编码成 0-1 的软图,让算法评估从"一次平均分"升级为区域分割、边界定位、CDR 估计三个维度。

我能用它做什么? 训练与评测视盘/视杯联合分割模型(这是它的头号用途);以 CDR 文件为参照评估自动化 CDR 估计误差;用切迹标签做病灶感知的青光眼分类;把软图当作标注不确定性监督信号,做"标注噪声感知"学习;或把它当作跨域测试集,检验在其他库(如 REFUGE)上训练的模型遇到印度人群单中心数据时的泛化能力。

我怎么读这一页? 快速评估选读路径:决策者读 §1 与 §7.7(DAIMS 评分卡);工程实现直接进 §6(加载、预处理、DataLoader、8 个坑点);复现基准看 §8.1 与 §8.3 的口径规范;引用与合规在 §9.3 一页解决。所有关键数字均内联来源链接,FACTS 级溯源见各节引用。

§1.1 摘要

DRISHTI-GS 由 IIIT Hyderabad(CVIT / MIP 组)与 Aravind Eye Hospital(Madurai)合作构建,2014 年随 IEEE ISBI 论文发布、2015 年扩展为 Drishti-GS1(官方主页)。图像以视盘为中心采集(30° 视场、2896×1944 像素、PNG 格式),覆盖正常眼与青光眼,青光眼入选由临床医生依临床检查判定,患者年龄 40-80 岁、男女大致均等(CVIT MIP 数据集页)。标注流程使用专门开发的可变形圆标记工具(先粗定位再逐点微调),以捕捉不规则视盘形态与杯缘切迹;每幅训练图像由 4 名专家(经验 3/5/9/20 年)独立标注。真值以三种形态发布:80 角度扇区平均的边界极坐标文本、4 专家融合的 0-1 软分割图(B≥0.75 代表至少 3 人一致)、以及各专家的 CDR 数值文本;图像级"正常/青光眼"判定按 3/4 多数票合成,切迹由最资深专家单独判定(ISBI 2014 论文 PDF、JSM 2015)。数据集自带三套评估口径(区域 F-score、以盘心为原点的角向边界距离、CDR 估计误差),并配套注册制的测试集结果提交页面。其发布填补了当时"视杯分割无公开基准"的空白,成为此后十余年 OD/OC 联合分割研究的标准试金石之一(IEEE Xplore)。

一个阅读本页前需要建立的版本心智力模型:2014 基础版与 2015 扩展版共享同一批图像与分割真值,差异集中在"切迹 + 图像级诊断"两类标签;镜像时代的"硬化版"则是第三方对软图的阈值化产物,属于发布形态变体而非数据集新版本。本页所有口径声明均以官方两版论文为准。

§1.2 战略价值

科学维度——不确定性建模的教科书样本。 视杯边界在 2D 投影中天然模糊,不同专家对同一幅图的杯缘可以相差数十像素。DRISHTI-GS 没有把这种分歧"平均掉",而是逐像素发布 0-1 软图:B=1 表示 4 人完全一致,B≥0.75 表示至少 3 人一致。对研究标注噪声、证据学习、软标签蒸馏的团队而言,这是眼底领域少数能直接拿"分歧本身"当监督信号的公开资源;对工程团队而言,软图也提供了一种诚实的置信度校准参照——模型预测概率应当逼近专家一致度,而非逼向一张不存在的"完美硬标签"。

工程与基准维度——小而硬的试金石。 101 幅、约 1.16 GB(镜像)的体量使其成为低门槛的快速验证场:一张消费级 GPU 数小时内即可完成一轮消融。同时它又是出了名的"硬"——杯区域中位仅约 6.3 万像素(约全图 1.1%)、类分布偏斜(70 青光眼 vs 31 正常)、单人群单设备域窄。U-Net 系模型在其测试口径上 OD Dice 普遍可达 0.96+,而 OC 长期徘徊在 0.85-0.91(PMC10910696 表 4),“视盘易、视杯难"的差距本身就是教材级的诊断信号。BEAL 等无监督域适应工作直接把它当作跨域目标域(Wang et al., MICCAI 2019),使其成为域泛化研究中的标准"异域考题”。

教育与方法论维度——评估协议的示范样本。 它是极少数把"怎么评"写进数据集定义的资源:区域分割(F-score)、边界定位(角向平均距离)、CDR 估计误差三套指标在奠基论文中逐一定义并给出实现细节(80 扇区平均、N=24 角度采样、垂直直径比),使后续十余年文献拥有了同一把"尺子"。对教学场景,从"为什么视杯 F-score 只有 0.77"切入,可以讲透标注分歧、软标签、类不平衡、域偏移四个机器学习医疗影像的核心命题——这也是本库在课程实验中经久不衰的原因(ISBI 2014 论文 PDF)。

§1.3 同类数据集横向对比

横向对比的定位说明:本库的差异化不在规模而在真值形态——它是唯一把"专家间分歧"作为一等公民发布的青光眼分割库;下表按规模排序便于估量各库的训练价值,选库决策请回到 §1.2 的维度框架。

数据集 规模 模态/FOV 标注 与 DRISHTI-GS 的差异化
DRISHTI-GS(本页) 101 幅(50 训练 + 51 测试) 眼底照像,30°,视盘为中心,2896×1944 4 专家 OD/OC 软图 + 平均边界 + CDR + 切迹 + 图像级诊断 唯一以软图形式发布 4 专家分歧视杯真值;自带三套评估协议
RIM-ONE 169 幅(v1-v3),DL 版 485 幅 眼底照像,多中心(西班牙 3 院) 5 专家(v1)视盘;v3 立体像 DCSeg 双专家 OD/OC 多中心多设备域更宽;v3 含立体像对
DRIONS-DB 110 幅 眼底照像,600×400 2 专家视盘轮廓 仅视盘、无视杯;分辨率低
ORIGA 650 幅 眼底照像 OD/OC 分割 + 青光眼分级 规模大、含分级标签,但长期非公开分发
REFUGE 1,200 幅(800 幅有 OD/OC 真值) 眼底照像 + OCT 训练 400 幅像素级标注,测试含专家多数票 规模最大、含 OCT 模态与官方挑战赛口径;是当前首选大规模训练源
ACRIMA 705 幅(396 青光眼 / 309 正常) 眼底照像,350° 图像级诊断(2 名 8 年经验专家) 仅分类无分割

规模与人群构成均为文献综述口径,使用前请以各库官方页核对最新版本(Chákṣu 数据库综述、MDPI Engineering Proceedings)。

§1.4 版本时间轴

时间 版本/事件 说明
2014-04 DRISHTI-GS 首发 随 IEEE ISBI 2014 论文发布;101 幅,训练集含 OD/OC 真值与评估协议(DOI 10.1109/ISBI.2014.6867807)
2015 Drishti-GS1 扩展版 JSM Biomedical Imaging Data Papers 发布综合数据论文;新增切迹标注与图像级诊断表(train/test 两份 XLS)(官方主页引用列表)
2021-10 Kaggle 社区镜像 文件快照时间戳 2021-10;重组织为 Images/GT 目录,共 708 个文件、约 1.16 GB(Kaggle)
2026-09(截至) 生态现状 官方页面与注册通道仍可用;社区以 Kaggle 镜像 + 自实现加载脚本为主流获取路径

版本语义的要点在于"两版一名":社区惯用"Drishti-GS"指称整个资源家族,而严格意义上的 Drishti-GS1(2015)是含切迹与图像级诊断表的扩展发布。检索文献时应注意:仅涉及分割基准的工作多引用 ISBI 2014;凡使用图像级标签或切迹的工作应引用 JSM 2015。镜像时代又叠加了第三重版本含义——同一文件家族在不同镜像中呈现为"软图版"或"硬化版"(§4.0),引用者需以"来源渠道 + 版本论文"双轴标注,缺一不可。

§1.5 典型应用场景

  1. 视盘/视杯联合分割算法评测——官方 50/51 划分 + 软图阈值真值是社区十余年的默认口径(§8.1)。
  2. CDR 自动估计与误差分析——cdrValues.txt 提供每位专家的 CDR 参照,可做按专家分层的误差分析,而非只对平均值。
  3. 标注不确定性/软标签研究——4 专家软图直接量化"杯缘到底有多模糊",可用于证据学习、置信度校准与主动学习采样。
  4. 跨域泛化与域适应——作为单人群单中心的"异域"测试床:在 REFUGE/ORIGA 训练的模型于此评估跌落幅度(BEAL 等的标准做法)。
  5. 青光眼筛查原型与教学——小体量、带图像级诊断与切迹标签,适合筛查流水线原型、课程实验与审阅工具演示。
  6. 标注规范教学——可变形圆标注协议、多专家独立标注与融合规则可作为自建标注团队的对照范本(§3.5-§3.6)。

§2 医学背景

§2.1 ICD-11 编码映射

数据集标签/结构 ICD-11 编码 ICD-11 中文名 说明
图像级"Glaucomatous"判定 9C61 青光眼(Glaucoma) 数据集标签为专家多数票,临床应用需进一步分型
图像级"Normal"对照 —(无编码) — 正常对照不单独编码,作为 9C61 的阴性对照
视杯扩大(cupping,结构损伤体征) 9C61 青光眼(相关体征) CDR 升高是 9C61 的结构性评估指标而非独立疾病编码
切迹(notching) 9C61 青光眼(局部盘沿缺损体征) 局限性盘沿变窄,常见于上/下象限(数据集仅标 Inferior/Superior)

ICD-11 编码经WHO ICD-11 浏览器口径核对:青光眼归属"9 视觉系统疾病"章 9C61 节。数据集未提供青光眼亚型(原发性开角型/闭角型等)标注,如需分型研究须回溯临床来源,本库不做推断。

§2.1b SNOMED CT 映射

标签/结构 SNOMED CT 码 术语 说明
青光眼(疾病标签) 71596000 Glaucoma (disorder) 图像级"Glaucomatous"判定的对应概念
视盘(分割结构 OD) 56668005 Optic disc structure (body structure) 分割目标之一
视杯(分割结构 OC) — 归属视盘结构 56668005 的形态学描述 SNOMED CT 无独立"视杯"首选码,以视盘生理凹陷描述

映射说明:本库的标签体系是"专家意见"而非标准术语编码,上述映射用于信息化系统对接时的语义对齐;9C61 覆盖全部青光眼亚型,本库图像级标签未做亚型区分,映射到 9C61 父节点而非具体亚型码。SNOMED 侧同理——分割结构映射到解剖结构码(56668005),不映射检查操作码。

§2.2 疾病简介与流行病学

青光眼是一组以视神经纤维进行性变性、特征性视盘形态改变与视野缺损为特征的视神经病变,是全球第二大致盲病因,也是不可逆性视力丧失的首要原因之一(官方主页)。其隐匿性强——开角型青光眼早期几无自觉症状,故大规模筛查是降低致盲率的关键路径。流行病学方面,Tham 等对全球数据的荟萃分析估计:2013 年全球 40-80 岁人群中青光眼患者约 6,430 万,预计 2040 年将增至约 1.118 亿(Tham YC et al., Ophthalmology 2014;121:2081-90)。

结构性评估的核心在视神经头(ONH):视杯相对视盘的扩大(cupping)以**杯盘比(CDR,垂直方向视杯直径与视盘直径之比,取值 0-1)**量化,CDR 越高提示青光眼性损伤可能性越大(ISBI 2014 论文)。彩色眼底照像因低成本、无创、易普及,是大规模视网膜疾病筛查的首选影像模态——这正是 DRISHTI-GS 选择的成像路径。需要指出:2D 投影丢失了杯凹的深度信息,使视杯边界判读成为筛查流水线中最不确定的一环,这也是该数据集强调多专家软标注的临床根源。

筛查链路的经济学逻辑同样值得记录:眼底照像设备购置与单次检查成本远低于 OCT/HRT 等结构检查,且可在基层与筛查车场景部署;算法承担的角色是把"拍得到"升级为"读得准"——自动 OD/OC 分割与 CDR 量化让无眼底专科资质的筛查点也能输出结构化风险指标,再由上级医院复核转诊。DRISHTI-GS 的采集地 Aravind Eye Hospital 正是全球最大的眼科诊疗网络之一,其"高量筛查"运营模式与该数据集的任务设定(以眼底照像为核心、以结构指标为中介)高度一致,这解释了为何本库自发布起就锚定"mass screening"场景(ISBI 2014 论文)。

§2.3 临床任务定义

任务 输入 输出 临床定位
视盘(OD)分割 眼底照像 视盘区域像素级掩膜/边界 筛查流水线的定位与归一化基础步骤
视杯(OC)分割 眼底照像 视杯区域像素级掩膜/边界 筛查的关键难点,决定 CDR 精度
CDR 估计 OD/OC 分割结果 垂直杯盘比(0-1) 青光眼结构性损伤的量化指标
切迹检测 眼底照像 上/下象限有无切迹 局限性盘沿缺损的识别,支持青光眼判读
图像级青光眼分类 眼底照像 正常/青光眼 大规模筛查的最终决策输出

DRISHTI-GS 官方评估覆盖前三项(区域分割、边界定位、CDR 估计),并提供后两项的图像级标签;五类任务构成一条完整的"影像→结构→量化→判读"筛查链路。

任务之间的耦合关系是选实验设计的钥匙:CDR 估计精度受 OD/OC 分割的双重误差传导,图像级分类又叠加在 CDR 之上——因此本库文献中"分割好但分类一般"的组合远比"分类好但分割一般"常见。研究单一环节时,建议用官方真值冻结上游(如直接以真值 mask 算 CDR),隔离误差传导后再评估目标环节的真实能力;端到端评测则按 §8.3 协议全链报告。

§2.4 患者人群表

维度 内容 来源
来源机构 Aravind Eye Hospital, Madurai(印度,单中心) CVIT MIP 数据集页
采集对象 到院就诊者,知情同意后采集 同上
年龄 40-80 岁 同上
性别 男性与女性大致均等 同上
人种/族群 印度人群(单一人群构成) 官方主页
青光眼组入选 临床研究者依临床检查判定 CVIT MIP 数据集页
正常组入选 例行验光检查且非青光眼的就诊者 同上
就医类型 医院门诊(筛查/就诊混合) 同上
患者级元数据 未披露(无年龄/性别逐例文件) 综合官方资料

人群表的"未披露"行是使用边界的标尺:40-80 岁、性别均衡、印度单人群为官方声明的整体统计;逐例元数据从未随数据发布,因此任何按年龄/性别分层的库内公平性实验都无从谈起。青光眼组与正常组的入选路径不同(临床检查判定 vs 例行验光筛选),这一设计性差异意味着两组在检查情境上并非完全对称,解读图像级分类结果时应予以考虑。

§2.5 临床价值

对筛查系统而言,DRISHTI-GS 的价值在"结构先行":先准确圈出视盘、再估视杯、再算 CDR,最后才谈分类。该数据集把这条链路上每一步的参照真值都拆出来单独发布,使开发者可以定位误差究竟产生在哪一环——是视盘分割漂移、还是视杯边界误判、还是 CDR 换算失真。对临床信息化团队,其 4 名专家的软图是天然的"读片分歧样本",可用于培训辅助判读工具的置信度展示与双人复核工作流设计。对设备与算法厂商,把它当作单人群压力测试集:凡是宣称"泛化"的筛查模型,都值得在这 101 幅印度人群单中心图像上回答一次"你的杯分割还剩多少 Dice"。

从产品落地的角度,还有三点实操价值值得展开。其一,标注工具本身的启示:可变形圆 + 控制点的两步标注法在效率与表达力之间取得了平衡,是自建标注团队设计眼底标注规范时可直接借鉴的协议;其二,“按专家保留 CDR"的发布方式提示了质控思路——把每位标注者的量化输出与共识对比,可低成本实现标注质量分层管理;其三,本库证明了"小数据也能立基准”:101 幅的规模之所以能支撑十余年的方法学竞争,靠的是真值形态的多样性(软图/边界/CDR 三线并行)而非数据规模,这对资源有限的自建数据集立项具有直接的方法论参考意义(JSM 2015)。

§2.6 金标准表

划分 标注方式 标注者 性质
视盘/视杯区域边界 80 角度扇区平均的极坐标边界(以盘心为原点) 4 名青光眼专家标注后融合 参照真值(共识平均)
分割软图 逐像素 0-1 融合图,B≥0.75 = ≥3/4 专家一致 4 名专家(经验 3/5/9/20 年) 标注者间分歧的显式编码
CDR 垂直直径比,按专家分别提供 4 名专家各一份 按专家分层的参照值
图像级诊断 Normal/Glaucomatous 4 名专家 3/4 多数票 多数票金标准(非临床综合诊断)
切迹 Inferior/Superior 象限有无切迹 最资深专家单独判定 单专家参考标签

论文报告的参照性能(基于软图阈值 0.75 的二值真值口径):F-score 视盘 0.96(训练)/0.96(测试)、视杯 0.77/0.79;以盘心为原点的平均边界距离视盘 8.61/8.93 px、视杯 24.24/25.48 px(ISBI 2014 论文 PDF 表 1)。视杯边界距离约为视盘的 3 倍,直观展示了杯标注的固有分歧幅度。

训练与测试两套口径的参照值几乎相同(OD F-score 均 0.96;Cup 0.77 vs 0.79),这说明发布方在划分时未做难度分层——测试集的难度分布与训练集一致。对使用者这是一个友好信号:官方 50/51 划分上的成绩不需要"测试集偏易"的辩护;但也意味着不能指望换到测试集就能观察到分布差异。切迹与图像级诊断的真值规则(多数票/单专家)见 §3.6 与坑点 8。


§3 数据集规格

§3.0 版本抉择矩阵

你的需求 推荐版本 大小 理由
复现论文基准 / 正式发表 官方注册版(Drishti-GS1) 注册分发 官方目录结构 + 测试集真值(注册后)+ 官方评估口径,论文间可比
快速原型 / 课程实验 Kaggle 镜像 约 1.16 GB 免注册直接下载,708 个文件;注意目录为镜像者重组织,且部分镜像已预阈值化
软标签 / 不确定性研究 官方注册版(必须) 注册分发 软图与逐专家标注仅在官方发布中完整保留;预阈值化镜像会破坏 0-1 连续信息
跨域评估(目标域) 官方注册版测试集(注册后) 注册分发 测试集真值经注册获取后可做完整评估;否则仅能以训练集自划验证

§3.1 模态详情

  • 彩色眼底照像(Color Fundus Photography):全部 101 幅为真彩 2D 视网膜投影,30° 视场,以视神经头(ONH)为中心构图;分辨率统一为 2896×1944 像素,PNG 无损格式(ISBI 2014 论文、MDPI Engineering Proceedings)。
  • 标注层:像素级软分割图(PNG)、极坐标边界文本(TXT)、CDR 数值文本(TXT)、盘心坐标文本(TXT)、图像级诊断表(XLS)。
  • 相机机型与采集参数官方未披露,本页不推测;如需设备溯源请向发布方咨询。

§3.2 按子集样本数表

子集表是本库引用频率最高也最容易引错的数字组:总量 101 与 50/51 划分由官方页背书、无争议;逐类分布(70/31)有三源交叉;训练/测试逐类数字仅单源。三档可信度在使用时应有区分:

子集 图像数 真值 图像级标签(单来源口径)
训练集(Training) 50 完整:4 专家软图 + 平均边界 + CDR + 盘心 + 切迹 + 诊断表 32 青光眼 / 18 正常(Springer 2025)
测试集(Test) 51 官方注册后提供;社区镜像无 38 青光眼 / 13 正常(同上)
合计 101 — 70 青光眼 / 31 正常(MDPI、Nature Sci Rep 表、Research Square 三源一致;与论文"分布偏斜侧重青光眼"陈述一致)

数据集论文自述分布"偏斜、侧重青光眼图像"(JSM 2015);训练/测试的逐类数字来自单一已发表来源,引用时请注明口径。

§3.3 格式表

内容 格式 说明
眼底图像 PNG(无损) 2896×1944,真彩 RGB,命名 drishtiGS_001.png 至 drishtiGS_101.png
分割软图 PNG(灰度 0-255 映射 0-1) 每幅训练图像含 OD 与 OC 各多幅,按专家缩写与区域命名(*SoftmapOD.png / *SoftmapCup.png)
平均边界 TXT <ID>_<RegionType>AvgBoundary.txt,80 角度扇区的 [x,y] 像素坐标(盘心为原点)
CDR 参照 TXT <ID>_cdrValues.txt,4 名专家各自的 CDR 值
盘心坐标 TXT <ID>_diskCenter.txt
图像级诊断 XLS image_lvl_diagnosis_train.xls / image_lvl_diagnosis_test.xls,含青光眼判定与切迹

格式层面的工程提示:XLS 为老式二进制 Excel 格式,pandas 读取需 xlrd<2.0 或先转存为 CSV;TXT 边界文件的分隔符与列序(x 在前)务必按 §4.0 说明实测确认;PNG 软图的像素值是"0-255 整数量化的 0-1 概率",读取后除以 255 即还原,无需担心透明通道。

§3.4 存储大小

  • Kaggle 社区镜像:约 1.16 GB,708 个文件(Kaggle 数据页,截至 2026-09)。
  • 官方注册分发的压缩包大小未在公开页面披露,本页不估计;单幅 PNG 按无损规格推算在数 MB 量级,整体属于"单卡即可全量操作"的小体量数据集。
存储口径 数值 说明
Kaggle 镜像总量 约 1.16 GB 708 个文件(图像 + GT + 重组织目录)
图像分辨率 2896×1944 全库统一 无混合分辨率
单幅软图 数十 KB 量级 灰度 PNG,随标注复杂度浮动
全量内存加载 <2 GB RAM 101 幅 PNG 解码后可整体驻留内存(§6.8)

§3.5 标注方式

人工标注,双阶段流程:研究团队开发专用标记工具,提供可变形圆(含若干可自由拖动的控制点)——用户先将圆粗定位到目标区域附近,再逐点微调贴合实际边界,从而捕捉不规则的视盘形态与杯缘局部凹陷(切迹),而无需受限于椭圆等参数化形状(JSM 2015)。每幅训练图像由 4 名专家独立完成 OD 与 OC 标注;标注结果不做硬性仲裁,而是三条路径发布:逐专家保留(软图)、80 扇区平均(边界)、按专家保留(CDR)。

这一设计背后的方法论选择值得强调:视杯边界的判定分歧不是"标注质量差",而是 2D 投影下问题的固有属性——同一幅图上资深与年轻专家的分歧往往集中在杯缘的鼻侧与颞侧模糊带。官方的处理方式是把"分歧"本身变成数据资产:软图逐像素记录一致度,使下游既能选择保守口径(B≥0.75,3/4 一致区域),也能选择激进口径(B≥0.5,2/4 一致区域),或干脆以连续值做软监督。相较之下,同期多数数据集(如 DRIONS-DB 的双专家轮廓)只提供各专家独立轮廓或单一共识,丢失了"一致度的空间分布"这一维度。

标注工具的交互协议同样有记录价值:先粗后精的两步法(整体定位 → 逐控制点微调)确保了不依赖椭圆假设的表达力,官方明确说明这是为了"捕捉杯缘局部形变(如切迹)"而刻意放弃参数化近似(JSM 2015)。对计划自建眼底标注流水线的团队,该协议可直接转译为标注规范:禁止椭圆拟合工具、强制控制点数量下限、按标注者分离存储、不设现场仲裁。

§3.6 标注者资质与一致性

专家 临床经验 角色
专家 1 3 年 OD/OC 边界 + CDR
专家 2 5 年 OD/OC 边界 + CDR
专家 3 9 年 OD/OC 边界 + CDR
专家 4 20 年 OD/OC 边界 + CDR;切迹单判

一致性设计是本数据集的招牌:4 名专家独立标注以显式捕获标注者间差异(CVIT MIP 数据集页)。软图中 B≥0.75 意味着至少 3 人一致;图像级诊断采用 3/4 多数票合成金标准。官方未发布逐专家的 Dice/Kappa 一致性系数表,但 ISBI 论文的参照实验给出量化侧写:视杯边界的角向平均距离(约 24-25 px)约为视盘(约 8-9 px)的 3 倍(论文 PDF 表 1)。

§3.7 采集周期

官方资料未披露具体采集起止年份;数据集于 2014 年随 ISBI 论文首发(IEEE Xplore)。本页不做区间推断。采集周期缺失的实际影响集中在两点:无法估算图像的设备技术代际,也无法为"年代相关的图像质量漂移"建模——后者在跨年代混合训练(本库 + 近年库)时是真实存在的协变量。

§3.8 地域覆盖

单中心:印度泰米尔纳德邦 Madurai 的 Aravind Eye Hospital;全部受检者为印度人群(单一族群构成)(官方主页)。无多地域分层。

§3.9 设备规格

项目 内容
成像设备 眼底照相机(机型官方未披露)
视场角 30°
构图 以视神经头为中心
分辨率 2896×1944 像素
存储 PNG 无损

设备信息缺失对多数算法研究影响有限(分辨率与构图已完整定义),但对临床部署与设备适配研究是硬缺口:无法评估机型间差异、无法定位采集年代对应的技术代际。若项目对设备溯源敏感(如多设备泛化、质量控制系统),应在立项阶段向发布方函询,或改用含设备元数据的 REFUGE/内部队列。

§3.10 深度溯源链

层级 主体 说明
设计与发布 IIIT Hyderabad(CVIT / MIP 组:Sivaswamy、Joshi、Jain、Ujjwal、Syed Tabish) 数据集设计、标注工具开发、评估协议(IEEE Xplore 作者页)
临床采集 Aravind Eye Hospital, Madurai(Krishnadas 等) 图像采集、患者筛选与知情同意(CVIT MIP 数据集页)
标注执行 4 名青光眼专家(经验 3/5/9/20 年) 逐幅独立 OD/OC 标注 + CDR + 诊断意见
质量控制 3/4 多数票合成图像级金标准;80 扇区平均融合边界 融合规则在论文中明确定义
分发 官方注册页面 + Kaggle 社区镜像 镜像目录为第三方重组织(Kaggle)

溯源链的整体质量评价:设计与临床两端主体清晰、可具名到人与机构;标注执行有明确的资历与人数记录;薄弱环节在分发端——官方无哈希校验值发布,镜像无上游背书,使用者拿到数据后无法用校验和确认完整性,只能靠 §6.2 的形态校验与文件计数间接验证。这属于 2014 年代发布流程的时代局限,引用时建议在数据可用性声明中写明实际获取渠道。


§4 数据结构

§4.0 目录树

官方发布以"训练包 + 测试包"两个压缩包分发;不同镜像的顶层目录命名略有差异,以下为按官方论文描述整理的典型布局(文件名模式以 <ID> 代表 drishtiGS_001 这样的图像编号):

Drishti-GS/
├── Training-400/                      # 训练包(50 幅,含完整真值)
│   ├── Training Images/
│   │   ├── drishtiGS_001.png          # …至 drishtiGS_050.png,2896×1944
│   │   └── ...
│   ├── GT-All/                        # 真值根目录(每幅图一个子目录)
│   │   ├── drishtiGS_001/
│   │   │   ├── drishtiGS_001_<专家缩写>_SoftmapOD.png    # ×4 名专家
│   │   │   ├── drishtiGS_001_<专家缩写>_SoftmapCup.png   # ×4 名专家
│   │   │   ├── drishtiGS_001_ODAvgBoundary.txt           # 视盘 80 扇区平均边界 [x,y]
│   │   │   ├── drishtiGS_001_<杯区域>AvgBoundary.txt     # 视杯平均边界(RegionType 命名见官方包)
│   │   │   ├── drishtiGS_001_cdrValues.txt               # 4 名专家各自的 CDR
│   │   │   └── drishtiGS_001_diskCenter.txt              # 盘心坐标
│   │   └── ...(drishtiGS_002 至 drishtiGS_050 同构)
│   └── image_lvl_diagnosis_train.xls  # 图像级诊断 + 切迹
└── Test-400/                          # 测试包(51 幅,官方注册后附真值)
    ├── Test Images/
    │   ├── drishtiGS_051.png          # …至 drishtiGS_101.png
    │   └── ...
    └── image_lvl_diagnosis_test.xls

层级读法:图像层(PNG)是唯一的原始数据,其上所有真值都是标注产物;GT 子目录以图像编号命名实现图像-标注强绑定;文本文件(边界/CDR/盘心)承载结构化数值,XLS 承载图像级语义标签。这种"每图一目录"的设计让按图采样(如按 CDR 分层取子集)可以精确到文件级实现。

注意:Kaggle 镜像将上述内容重组织为 Images/ + GT/ 两目录(每目录下分训练/测试),且解压自 Google Drive 的镜像会出现带时间戳的目录名(如 Test-20211018T060000Z-001);部分第三方预处理镜像把软图按 0.5 阈值硬化成二值 mask(2DAnatomyDatasets issue #10)。工程上建议代码用 glob 模式匹配文件而非硬编码完整路径。

两种典型布局的对照(以文件名语义为准,忽略顶层目录差异):

镜像布局(Kaggle 重组织版)              官方典型布局(§4.0 主树)
Drishti-GS/                             Training-400/
├── Training/                           ├── Training Images/
│   ├── Images/drishtiGS_001.png        │   └── drishtiGS_001.png
│   └── GT/drishtiGS_001.png(mask)    └── GT-All/
└── Test/                                   └── drishtiGS_001/
    ├── Images/drishtiGS_051.png                ├── *_SoftmapOD.png ×4
    └── GT/drishtiGS_051.png                    ├── *_SoftmapCup.png ×4
                                                ├── *_ODAvgBoundary.txt
                                                ├── *_cdrValues.txt
                                                └── *_diskCenter.txt

关键差异有两处,直接决定加载代码的写法:镜像版的 GT 是已经硬化的逐图 mask(一张图对一张 mask),官方版的 GT 是逐专家软图(一张图对多幅软图 + 文本);若你的研究需要软监督或专家间分歧信息,镜像版不可替代官方版。下载后建议先运行一段校验脚本确认拿到的是哪种形态(§6.2 末尾代码)。

§4.1 DAIMS 8 列字段字典

字段字典覆盖本库全部 7 类信息载体(图像、软图、边界文本、CDR 文本、盘心文本、诊断表、编号体系)。与表格型数据库不同,本库的"字段"物理上分散在多类文件中,需按图像编号聚合;“信息性缺失"一列标注的是"该字段对某任务不可用时的语义”,而非文件缺失。

字段 类型 说明 示例值 AI 用途 观测误差 信息性缺失编码 取值范围
image_id 字符串 图像唯一编号,drishtiGS_NNN drishtiGS_001 主键;划分与对齐 无 无 001-101
image 图像 眼底照像 PNG,2896×1944 drishtiGS_001.png 模型输入 拍照曝光/对焦差异(未量化) 无 101 幅
softmap_od 图像 视盘软分割图,灰度 0-255 映射 0-1 *_SoftmapOD.png 分割软监督/不确定性 专家间分歧已内嵌 无 值域 [0,1]
softmap_cup 图像 视杯软分割图(同上) *_SoftmapCup.png 视杯分割软监督 杯缘分歧大(边界距离约 24 px,见 §2.6) 无 值域 [0,1]
avg_boundary 文本 80 角度扇区平均边界 [x,y](盘心原点) *_ODAvgBoundary.txt 边界定位评估 80 扇区离散化误差 无 图像坐标
cdr_values 浮点 4 名专家各自的垂直杯盘比 *_cdrValues.txt CDR 估计参照 CDR 估计误差按专家分层 无 [0,1]
disk_center 文本 盘心像素坐标 *_diskCenter.txt 极坐标变换原点 由分割派生 无 图像坐标
image_lvl_diagnosis 类别 正常/青光眼(3/4 多数票)+ 切迹(上/下象限) XLS 行 分类/切迹检测标签 多数票与单专家判定的噪声 无显式编码 Normal / Glaucomatous

§4.2 标签分布

标签 计数 占比 口径
青光眼(Glaucomatous) 70 69.3% 全集 101 幅,三源一致(§3.2)
正常(Normal) 31 30.7% 同上
有切迹参考 部分训练图像 未披露逐例计数 最资深专家单判,数量官方未汇总
视盘掩膜像素(中位) 63,341 px 约 1.1% 全图 4 专家软图阈值化统计(openmedlab 复口径)

分割目标像素统计(openmedlab 口径):最小 13,571 / 中位 63,341 / 最大 134,815 px——即使按中位数,目标区域也仅占 2896×1944 全图的约 1%,视杯更小。这组数字是设计采样策略与损失加权时的硬约束。

§4.3 关键统计

  • 图像分辨率:全部为 2896×1944(无分辨率混合;openmedlab)。
  • 视盘/视杯真值覆盖:训练集 50/50(100%);测试集真值仅注册后提供。
  • 软图阈值语义:B≥0.75 表示 ≥3/4 专家一致;论文评估即用 0.75 阈值化生成二值真值(ISBI 论文 PDF)。
  • 边界平均距离参照:视盘约 8.6-8.9 px,视杯约 24-25 px(论文参照口径,§2.6)。
  • 官方测试集提交评估维度:区域分割、边界定位、CDR 估计三套(论文定义)。
  • 边界融合粒度:80 角度扇区(约 4.5°/扇区),边界 TXT 每文件 80 个 [x,y] 点。
  • 命名连续性:101 个编号连续无缺号,训练/测试按编号区间硬切,无随机划分文件。

§4.4 数据层级

数据集(101 幅)
├── 训练集(50 幅)
│   └── 每幅图像 = 1 次 ONH 眼底照像
│       ├── 4 名专家 × {OD, OC} 独立标注(软图)
│       ├── 共识产物:平均边界 + 融合软图语义(B≥0.75 = 3/4 一致)
│       └── 4 份 CDR 参照 + 1 份盘心 + 1 份图像级诊断/切迹
└── 测试集(51 幅,真值注册制)

数据集以"图像(单眼)"为最小单位发布;患者与眼别的对应关系(是否含同一患者双眼/多幅)官方未披露,涉及患者级划分时须按 §5.3 的泄漏风险处理。

§4.5 缺失值与信息性缺失

现象 是否缺失 信息性含义 处理建议
测试集 51 幅在社区镜像中无真值 是(设计使然) 防止测试集污染的保留机制 注册获取,或改用训练集自划验证并声明口径
逐患者人口学字段 是(未发布) 隐私最小化设计 不可插补;不得伪造人群分层
切迹标签的"无切迹" 否(阴性即"无切迹") 二值阴性而非缺失 按二值标签处理
采集时间戳 是(未发布) 无纵向信息 放弃时间序列类分析

缺失哲学小结:本库的"缺失"几乎全是设计性保留(测试真值、患者元数据、时间戳),而非数据质量问题。这意味着两点:其一,不要用插补/填充类手段处理这些空缺,它们不是可修复的噪声而是隐私与基准设计的选择;其二,评估工作流必须把"50 幅有真值"写死为前提条件,任何意外读到"101 幅全量真值"的数据源都应触发来源核查(很可能是混入了硬化镜像或注册泄漏版)。


§5 划分与使用建议

§5.1 官方划分

官方唯一指定口径:训练 50 幅(含全部真值)+ 测试 51 幅(真值注册制),编号 drishtiGS_001-050 / drishtiGS_051-101(官方主页)。论文配套设计了注册制的测试集结果提交页面:研究组注册后获取测试真值并提交 OD/OC 分割结果,由官方按三套评估指标汇总(JSM 2015)。与 RIM-ONE 不同,Drishti-GS 的官方划分从未被官方文本要求"强制唯一",但十余年的文献事实上以 50/51 为默认口径。

这一"软约束"划分的形成有历史原因:发布时的核心诉求是为"视杯分割"这一无基准问题建立评估基础设施,注册制提交页承担了事实上的排行榜职能。对使用者的实操含义是:官方划分既是资源(真值分层清晰)也是义务(想与文献对话就必须沿用);唯一的例外场景是患者级泛化研究——由于患者-图像映射未披露,这类研究不得不自划并声明局限(§5.3)。

§5.2 社区惯例划分

社区存在三种常见变体,各有适用面:

  1. 官方 50/51 直用——与 §8.1 排行榜同口径,发表对比实验的首选。
  2. 训练集 5 折交叉验证(40 训 + 10 测/折)——早期经典工作在小样本上估计泛化误差的标准做法(如 ScienceDirect 2016 的卷积集成工作)。
  3. 从训练集再划验证集(如 80/20)+ 测试集封存——现代深度学习工作流的推荐形态:验证集用于调参与早停,测试集只在最终评估触碰一次(2DAnatomyDatasets issue #10 即采用此形态)。
划分方式 训练/验证/测试 适用场景 可比性
官方直用 50 / — / 51 与文献对话、发表主表 最高(默认口径)
官方 + 内部验证 40 / 10 / 51 深度学习调参工作流 高(需声明内部划分)
5 折交叉验证 40 / — / 10 ×5 折 小样本稳定性估计 中(历史文献口径)
全量混合随机划分 101 幅随机切 仅限非正式实验 无——禁止用于发表

泄漏对策的总结逻辑:本库的所有泄漏风险都源于"小体量 + 注册制保留 + 镜像传播"三者的组合效应。判断一个划分方案是否安全的最简检验是回答三个问题——测试图像是否全部来自 051-101 号段;验证集是否只从 001-050 中划出;阈值与盘心口径是否在触碰测试集之前冻结。三者皆是,划分即安全。

§5.3 划分策略与泄漏风险

Drishti-GS 的泄漏风险集中在四处,逐一给出对策:

  • 测试集当训练数据:社区镜像的 51 幅测试图像真值(部分早期注册者曾公开使用)被大量二次发布吸收,不少 Kaggle 教程把 101 幅全部混合后随机划分——这使结果与官方口径完全不可比,且有"测试集早泄"嫌疑。对策:主实验坚持官方划分;混合划分只作为补充分析并明确标注。
  • 患者级泄漏:官方未披露患者-图像映射,若存在同一患者双眼或同眼多幅,随机划分会造成患者间信息泄漏。对策:引用时明确该局限;跨库实验优先于库内精细划分。
  • 软图阈值泄漏进评估:先看测试集软图分布再选阈值(0.5 vs 0.75),等于用真值分布调超参。对策:阈值随训练配置冻结并在论文中声明。
  • 极坐标预处理的信息泄漏:以盘心真值做极坐标变换(M-Net 式)时,测试图像使用了真值盘心——这属于"用金标准辅助推理"。对策:测试阶段用模型自估盘心,或明确声明该差异(与文献口径保持一致优先)。

§5.4 交叉验证建议

101 幅的体量下,单次 50/51 划分的方差不可忽略。建议:以官方划分为最终报告口径,同时报告训练集 5 折交叉验证的均值±标准差作为稳定性佐证;折内保持青光眼/正常比例分层(约 2:1)。对小样本分割,也可参考早期文献的逐折 F-score 报告格式,便于与历史基线对话。

交叉验证的一个本库特有注意点:软图真值使得"折间难度差异"可以被显式度量——按软图平均一致度(B 均值)为每幅图像估计难度,验证各折难度分布是否均衡;若某折集中了大量低一致度(杯缘模糊)图像,该折 F-score 会显著偏低,此时应报告折间方差而非只报均值,否则会高估或低估方法的稳定性。

§5.5 外部验证建议

  • 首选目标:REFUGE 训练集(400 幅带 OD/OC 真值)做域适应/泛化训练源,Drishti-GS 做目标域——BEAL 等工作的标准路径(Wang et al., MICCAI 2019)。
  • 次选:RIM-ONE-r3 / ORIGA 作为第二目标域,检验跨设备与跨人群稳健性。
  • 反向验证:在 Drishti-GS 训练的小模型到 REFUGE 测试集上的表现,可量化"小样本单中心训练"的外推上限。
  • 报告规范:跨库实验必须声明预处理差异(FOV、分辨率、是否以盘为中心)与软图阈值口径。
  • 最小外部验证集:即使资源有限,也建议保留一幅外部库图像作"冒烟测试",任何 pipeline 改动后重跑,防止库内过拟合悄悄累积。
  • 对照声明:引用 REFUGE/RIM-ONE 数字时同步给出其官方口径出处,避免把二手转引当作原始报告。
  • 负结果同样入库:跨域跌落、消融无效等负结果写入实验日志公开区,这是小样本基准社区最稀缺也最有价值的信息。

§6 AI 就绪指南 ⭐

§6.0 云端快速启动

官方数据需注册邮件申请,无官方云托管;Kaggle 镜像可直接挂载。以 Kaggle Notebook 为例(镜像约 1.16 GB,加载后内存与磁盘均无压力):

# Kaggle Notebook:数据集挂载路径示例(先在右侧 Add Input 添加该 Kaggle 数据集)
# /kaggle/input/drishtigs-retina-dataset-for-onh-segmentation/
import glob
paths = glob.glob("/kaggle/input/drishtigs-retina-dataset-for-onh-segmentation/**/*.png",
                  recursive=True)
print(f"PNG 总数: {len(paths)}")  # 镜像共 708 个文件,含图像与预处理 mask

Colab/Hugging Face 无官方托管镜像:官方注册包需自行上传到受控对象存储(注意许可条款限制再分发,建议挂载团队私有存储而非公开 bucket);Kaggle 镜像可通过 kagglehub 或 API 在任意环境拉取。云端实验的一条纪律:不要在公开 notebook 中完整展示测试集预测与真值对照图——即便数据本身免费,系统性公开测试集可视化会加速"测试集调参"的社区惯性。

§6.1 快速上手(本地加载)

以下代码块的前提说明:目录结构预期为 §4.0 所示官方典型布局(训练包内"图像目录 + 每幅图一个 GT 子目录");data_root 拼接关系为 data_root / 子包名 / GT根目录 / <ID> /;最小可用子集仅需任意 1 幅图像 + 其 GT 子目录(约 15 个文件)即可跑通全部加载逻辑。由于不同镜像目录命名有差异,代码统一用 glob 兜底而非硬编码路径。设计意图有三:rglob 全局搜索使加载器对官方包与两类镜像均可工作;软图加载返回 (4, H, W) 堆叠而非提前平均,保留逐专家信息;二值化函数把阈值显式参数化,呼应坑点 1 的口径纪律:

# pip install pillow numpy
from pathlib import Path
import numpy as np
from PIL import Image

DATA_ROOT = Path("~/data/Drishti-GS").expanduser()   # 官方包解压根目录

def load_image(img_id: str):
    """加载眼底原图。img_id 形如 'drishtiGS_001'。"""
    hits = list(DATA_ROOT.rglob(f"{img_id}.png"))
    assert hits, f"未找到 {img_id}.png,请检查 data_root 拼接关系"
    return Image.open(hits[0]).convert("RGB")        # 2896×1944 真彩

def load_softmap(img_id: str, region: str = "OD") -> np.ndarray:
    """按 glob 模式匹配软图(兼容任意专家缩写命名),
    返回 (4, H, W) float32 数组,值域 [0,1]。region: 'OD' 或 'Cup'。"""
    pats = sorted(DATA_ROOT.rglob(f"{img_id}_*Softmap{region}.png"))
    assert len(pats) >= 4, f"{img_id} 软图数量异常: {len(pats)}"
    maps = np.stack([np.asarray(Image.open(p), dtype=np.float32) / 255.0
                     for p in pats])
    return maps                                       # (4, H, W)

def binarize_gt(maps: np.ndarray, thr: float = 0.75) -> np.ndarray:
    """论文口径:软图阈值化得二值真值。thr=0.75 即 ≥3/4 专家一致。"""
    return (maps.mean(0) >= thr).astype(np.uint8)

img = load_image("drishtiGS_001")
od  = binarize_gt(load_softmap("drishtiGS_001", "OD"), thr=0.75)
print(img.size, od.shape, od.dtype, od.sum())   # -> (2896, 1944) (1944, 2896) uint8 目标像素数

§6.2 数据获取

获取路径的决策逻辑一句话概括:能注册走官方,赶时间用镜像。官方渠道拿到的是软图完整版与(注册后的)测试真值,是与文献对话的唯一可靠形态;镜像的价值在于零门槛验证想法,代价是形态不确定与许可传导模糊。三渠道对照如下:

渠道 方式 门槛 说明
官方注册下载 Drishti-GS 主页 → Download 页注册 邮件注册(人工审核) 官方目录结构;测试集真值注册后提供;免费使用
CVIT MIP 邮件申请 cvit.iiit.ac.in/mip/datasets.html 指引发邮件 邮件沟通 MIP 组数据集统一申请通道
Kaggle 社区镜像 lokeshsaipureddi/drishtigs-retina-dataset-for-onh-segmentation Kaggle 账号 1.16 GB / 708 文件;目录为重组织版;镜像自标 CC0 许可,使用仍须遵守上游非商业致谢条款
# Kaggle CLI 拉取镜像(已配置 kaggle API key)
kaggle datasets download -d lokeshsaipureddi/drishtigs-retina-dataset-for-onh-segmentation
unzip -q drishtigs-retina-dataset-for-onh-segmentation.zip -d Drishti-GS
# 官方渠道:注册通过后按邮件内链接下载官方包,解压后核对 §4.0 目录结构

使用合规:官方声明数据集 free to use,CVIT MIP 组要求非商业用途并在发表中致谢:“This research used data provided by the Medical Image Processing (MIP) group, IIIT Hyderabad”(CVIT MIP 数据集页)。

官方渠道申请流程(邮件注册制,按官方页面指引归纳):

  1. 访问官方主页,进入 Download 页面,填写注册信息(研究机构、用途说明、联系邮箱)。
  2. 等待注册确认(邮件审核制;审核周期以官方回复为准,本页不做承诺)。
  3. 获准后按邮件内链接下载官方训练包与测试包,核对 §4.0 目录结构。
  4. 测试集真值按官方说明在注册后提供;如未随包附送,按邮件指引另行申请。
  5. 发表成果时按 §9.3 完成双论文引用与 MIP 组致谢。

下载后第一件事是确认拿到的是官方软图版还是镜像硬化版——两者不可混用:

# 形态校验:数一下某幅训练图像的 GT 文件构成
from pathlib import Path
root = Path("~/data/Drishti-GS").expanduser()
gt_files = sorted(p.name for p in root.rglob("drishtiGS_001_*"))
softmaps = [f for f in gt_files if "Softmap" in f]
print(f"GT 文件总数: {len(gt_files)};软图数: {len(softmaps)}")
if len(softmaps) >= 8:
    print("官方软图版:每幅图 8 幅专家软图(OD/Cup ×4 人)+ 文本真值")
elif len(softmaps) == 0:
    print("镜像硬化版:GT 为预生成的二值 mask,软监督信息已丢失")

§6.3 预处理全流程

标准流水线:软图硬化 → ROI 中心裁剪 → 分辨率归一 → 强度归一 →(可选)极坐标变换。核心原则:先定盘心(真值文件或自估),围绕盘心裁剪固定大小 ROI,再做缩放——直接把 2896×1944 全图 resize 到 256×256 会把视盘压成几像素的模糊块,是社区最常见的失败起点:

# pip install numpy opencv-python
import numpy as np, cv2

def read_boundary_txt(path):
    """读取 80 扇区平均边界 TXT:两列 [x, y](盘心为原点)。
    返回 (80, 2) float 数组;缺失扇区由调用方按角度插值补全。"""
    pts = np.loadtxt(path, delimiter=",")
    return pts.reshape(-1, 2)

def crop_roi(img_bgr, center, size=600):
    """以盘心为中心裁剪 size×size ROI(边界补黑)。
    center: (x, y),来自 diskCenter.txt 或模型自估。"""
    x, y = int(center[0]), int(center[1])
    h, w = img_bgr.shape[:2]
    pad = size // 2
    canvas = np.zeros((h + 2 * pad, w + 2 * pad, 3), np.uint8)
    canvas[pad:pad + h, pad:pad + w] = img_bgr
    return canvas[y + pad:y + pad + size, x + pad:x + pad + size]

def preprocess(img_bgr, center, size=600):
    roi = crop_roi(img_bgr, center, size)             # 1) ROI 裁剪
    roi = cv2.resize(roi, (256, 256), interpolation=cv2.INTER_AREA)  # 2) 归一
    lab = cv2.cvtColor(roi, cv2.COLOR_BGR2LAB)        # 3) CLAHE 仅作用于 L 通道
    lab[..., 0] = cv2.createCLAHE(2.0, (8, 8)).apply(lab[..., 0])
    out = cv2.cvtColor(lab, cv2.COLOR_LAB2BGR)
    out = out.astype(np.float32) / 255.0              # 4) 强度归一
    return out

要点与常见变体:CLAHE 在 LAB 的 L 通道上做(比全局直方图均衡更少破坏色彩);M-Net 一脉的方法在裁剪后追加极坐标变换(以盘心展开),使视杯边界更平滑、CDR 换算更直接(Fu et al., TMI 2018);RSAP-Net 等在极坐标前叠加 MSRCR 色彩恢复(RSAP-Net, BMC Bioinformatics 2022)。训练与测试必须用同一套预处理与同一盘心来源(见 §5.3 泄漏第四条)。

<details>
<summary>极坐标变换参考实现(M-Net 式,点击展开)</summary>

# pip install numpy opencv-python
# 以盘心为极点、以最大盘半径为归一化半径,把 ROI 展开为 (r, theta) 图像。
# 展开后视杯成为"上下两条水平边界",CDR = 杯下边界半径和 / 盘下边界半径和。
import numpy as np, cv2

def polar_transform(roi_bgr, center, radius=None, out_size=(256, 512)):
    """roi_bgr: 已裁剪的方形 ROI;center: 盘心 (x, y)(ROI 内坐标)。"""
    h, w = roi_bgr.shape[:2]
    radius = radius or min(center[0], center[1], w - center[0], h - center[1])
    flags = cv2.WARP_POLAR_LINEAR
    polar = cv2.warpPolar(roi_bgr, (out_size[1], out_size[0]),
                          (center[0], center[1]), radius, flags)
    # warpPolar 输出角度沿 y 轴(0-2π)、半径沿 x 轴(0-R);
    # 旋转 90° 使半径沿 y 轴向上、角度沿 x 轴向右(M-Net 习惯)。
    return cv2.rotate(polar, cv2.ROTATE_90_COUNTERCLOCKWISE)

def cdr_from_polar_masks(polar_od, polar_cup, theta_deg=(75, 105)):
    """在极坐标 mask 上取垂直方向(约 90°±15°)角度带的边界半径,算垂直 CDR。"""
    lo, hi = int(theta_deg[0] / 360 * polar_od.shape[1]), \
             int(theta_deg[1] / 360 * polar_od.shape[1])
    band_od, band_cup = polar_od[:, lo:hi], polar_cup[:, lo:hi]
    r_od = np.nonzero(band_od.any(axis=1))[0].max()   # 最大盘半径(下边界)
    r_cup = np.nonzero(band_cup.any(axis=1))[0].max()
    return float(r_cup) / float(r_od)

</details>

§6.4 PyTorch DataLoader

下面的 Dataset 类覆盖训练/测试双模式:训练模式加载并硬化软图为三分类 mask(0=背景、1=盘沿、2=视杯),测试模式(无真值)返回占位 mask 仅供推理。mask 编码采用"视杯内嵌于视盘、后写覆盖"的约定,与 M-Net 一脉的多标签口径等价可互换。

<details>
<summary>完整可运行的 Dataset + DataLoader 代码(点击展开)</summary>

# pip install torch pillow numpy
# 目录结构预期见 §4.0:官方典型布局;glob 兜底兼容镜像差异
from pathlib import Path
import glob, re
import numpy as np
import torch
from torch.utils.data import Dataset, DataLoader
from PIL import Image

class DrishtiGSSeg(Dataset):
    """Drishti-GS 视盘/视杯联合分割数据集(官方训练集 50 幅)。
    mask 编码:0=背景, 1=盘沿(视盘-视杯差), 2=视杯。
    阈值 thr 采用论文默认 0.75;复现其他文献口径时改 0.5 并在实验记录中声明。"""

    def __init__(self, data_root, split="train", thr=0.75, size=256):
        self.root = Path(data_root).expanduser()
        self.split = split
        self.thr = thr
        self.size = size
        ids = sorted(set(re.findall(r"drishtiGS_\d{3}",
                    " ".join(str(p) for p in self.root.rglob("*.png")))))
        ids = ids[:50] if split == "train" else ids[50:]
        assert len(ids) == (50 if split == "train" else 51), \
            f"{split} 划分数量异常: {len(ids)}"
        self.ids = ids

    def _soft(self, img_id, region):
        pats = sorted(self.root.rglob(f"{img_id}_*Softmap{region}.png"))
        if not pats:                                   # 测试集无真值 -> 返回空图
            return None
        maps = np.stack([np.asarray(Image.open(p), np.float32) / 255.
                         for p in pats])
        return maps.mean(0) >= self.thr                # (H, W) bool,论文口径

    def _resize_mask(self, m):
        # 用最近邻保持二值性;PIL 的 NEAREST 对 mask 最稳
        t = Image.fromarray(m.astype(np.uint8) * 255)
        return np.asarray(t.resize((self.size, self.size), Image.NEAREST)) > 127

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

    def __getitem__(self, i):
        img_id = self.ids[i]
        img = Image.open(next(self.root.rglob(f"{img_id}.png"))).convert("RGB")
        img = img.resize((self.size, self.size), Image.BILINEAR)
        img = torch.from_numpy(np.asarray(img, np.float32) / 255.).permute(2, 0, 1)
        od  = self._soft(img_id, "OD")
        cup = self._soft(img_id, "Cup")
        if od is None:                                 # 测试集占位 mask(仅推理用)
            z = np.zeros((self.size, self.size), bool)
            return img, torch.from_numpy(z).long(), img_id
        od, cup = self._resize_mask(od), self._resize_mask(cup)
        mask = np.zeros_like(od, np.uint8)
        mask[od] = 1
        mask[cup] = 2                                  # 视杯内嵌于视盘,后写覆盖
        return img, torch.from_numpy(mask).long(), img_id

ds = DrishtiGSSeg("~/data/Drishti-GS", split="train", thr=0.75)
dl = DataLoader(ds, batch_size=4, shuffle=True, num_workers=4, pin_memory=True)
imgs, masks, ids = next(iter(dl))
print(imgs.shape, masks.shape, ids)     # -> torch.Size([4,3,256,256]) torch.Size([4,256,256]) ('drishtiGS_001',...)

</details>

§6.5 坑点 8 个(真实失败模式)

以下 8 个坑点全部来自该数据集的真实特有失败模式:软图语义、镜像混用、极端纵横比、极坐标边界文本、类不平衡与目标占比、单人群域偏移、CDR 定义、多数票标签。每条按"问题/症状/解决(简单→进阶→SOTA)/参考"四段展开,参考链接均可回溯原始出处。

⚠️ 坑点 1:软图不是二值 mask,阈值口径决定分数可比性(分类:标签理解)

问题:官方真值是 4 专家融合的 0-1 软图而非硬分割。论文评估用 0.75 阈值(≥3/4 专家一致),社区复现常用 0.5——同一模型在两口径下的 OC F-score 可差数个百分点。
症状:你的方法"落后"文献 3-5 个点,或反过来"轻松超越 SOTA",但改一个阈值排名就翻转;审稿人质疑口径不一致。
解决:

  1. 简单方法:训练与评估全程固定 thr=0.75(论文口径),并在实验记录与论文中显式声明。
  2. 进阶方法:双阈值各报一版结果(0.5/0.75),把阈值敏感性当消融实验写进论文。
  3. SOTA 方法:不硬化,直接对软图做软交叉熵/KL 监督,让模型预测逼近专家一致度分布,顺带获得校准增益。
    参考:ISBI 2014 论文 PDF(评估口径定义);2DAnatomyDatasets issue #10(0.5 阈值化镜像示例)

⚠️ 坑点 2:Kaggle 镜像把 51 幅测试图像混进训练(分类:数据泄漏)

问题:社区镜像为 Images/GT 重组织结构,教程普遍"101 幅全用随机划分";测试集真值本质上是注册制保留资源,混用后结果与官方 50/51 口径不可比,且有测试污染。
症状:训练日志里测试 Dice 高得反常;与官方口径论文对比时数字系统性偏高或偏低;复现者在另一个镜像上跑出完全不同的划分。
解决:

  1. 简单方法:按编号切分——drishtiGS_001-050 训练、drishtiGS_051-101 封存,永不参与调参。
  2. 进阶方法:训练集内部 80/20 划分验证集,测试集仅在最终评估触碰一次;划分文件与随机种子入库留档。
  3. SOTA 方法:镜像数据仅用于方法开发,正式实验改用官方注册版并在论文附官方划分核对表。
    参考:官方主页(划分与注册说明);Kaggle 镜像

⚠️ 坑点 3:2896×1944 全图直接 resize 摧毁视盘几何(分类:预处理陷阱)

问题:目标区域仅占全图约 1%(中位 63,341 px / 约 5.63M 全图像素),把全图直接缩到 224/256 时视盘只剩十几像素宽,视杯细节归零,CDR 更无从谈起。
症状:loss 正常下降但验证 Dice 的 OC 长期 <0.6 且波动巨大;可视化预测是一团圆斑,CDR 估计恒定在 0.5 附近。
解决:

  1. 简单方法:以盘心为中心裁剪 600×600 ROI 再缩放到 256×256(盘心用官方 diskCenter.txt)。
  2. 进阶方法:训练阶段用模型自估盘心 + 随机偏移增强定位鲁棒性;测试阶段统一来源(真值或自估)并声明。
  3. SOTA 方法:ROI 后追加极坐标变换(M-Net 式),视杯边界平滑化、CDR 换算自然化;或叠加 MSRCR 色彩恢复。
    参考:Fu et al., IEEE TMI 2018(极坐标变换);RSAP-Net, BMC Bioinformatics 2022

⚠️ 坑点 4:边界 TXT 是 80 扇区极坐标点,不是逐像素轮廓(分类:工程陷阱)

问题:<ID>_*AvgBoundary.txt 存的是以盘心为原点、80 个等角度扇区的平均边界 [x,y] 坐标;直接当多边形描边或忽略坐标原点/列序都会得到错位 mask。扇区离散化也意味着边界平滑而不是精确轮廓。
症状:生成的 mask 与软图阈值结果肉眼可见地偏移或旋转 90°;边界距离指标出现离谱的几十像素系统误差。
解决:

  1. 简单方法:按角度排序后插值闭合多边形,再用 cv2.fillPoly 栅格化;坐标加上盘心偏移(读取 diskCenter.txt)。
  2. 进阶方法:直接弃用 TXT 走软图阈值化(两套真值本应一致,用软图省去一次换算误差)。
  3. SOTA 方法:复刻论文的角向边界距离评估(N=24 角度采样、以盘心为原点),让"边界定位"指标与文献同口径。
    参考:ISBI 2014 论文 PDF(边界格式与评估定义)

⚠️ 坑点 5:目标占比约 1% + 类分布 70:31,裸 BCE 学成全背景(分类:偏倚陷阱)

问题:视杯像素占比极小(中位掩膜 63,341 px,视杯仅其子集),图像级标签又 2:1 偏向青光眼;未加权的 BCE/CE 会让网络收敛到"几乎全背景"的局部最优。
症状:训练 Dice 前期固定在 0;分类任务里模型对全体输出多数类即得约 69% 准确率却毫无判别力。
解决:

  1. 简单方法:分割用 Dice Loss 或 BCE+Dice 复合损失;分类按类别倒数加权。
  2. 进阶方法:ROI 内再统计前景占比做动态正负样本比;Focal Loss 处理难例。
  3. SOTA 方法:M-Net 式多标签损失 + 极坐标表示,让视杯像素的空间分布对网络更友好。
    参考:openmedlab 统计(像素占比);Fu et al., TMI 2018

⚠️ 坑点 6:单人群单中心——跨库评估精度骤降(分类:偏倚陷阱)

问题:101 幅全部来自印度单一人群、单一医院、统一 30° FOV 构图;在其他库训练的模型到此评估、或反之,都遭遇显著域偏移。已有外部研究观察到模型在"未见数据"上准确率明显回落。
症状:REFUGE 上 Dice 0.95+ 的模型在 Drishti-GS 上 OC 掉到 0.80 以下;Grad-CAM 显示模型关注非视盘区域。
解决:

  1. 简单方法:任何"泛化"声明前,先在 Drishti-GS 与源库各跑一次并公开跌落幅度。
  2. 进阶方法:用 BEAL 式无监督域适应(边界+熵对抗),REFUGE→Drishti-GS 可恢复大部分差距。
  3. SOTA 方法:多源联合训练 + 测试时自适应(TTA),并把跨库结果作为论文主表而非附录。
    参考:Wang et al., MICCAI 2019(BEAL,DOI 10.1007/978-3-030-32239-7_12);跨库泛化实例(Research Square 预印本)

⚠️ 坑点 7:CDR 是垂直直径比,不是面积比(分类:评估误用)

问题:官方 CDR 定义为视杯与视盘的垂直方向直径比(0-1)。用"面积比"或"水平直径比"近似,都会与 cdrValues.txt 的参照值产生系统性偏差——垂直方向恰是青光眼杯凹扩大的主轴。
症状:CDR 估计误差(MAE)比文献高 0.03-0.08 且方向性偏移(系统性偏大或偏小);与专家 CDR 的散点图斜率偏离 1。
解决:

  1. 简单方法:对预测 mask 逐行扫描取每列/每方向跨度,取垂直方向最大直径之比(以盘心为参照)。
  2. 进阶方法:在极坐标表示下直接由上下边界半径差计算垂直 CDR,天然与 M-Net 式预测对齐。
  3. SOTA 方法:按 cdrValues.txt 的 4 名专家分别报告误差(论文表 2 的形态),展示与标注者方差的对齐程度。
    参考:ISBI 2014 论文 PDF(CDR 定义与评估)

⚠️ 坑点 8:图像级标签是 3/4 多数票 + 切迹单专家判定,不是临床金标准(分类:标签理解)

问题:image_lvl_diagnosis 的"青光眼/正常"由 4 名专家 3/4 多数票合成,切迹仅由最资深专家一人判定;把它当作临床级真值训练与评估,会高估模型的真实诊断性能,且无法反映判定分歧。
症状:分类 AUC 在库内评估很高、跨库或 prospective 评估骤降;错误样本复盘时发现大量"专家 2:1 分歧"图像被当作确定标签。
解决:

  1. 简单方法:论文措辞明确为"专家多数票标签"而非"临床诊断";报告结果时注明标签性质。
  2. 进阶方法:把软图衍生的结构指标(CDR、盘沿宽度)与图像级标签联合建模,用分歧图像做不确定样本分析。
  3. SOTA 方法:噪声感知训练(co-teaching / 标签重构),或在多库(ORIGA/REFUGE)标签上联合训练以稀释单库标注噪声。
    参考:JSM 2015 数据论文(标签合成规则);CVIT MIP 数据集页

§6.6 数据增强

增强 安全性 说明
随机水平翻转 ✅ 安全 眼底水平结构近似对称;注意翻转后盘心 x 坐标同步镜像
小角度旋转(±15°)+ 小幅缩放 ✅ 安全 模拟拍摄角度差异;同步变换 mask 与盘心
亮度/对比度抖动、CLAHE ✅ 安全 模拟曝光差异;强度控制在 CLAHE clipLimit ≤ 4
高斯模糊/轻微噪声 ✅ 安全 模拟光学离焦;核尺寸 ≤ 5
大角度旋转(>30°) ❌ 危险 眼底垂直方向有血管弓与上/下象限切迹语义,大角度破坏方位临床意义
垂直翻转 ❌ 危险 上/下象限盘沿与切迹分布不对称,垂直镜像改变病理语义
弹性形变 ❌ 危险 不可逆改变杯盘几何,直接污染 CDR 监督
遮挡/随机擦除大块区域 ❌ 危险 可能整块抹掉视杯,产生错误监督

增强策略的总体原则是"保护方位语义与几何精度":本库的所有下游指标(边界距离、CDR)都以盘心极坐标为参照系,任何破坏各向异性或方位先验的增强都会让指标失真。工程建议:把增强配置与阈值口径一并写入实验配置文件;翻转/旋转类增强必须同步变换盘心坐标与极坐标参照,否则 CDR 监督会静默错位。

§6.7 模型推荐表

模型 适用任务 在本库参考性能 推荐理由
U-Net / ResUNet 变体 OD/OC 分割基线 OD 0.960 / OC 0.850(复现口径) 小数据首选基线,训练快、易复现
M-Net + 极坐标变换 OD/OC 联合分割 OD 0.959 / OC 0.866 本库历史标杆架构,极坐标对视杯友好
CE-Net OD/OC 分割 OD 0.9688 / OC 0.8699 预训练骨干友好,小样本增益明显
BEAL(UDA) 跨域 OD/OC 分割 OD 0.961 / OC 0.862(REFUGE→Drishti) 跨库评估的标准对照方法
RSAP-Net OD/OC 联合分割 OD 0.9752 / OC 0.9012 近期高分解,注意力残差路径

性能均为各文献自报口径,预处理与阈值不同,不可直接横比(§8.1 说明)。

选型补充说明:表内"参考性能"给出的是量级感而非精确对位——例如 M-Net 在不同复现中 OD Dice 有 0.959-0.967 的浮动(PMC11506706 表 2 与 BMC Medical Imaging 2020 表 5 各自转引)。工程选型的实际建议:以 U-Net 基线校准自己流水线的口径,再决定是否引入极坐标与注意力机制;模型体量在本库 101 幅的体量下不是瓶颈,标注口径才是。

§6.8 硬件需求表

场景 配置 说明
单幅加载/可视化 CPU 4 GB 内存 101 幅 PNG 全量加载 <2 GB 内存
256×256 ROI 训练 单卡 6-8 GB 显存(如 RTX 3060) batch 8-16 轻松容纳,一轮完整训练 <1 小时
512×512 / 极坐标训练 单卡 11-16 GB 显存 batch 4-8;建议 AMP 混合精度
5 折交叉验证全流程 单卡 12 GB + 数小时 体量小,消融实验可在单日内完成

硬件结论:本库是"任何有 GPU 的实验室都能复现 SOTA"的少数基准之一——瓶颈不在算力而在口径管理,这既是它的门槛也是它的教学价值。

§6.9 评估指标代码

三套指标的实现要点:F-score 是逐像素二分类问题(先硬化预测再算 TP/FP/FN);角向边界距离本质是"以盘心为原点的径向轮廓对齐",不依赖欧氏距离变换,对边界断裂鲁棒;CDR 误差必须输出逐专家数组而非单一 MAE——后者丢弃了标注者方差信息,而那正是本库相对其他库的独有信号。

<details>
<summary>论文三套评估指标的 PyTorch/NumPy 实现(点击展开)</summary>

# 依据 ISBI 2014 论文定义实现:区域 F-score / 角向边界距离 / CDR 误差
import numpy as np

def fscore(pred: np.ndarray, gt: np.ndarray):
    """区域分割 F-score(论文口径:GT 为软图阈值 0.75 的二值图)。"""
    tp = int((pred & gt).sum())
    precision = tp / max(int(pred.sum()), 1)
    recall = tp / max(int(gt.sum()), 1)
    return 2 * precision * recall / max(precision + recall, 1e-8)

def angular_boundary_error(pred_mask, gt_mask, center, n_sector=24):
    """边界定位:以盘心为原点,n 个角度方向上 GT/预测边界半径的平均差(像素)。
    对应论文 D 指标(论文以 N=24 采样)。"""
    ys, xs = np.nonzero(gt_mask)
    if len(xs) == 0:
        return np.nan
    ang = np.arctan2(ys - center[1], xs - center[0])
    rad = np.hypot(xs - center[0], ys - center[1])
    bins = ((ang + np.pi) / (2 * np.pi) * n_sector).astype(int) % n_sector
    gt_r = np.array([rad[bins == b].max() if (bins == b).any() else np.nan
                     for b in range(n_sector)])
    ys2, xs2 = np.nonzero(pred_mask)
    if len(xs2) == 0:
        return np.nan
    ang2 = np.arctan2(ys2 - center[1], xs2 - center[0])
    rad2 = np.hypot(xs2 - center[0], ys2 - center[1])
    bins2 = ((ang2 + np.pi) / (2 * np.pi) * n_sector).astype(int) % n_sector
    pd_r = np.array([rad2[bins2 == b].max() if (bins2 == b).any() else np.nan
                     for b in range(n_sector)])
    ok = ~np.isnan(gt_r) & ~np.isnan(pd_r)
    return float(np.abs(gt_r[ok] - pd_r[ok]).mean())

def vertical_cdr(mask_od: np.ndarray, mask_cup: np.ndarray) -> float:
    """垂直杯盘比:两掩膜在垂直方向的最大跨度之比。"""
    def vspan(m):
        cols = np.nonzero(m.any(axis=0))[0]
        if len(cols) == 0:
            return 0.0
        return max(m[:, c].sum() for c in cols)
    return float(vspan(mask_cup) / max(vspan(mask_od), 1e-8))

def cdr_error(pred_cdr, ref_cdrs):
    """CDR 估计误差:与 4 名专家参照的 MAE(返回逐专家数组,供分层分析)。"""
    return np.abs(np.asarray(ref_cdrs, np.float32) - pred_cdr)

</details>

§6.10 MLOps 笔记

  • 数据版本化:官方注册包与 Kaggle 镜像分别入库(DVC/LFS),记录镜像快照时间戳(2021-10);软图阈值作为配置项进入实验跟踪(MLflow/W&B),与随机种子、划分文件一同版本化。
  • 口径看板:维护"thr=0.5 / 0.75 × 50/51 官方划分 / 5 折 CV"的最小结果矩阵,防止跨实验口径漂移。
  • 评估复算:cdrValues.txt 与盘心文件解析器配单元测试(构造合成 80 扇区文本用例),边界插值代码是最容易悄悄出错的模块。
  • 注册合规留痕:官方注册人与致谢声明字符串入库管理,发表前核对 CVIT 要求的致谢文本(§6.2)。
  • 小样本纪律:101 幅体量下任何"验证集涨点"都可能是噪声——重要结论须复跑 ≥3 个种子并报告均值±标准差。
  • 软图资产保护:镜像硬化版与官方软图版禁止互相覆盖;凡涉及软监督的实验必须记录输入形态(软图/硬化 mask),在模型卡与实验报告头部显式标注。
  • 结果提交留档:官方注册制提交通道的每次提交(日期、口径、分数)应同步归档到内部看板,作为与外部榜单对账的锚点(JSM 2015)。
  • 数据卡联动:将 §7.7 DAIMS 评分与 rai:dataLimitations 字段同步进内部数据卡,任何跨库实验立项前先对照限制清单(单人群、无时间戳、多数票标签)做可行性签字。

§7 质量评估与局限性

§7.1 已知偏倚表

偏倚等级依据两点评定:官方是否明示、对下游结论的影响方向。本库的特殊性在于多数偏倚"官方明知且明示"(如分布偏斜是刻意设计),这类偏倚应视为数据集特性而非缺陷;真正需要警惕的是使用侧对特性的无视。

偏倚类型 描述 严重程度 缓解措施
人群偏倚 单一印度人群、单中心(Madurai),无族群混合 高 跨库训练/评估(REFUGE、RIM-ONE);报告跌落幅度
标签分布偏倚 青光眼:正常 ≈ 70:31,刻意偏向病例 中 分层划分;分类任务用类加权
标注分歧偏倚 视杯边界专家间距离约为视盘 3 倍(§2.6) 高 使用软图监督;报告按阈值口径的敏感性
构图偏倚 全部 30° FOV、以 ONH 为中心 中 跨库时统一或适配 ROI 策略;勿混入黄斑中心构图库直接训练
设备偏倚 机型未披露、单一采集体系 中 声明局限;避免声称设备无关
标签噪声偏倚 图像级标签为 3/4 多数票,切迹单专家判定 中 噪声感知训练;标签性质显式声明

§7.2 标注质量

标注质量的制度设计优于多数同期数据集:4 名不同资历专家独立标注、专门的可变形圆标注工具、明确量化的融合规则(80 扇区平均;B≥0.75 = 3/4 一致)、CDR 按专家保留。局限同样清晰:官方未发布逐专家一致性系数(Dice/Kappa);软图把分歧"保留"了下来,但边界 TXT 的 80 扇区平均会平滑掉局部剧烈分歧;切迹标签无双人复核。使用建议:涉及视杯精细边界的结论,务必以软图口径复核边界 TXT 的平滑效应。

资历梯度的存在让"经验 3/5/9/20 年"不只是元数据,而是可利用的分析轴:论文参照实验按专家分别报告 CDR 估计误差,本质上承认每位标注者都是一道"参照线"而非噪声源。复用建议有二:其一,把模型预测与四条专家参照逐一对比,若模型系统性偏向资深专家口径,说明它学到了更"锐利"的边界约定——这是单真值数据集无法提供的信息;其二,用 B 值分层评估(B≥0.9 / 0.75-0.9 / 0.5-0.75 的像素分别统计 F-score),可以定位模型误差究竟是"人人都会错的模糊带"还是"专家共识区的硬伤",两者对应完全不同的改进路径(前者需要软监督,后者需要更强骨干)。

§7.3 泛化性表

部署场景 失效风险 证据
非印度人群(东亚/高加索)筛查 高——盘沿色素、视盘大小分布不同 单人群设计(官方主页);BEAL 类跨域工作以本库为目标域
广角(45°-60° FOV)或黄斑构图图像 中——构图先验失效 本库全部 30° ONH 中心构图
OCT 或立体影像流水线 高——2D 投影语义不迁移 数据集仅彩色眼底照像
已见疾病的晚期病例 低-中——训练分布本就偏重病例 70:31 偏斜分布(§4.2)
移动端/社区筛查设备图像 高——低质压缩与分辨率差异 2896×1944 无损 PNG 的质量上限

泛化性的总判断:本库适合做"泛化的考官"而非"泛化的保障"。它的每一个设计选择(单人群、单中心、30° 中心构图、无损高清)都在收紧输入分布,这使跨域跌落成为大概率事件而非意外。反过来,这正是其作为测试床的价值:在 REFUGE 上从容的模型到这里掉几个点,掉的就是"人群/设备先验"那部分虚假收益。

§7.4 伦理

图像采集自 Aravind Eye Hospital(Madurai)就诊者并获知情同意(CVIT MIP 数据集页);发布内容不含患者身份信息,标注工具示例图中患者 ID 已做匿名抑制(JSM 2015)。数据免费供非商业研究使用,并要求成果致谢 MIP 组。本库未披露独立伦理委员会批准文号;如需合规背书,请向发布方函询。

本库的伦理姿态与其筛查定位一致:知情同意 + 最小化发布(无任何身份/人口学字段)+ 非商业许可 + 致谢要求,构成完整的低风险研究闭环。需要使用者自行补足的部分是:面向临床部署的模型验证仍需按属地法规重新走伦理审批——数据集的授权范围覆盖研究使用,不自动延伸到临床应用;涉及印度本土人群的数据出境与再分析,还应核对印度个人数据保护法规的最新要求。

§7.5 公平性

数据集本身即是"公平性张力"的样本:它填补了印度人群眼底标注资源的空白(对印度本土筛查研究价值极高),但被广泛当作"通用青光眼基准"使用时,其单人群构成会静默地放大其他人群上的性能高估。性别维度上官方声明男女大致均等;年龄覆盖 40-80 岁但无逐例分布。做公平性审计时,应把"人群=印度、设备=单中心"作为已知混杂变量,并用 REFUGE(多族裔)等库做分层对照。

一个常被忽略的公平性细节是疾病谱代表性:数据集偏斜的 70:31 构成意味着正常眼样本相对稀缺,且正常对照组来自例行验光人群——这与真实筛查场景(绝大多数为正常眼)的先验分布恰好相反。直接以本库训练的筛查器在真实部署中会面临先验漂移,灵敏度/特异度的平衡点需要按部署人群重新校准。此外,Aravind 医院服务大量基层与欠发达地区患者,但本库未发布社会经济地位、居住地等维度,基于本库无法评估这些轴上的公平性——这本身也应在数据卡中如实声明。

§7.6 数据漂移

数据集为 2014 年前后封板的历史快照,无持续采集,传统意义上的时间曝光/设备老化类时间漂移不适用;真正需要监控的是使用侧漂移:社区镜像的重组织与预阈值化(§4.0)、不同预处理流水线(是否极坐标、盘心来源)造成的"隐性版本分裂"。团队应把预处理配置纳入版本控制,并在任何公开结果中标注数据来源(官方/镜像)与阈值口径。

纵向研究视角的补充:数据集内无随访图像,任何"进展"(progression)语义都不存在——不要把编号相邻的图像当作时序样本。若研究需要进展标注,应转向含纵向随访的队列资源,本库的位置仅在"横断面结构评估"这一格。

§7.7 DAIMS 数据集评估

# 检查项 状态 说明
1 宽格式 ✅ 每幅图像独立目录,图像+文本+表格文件一一对应,无宽表歧义
2 唯一标识 ✅ drishtiGS_001-101 连续编号,全局唯一
3 特殊字符 ⚠️ Kaggle 镜像解压目录含时间戳后缀;专家缩写文件名含标点,跨平台脚本需 glob 兜底
4 重复行 ✅ 图像编号连续无重复;未发现同图多记录
5 缺失编码 ⚠️ 无显式缺失编码体系;测试集真值缺失为设计性保留,易被误判为数据缺失
6 标签标识 ⚠️ 图像级诊断为 3/4 多数票,切迹为单专家判定;无置信度字段
7 罕见类分组 ⚠️ 切迹阳性逐例计数未披露;无青光眼分期等亚组标签
8 偏倚评估 ⚠️ 论文自述分布偏斜;官方未附偏倚评估章节
9 数据字典 ⚠️ 文件格式语义散落于两篇论文,无独立数据字典文件
10 信息性缺失解释 ⚠️ 测试集真值保留与患者元数据省略未在数据包内说明
11 设备记录 ❌ 相机机型与采集参数未披露
12 共线性 ✅ 单模态图像数据,无表格协变量,不存在共线性风险
13 编码映射 ⚠️ CDR/切迹/诊断无标准编码(ICD/SNOMED)映射文件
14 时间戳处理 ⚠️ 无采集时间戳;仅有发布时间线(2014/2015/2021 镜像)
15 划分建议 ✅ 官方 50/51 划分明确且十余年沿用
16 泄漏讨论 ⚠️ 官方未讨论患者级泄漏(患者-图像映射未披露);社区误用普遍
17 标签分布 ✅ 70 青光眼/31 正常经三源交叉验证(§3.2)
18 测量偏倚 ⚠️ 软图阈值口径(0.5/0.75)与盘心来源差异构成测量口径偏倚
19 外部验证建议 ✅ REFUGE/RIM-ONE 跨域评估已成社区标准实践
20 版本记录 ⚠️ 2014 基础版→2015 扩展版无正式 changelog;镜像版本更混乱
21 预处理脚本 ❌ 官方未发布任何预处理/加载脚本
22 合规要求 ✅ 免费非商业 + 致谢要求 + 知情同意声明齐备
23 多模态对齐 ✅ 单模态数据集,不适用多模态对齐问题
24 去标识化 ✅ 无患者标识字段;标注工具示例已匿名抑制患者 ID

DAIMS 评分:16 / 24(✅ 10 项、⚠️ 12 项、❌ 2 项)

评分解读:这是一个"科学设计精细、工程配套薄弱"的 2014 年代数据集。它的标注制度(多专家软标注、明确融合规则、CDR 按专家保留)在同期首屈一指,使其在"标签标识""测量偏倚"等项上只需注意而非致命;失分集中在数据包自身的工程化程度——没有数据字典、没有预处理脚本、没有设备与时间戳记录,且社区镜像进一步模糊了版本边界。两项 ❌(设备记录、预处理脚本)都源自发布年代的信息披露惯例,而非刻意隐瞒。

对你意味着什么:若你的任务只依赖图像与标注(分割/CDR/分类),本库可直接进入生产级实验流程,按 §6 的 glob 加载与双阈值口径执行即可;若你的研究需要设备溯源、患者级分层或时间序列语义,本库无法满足,应改用 REFUGE(官方挑战赛口径完整)或自建队列;无论哪种情况,都请把"官方注册版优先、镜像仅开发用"写进团队的数据管理规范,并复用 §6.10 的口径看板防止跨实验漂移。

§7.8 外部验证矩阵

外部数据集/场景 来源机构 评估任务 性能指标 相对内部变化 关键发现
REFUGE(源域)→ Drishti-GS(目标域,UDA) REFUGE:多机构挑战赛;BEAL:港中文等 无监督域适应 OD/OC 分割 OD Dice 0.961 / OC Dice 0.862 低于库内监督上限约 1-4 个点 边界+熵对抗可大幅弥合跨域差距(Wang et al., MICCAI 2019)
多源训练 → Drishti-GS(泛化评估) 多家(综述口径) 图像级青光眼分类 准确率在未见数据上明显回落(预印本报告) 外部验证准确率显著低于库内 跨库泛化落差是该库作为目标域的常态(Research Square 预印本,未经同行评审终稿,谨慎引用)
Drishti-GS 训练 → 其他库(反向验证) 社区常见做法 OD/OC 分割迁移 未见系统性同行评审汇总 — 小样本单中心训练的外推上限有限,建议仅作补充实验

外部验证矩阵只收录有发表支撑的结果;BEAL 一行为同行评审会议论文,预印本一行已显式标注状态。更多跨域数字见 §8.1 的口径说明。

矩阵的整体读法:外部验证证据集中于分割任务(有 Dice 可比),分类任务的外部验证证据薄弱且多为预印本——这本身是本库生态的一个空白,也提示"跨库分类泛化"仍是可发表的贡献方向。引用矩阵数字时务必连同其口径(源域、是否 UDA、阈值)一起引用,裸数字会误导。


§8 基准性能与生态

§8.1 排行榜(OD/OC 联合分割,官方 50/51 口径)

排名 模型 性能(OD Dice / OC Dice) 年份 关键技术 完整引用 代码
1 RSAP-Net 0.9752 / 0.9012(BLE 6.33/11.97 px) 2022 残差空间注意力路径 + MSRCR-PT 预处理 RSAP-Net authors et al., 2022, BMC Bioinformatics. DOI 10.1186/s12859-022-05058-2 未公开
2 CE-Net 0.9688 / 0.8699(BLE 5.04/16.06 px) 2019 密集空洞卷积 + 多核池化 Gu Z. et al., 2019, IEEE TMI 38(10). DOI 10.1109/TMI.2019.2901676 社区复现
3 BEAL(UDA) 0.961 / 0.862 2019 边界+熵驱动对抗学习(REFUGE→Drishti 无监督) Wang S., Yu L., Li K., Yang X., Fu C.W., Heng P.A., 2019, MICCAI 2019 Part I, pp.102-110. DOI 10.1007/978-3-030-32239-7_12 EmmaW8/BEAL
4 M-Net 0.959 / 0.866 2018 多标签极坐标网络 + 侧输出层 Fu H. et al., 2018, IEEE TMI 37(11). DOI 10.1109/TMI.2018.2791488 社区复现
5 U-Net(基线) 0.960 / 0.850 2015 编解码对称分割网络 Ronneberger O., Fischer P., Brox T., 2015, MICCAI 2015. DOI 10.1007/978-3-319-24574-4_28 广泛开源

数值不可直接比较的原因:各文献的 ROI 裁剪尺寸(512/600 px)、是否极坐标变换、盘心来源(真值/自估)、软图阈值(0.5/0.75)与边界距离(BLE)实现均不同;部分行数值为第三方统一复现口径的转引(如 PMC10910696 表 4、BMC 表 5)。CDR 误差维度上,patch 级输出空间对抗学习(pOSAL)报告 δcdr 0.082,LC-MANet 报告 0.043(口径见 PMC11506706 表 2),与 Dice 同样不可跨文横比。

§8.2 SOTA 总结与选型建议

本库的分数天花板由任务难度结构性决定:视盘分割 0.97+ 已接近标注一致性上限,视杯分割 0.90 附近仍在缓慢爬升——继续涨点的空间主要来自预处理(极坐标/色彩恢复)与监督设计(软图/边界损失),而非骨干网络堆料。选型建议:快速起步用 U-Net + ROI 裁剪基线对齐 0.85/0.85;冲 OC 精度用极坐标 + 多标签损失(M-Net 式)或注意力残差路径(RSAP-Net 式);做跨域声称则必须带 BEAL 式 UDA 对照。任何新方法的正确打开方式是:先声明阈值与盘心口径,再谈分数。

从趋势看,本库的角色正在从"训练场"迁移为"考场":大规模预训练与 REFUGE 级数据量把训练需求转移到更大的库,而 Drishti-GS 以其"小、硬、口径清晰"的特质,日益承担域偏移考核与低成本消融的功能。对资源有限的团队,合理的资源分配是:在 REFUGE 上训练、在本库上做严格的跨域报告;对方法学团队,软图分歧与逐专家 CDR 仍是未被充分利用的信号源——围绕"预测一致度是否逼近专家一致度"的校准研究,是本库区别于所有后继大库的独特价值区。

§8.3 评测协议

  1. 划分:官方训练 50(全部真值)/测试 51(真值注册制);训练集内 80/20 划验证。
  2. 真值生成:软图按声明阈值(论文 0.75)二值化;mask 编码 0=背景/1=盘沿/2=视杯。
  3. 指标:区域 F-score(逐结构);角向边界距离(以盘心为原点,N=24 角度采样,单位 px);CDR 垂直直径比误差(逐专家 MAE)。
  4. 报告规范:注明数据来源(官方/镜像)、阈值、盘心来源与预处理链;跨库实验单列并声明各库预处理差异。
  5. 复算留痕:边界距离与 CDR 解析器配单元测试;任何指标实现变更视为口径变更,历史结果作废重算。

发布自查清单(投稿前逐项打勾):划分口径是否与 §5.1 一致;软图阈值是否在方法节显式出现;BLE 指标的角度采样数是否与对比文献一致;CDR 是否按垂直直径比计算;跨库数字是否与库内数字分表呈现。这五项覆盖了 §8.1 "数值不可比"的绝大多数来源。

数据集 规模 标注 获取 与本库关系
REFUGE 1,200 幅(800 有 OD/OC 真值) 像素级 + OCT + 挑战赛口径 refuge.grand-challenge.org 域适应主流源域(BEAL 用法)
RIM-ONE v1-v3 共 169+ 幅;DL 版 485 幅 多专家视盘 + DCSeg OD/OC miag-ull/rim-one-dl 西班牙多中心对照库
DRIONS-DB 110 幅 2 专家视盘轮廓 官网申请 早期 OD 基准,无视杯
ORIGA 650 幅 OD/OC + 青光眼分级 长期非公开 含分级标签的历史基准
ACRIMA 705 幅(396/309) 图像级诊断 figshare 分类专用扩充库
RIGA 多中心 6 组眼底 OD/OC 轮廓(3 标注源) UMich Deep Blue 立体/多源杯标注补充

组库建议:以本库为"考核域"构建三库工作流(REFUGE 训练 + RIM-ONE-r3 校验 + Drishti-GS 跨域测试)已成为域泛化文献的事实标准;若研究切迹或立体/多标注源,则把 RIGA 与 Drishti-GS1 的切迹标签联合使用。所有跨库组合都应重读 §5.3 的泄漏清单——库间图像可能存在同源受检者,官方未提供跨库去重索引。

§8.5 关键论文 Top 6

  1. Sivaswamy J., Krishnadas S.R., Datt Joshi G., Jain M., Ujjwal, Syed Tabish A. “Drishti-GS: Retinal image dataset for optic nerve head (ONH) segmentation.” IEEE ISBI 2014, pp.53-56. DOI 10.1109/ISBI.2014.6867807 —— 数据集奠基论文:101 幅 + 4 专家软标注 + 三套评估协议,被引 585+(Semantic Scholar,截至 2026-09)。
  2. Sivaswamy J., Krishnadas S.R., Chakravarty A., Datt Joshi G., Ujjwal, Syed Tabish A. “A Comprehensive Retinal Image Dataset for the Assessment of Glaucoma from the Optic Nerve Head Analysis.” JSM Biomedical Imaging Data Papers 2(1):1004, 2015. 官网 PDF 入口 —— 扩展版 Drishti-GS1 综合数据论文:切迹标注、图像级诊断表与注册制测试集提交机制。
  3. Fu H., Cheng J., Xu Y., Wong D.W.K., Liu J., Cao X. “Joint Optic Disc and Cup Segmentation Based on Multi-label Deep Network and Polar Transformation.” IEEE TMI 37(11):2495-2505, 2018. DOI 10.1109/TMI.2018.2791488 —— 极坐标 + 多标签范式,确立"视杯要靠表示变换"的技术路线。
  4. Gu Z. et al. “CE-Net: Context Encoder Network for 2D Medical Image Segmentation.” IEEE TMI 38(10):2281-2292, 2019. DOI 10.1109/TMI.2019.2901676 —— 预训练骨干 + 上下文模块在小样本眼底分割的标准增益。
  5. Wang S., Yu L., Li K., Yang X., Fu C.W., Heng P.A. “Boundary and Entropy-driven Adversarial Learning for Fundus Image Segmentation.” MICCAI 2019 Part I, pp.102-110. DOI 10.1007/978-3-030-32239-7_12 —— 把本库变成跨域目标域的 UDA 标准方法,代码公开。
  6. Orlando J.I. et al. “REFUGE Challenge: A unified framework for evaluating automated methods for glaucoma assessment from fundus photographs.” Biomedical Optics Express 11(9):5108-5129, 2020. DOI 10.1364/BOE.391902 —— 后继大规模挑战赛口径,与本库共同构成青光眼分割评测的双支柱。

§8.6 社区活跃度

Drishti-GS 无官方 GitHub 仓库与在线排行榜维护;官方测试集提交入口为注册制网页(JSM 2015)。社区生态以引用网络与第三方实现为主:原始论文被引 585+(Semantic Scholar,截至 2026-09;Google Scholar 口径更高),Kaggle 镜像累计下载数千次(Kaggle 数据页,截至 2026-09),BEAL 等衍生方法的公开代码持续可用。引用横跨眼科 AI、域适应与标注噪声研究三个社群,中国、印度、新加坡、西班牙团队贡献了大部分后续基准工作。

活跃度的证据链可以从三个视角核验。基准视角:2018-2024 年间主要 OD/OC 分割论文几乎无一例外包含 Drishti-GS 列(§8.1/§8.4 各对比表),这种"每文必测"的惯性是数据集生命力的直接指标。镜像视角:Kaggle 镜像的 usability 评分 5.63 与数千次下载表明它仍是课程与入门项目的默认素材。代码视角:BEAL 官方实现、多个 M-Net 复现仓库与通用医学分割工具包对本库的适配持续可用。需要提醒的是,官方渠道本身十年未更新版本内容,生态的"活"全在社区一侧——这既解释了为何镜像形态五花八门,也说明引用时回溯官方定义的重要性。

§8.7 生态快照

资源 类型 链接 状态(截至 2026-09) 推荐理由
Drishti-GS 官方主页 数据集+注册 cvit.iiit.ac.in 在线 唯一官方分发与致谢要求出处
CVIT MIP 数据集总页 机构资源 cvit.iiit.ac.in/mip/datasets.html 在线 申请流程与致谢文本的权威来源
ISBI 2014 论文 PDF 论文 cvit.iiit.ac.in 镜像 PDF 在线 评估协议与真值格式的第一定义
Kaggle 镜像 社区镜像 Kaggle 在线(1.16 GB) 免注册快速获取(仅开发用)
BEAL 代码仓库 方法代码 EmmaW8/BEAL 公开 跨域评估的标准对照实现
openmedlab 数据集条目 社区文档 Awesome-Medical-Dataset/DRISHTI-GS 公开 中文社区的结构与统计速查

生态快照的使用提示:本表所列资源覆盖"获取(官方/镜像)—方法(BEAL)—速查(openmedlab)"三种角色;Star/下载数为检索时点快照,会随时间变化,入库使用前建议重新核数。


§9 相关资源与引用

§9.1 官方与权威资源

学习路径建议:入门者按"官方主页 → ISBI 论文 §C/§D(真值格式与评估)→ 本页 §6.1 快速上手 → §6.5 坑点"的顺序,可在半天内完成从注册到跑通第一个 DataLoader 的全流程;方法学研究者建议补读 JSM 2015 综合论文(切迹与图像级标签的完整定义)与 BEAL 论文(跨域协议),再动手设计实验。

§9.2 BibTeX 完整引用

以下三条 BibTeX 覆盖官方指定的双论文引用要求与流行病学引文;第三条用于疾病负担背景引用,非数据集使用所必需。字段以官方页面与 IEEE Xplore 条目为准核对过一遍。

@inproceedings{sivaswamy2014drishti,
  author    = {Sivaswamy, Jayanthi and Krishnadas, S. R. and Datt Joshi, Gopal
               and Jain, Madhulika and Ujjwal, A. and Syed Tabish, A.},
  title     = {Drishti-GS: Retinal image dataset for optic nerve head (ONH) segmentation},
  booktitle = {2014 IEEE 11th International Symposium on Biomedical Imaging (ISBI)},
  year      = {2014},
  pages     = {53--56},
  doi       = {10.1109/ISBI.2014.6867807}
}

@article{sivaswamy2015comprehensive,
  author  = {Sivaswamy, Jayanthi and Krishnadas, S. R. and Chakravarty, Arunava
             and Datt Joshi, Gopal and Ujjwal, A. and Syed Tabish, Abbas},
  title   = {A Comprehensive Retinal Image Dataset for the Assessment of Glaucoma
             from the Optic Nerve Head Analysis},
  journal = {JSM Biomedical Imaging Data Papers},
  volume  = {2},
  number  = {1},
  pages   = {1004},
  year    = {2015}
}

@article{tham2014global,
  author  = {Tham, Yih-Chung and Li, Xiang and Wong, Tien Y. and Quigley, Harry A.
             and Aung, Tin and Cheng, Ching-Yu},
  title   = {Global Prevalence of Glaucoma and Projections of Glaucoma Burden
             through 2040: A Systematic Review and Meta-Analysis},
  journal = {Ophthalmology},
  volume  = {121},
  number  = {11},
  pages   = {2081--2090},
  year    = {2014},
  doi     = {10.1016/j.ophtha.2014.05.013}
}

§9.3 引用指南

使用本数据集发表成果时,官方要求同时引用两篇论文(官方主页):ISBI 2014 奠基论文(上述 BibTeX 第一条)与 JSM 2015 综合数据论文(第二条);并在论文致谢中加入官方指定文本:“This research used data provided by the Medical Image Processing (MIP) group, IIIT Hyderabad”(CVIT MIP 数据集页)。若使用了扩展版内容(切迹、图像级诊断表),务必以 JSM 2015 为主要引用。

两个常见引用错误值得提醒:其一,只引 ISBI 2014 却使用切迹/图像级诊断标签——这些内容在 2014 版中不存在,审稿人核对时会直接质疑数据来源;其二,引用 Kaggle 镜像的 CC0 标注作为许可依据——该 CC0 是镜像上传者的自标许可,上游许可仍以 IIIT-H 官方条款(免费、非商业、致谢)为准,两者冲突时以上游为准。正确做法是正文引用两篇官方论文,数据获取渠道单独在"数据可用性声明"中说明。


§10 AI 使用声明卡

§10.1 AI 模型列表

模型 版本 用途
大语言模型(CodeBuddy Code 内置) fast-model 资料检索整合、初稿撰写、表格与代码组织

模型用途边界:检索与整理阶段使用网络搜索获取公开资料;撰写阶段依据 FACTS 事实清单与上表来源成文;未使用任何专有数据或内部资料。模型输出全部经人工审核(§10.4)后定稿。

§10.2 AI 参与范围

AI 参与了本页面的资料检索汇总、初稿撰写与格式规范化。全部事实性内容(规模、标注协议、许可、基准数字)均来自 §10.3 所列公开来源,并在文中内联标注;代码片段基于公开文献与数据格式文档整理,未在原始数据上实际运行验证;医学与数据工程判断由人工审核者复核(§10.4)。

具体而言,AI 承担的工作包括:多轮网络检索与来源交叉核对、事实清单(FACTS)整理、章节结构组织、表格与代码撰写、以及全文格式规范(中英混排空格、千分位、锚点与引文格式)的统一。AI 不承担的工作包括:医学编码的临床核准、原始数据的实机加载验证、以及对官方未披露信息的推断——所有此类判断均由人工审核者负责并在 §10.4 留痕。检索过程中发现的相互矛盾的二手数字(如逐子集类别分布),已按"多数来源一致优先、单一来源显式标注、无来源即省略"的规则处理。

§10.3 输入来源列表

以下 22 条来源构成本页全部事实性内容的输入集合:1-9 为官方与一手来源(论文、官方页、API 查询、镜像页与社区结构文档),10-17 为同行评审的基准与综述文献,18-22 为近年二次文献与社区工程记录(其中预印本已显式标注状态)。

  1. Sivaswamy J. et al. “Drishti-GS: Retinal image dataset for optic nerve head (ONH) segmentation.” IEEE ISBI 2014, pp.53-56. DOI 10.1109/ISBI.2014.6867807.

建议的阅读顺序:先用 1 号论文建立"真值三件套 + 三套评估"的框架认知,再用 2 号论文补齐扩展标签,随后按研究方向分流——做分割读 3-5,做跨域读 5,做挑战赛口径读 6;7 号流行病学文献用于论文引言的疾病负担段落。
2. Sivaswamy J. et al. “A Comprehensive Retinal Image Dataset for the Assessment of Glaucoma from the Optic Nerve Head Analysis.” JSM Biomedical Imaging Data Papers 2(1):1004, 2015.
3. DRISHTI-GS 官方主页(规模、划分、许可与引用要求):http://cvit.iiit.ac.in/projects/mip/drishti-gs/mip-dataset2/Home.php
4. CVIT MIP Shared Datasets 页(人群、标注者经验、致谢文本):https://cvit.iiit.ac.in/mip/datasets.html
5. ISBI 2014 论文 PDF(真值格式、评估协议、参照性能表):http://cvit.iiit.ac.in/images/ConferencePapers/2014/MadhulikaUjjwal2013Drishti.pdf
6. IEEE Xplore 论文条目(作者、摘要、DOI):https://ieeexplore.ieee.org/document/6867807
7. Semantic Scholar API(引用计数 585,2026-09 查询):https://api.semanticscholar.org/graph/v1/paper/DOI:10.1109/ISBI.2014.6867807
8. Kaggle 社区镜像页(1.16 GB、708 文件、许可标注):https://www.kaggle.com/datasets/lokeshsaipureddi/drishtigs-retina-dataset-for-onh-segmentation
9. openmedlab Awesome-Medical-Dataset DRISHTI-GS 条目(分辨率统计、掩膜像素统计):https://github.com/openmedlab/Awesome-Medical-Dataset/blob/abd5455d718648fe4cc7083e269b8b0b3727894a/resources/DRISHTI-GS.md
10. Wang S. et al. “Boundary and Entropy-driven Adversarial Learning for Fundus Image Segmentation.” MICCAI 2019. DOI 10.1007/978-3-030-32239-7_12(含港大机构库条目 https://hdl.handle.net/10722/299610 与代码库 github.com/EmmaW8/BEAL)
11. RSAP-Net. BMC Bioinformatics, 2022. DOI 10.1186/s12859-022-05058-2(含 DRISHTI-GS 对比表)
12. “Lightweight Optic Disc and Optic Cup Segmentation Based on MobileNetv3.” 2024. PMC11506706(pOSAL/BEAL/LC-MANet 等对比表)
13. “Joint optic disc and cup segmentation based on densely connected depthwise separable convolution deep network.” BMC Medical Imaging, 2020. DOI 10.1186/s12880-020-00528-6(M-Net/Stack-U-Net/GL-Net 对比表)
14. Gu Z. et al. “CE-Net.” IEEE TMI 2019. DOI 10.1109/TMI.2019.2901676;Fu H. et al. “M-Net.” IEEE TMI 2018. DOI 10.1109/TMI.2018.2791488;Ronneberger O. et al. “U-Net.” MICCAI 2015. DOI 10.1007/978-3-319-24574-4_28
15. Orlando J.I. et al. “REFUGE Challenge…” Biomedical Optics Express 11(9):5108, 2020. DOI 10.1364/BOE.391902
16. Tham Y.C. et al. “Global Prevalence of Glaucoma…” Ophthalmology 2014;121:2081-90. DOI 10.1016/j.ophtha.2014.05.013
17. Chákṣu 数据库论文之数据集综述段(同类库对照事实):https://www.medrxiv.org/lookup/external-ref?access_num=10.1038/s41597-023-01943-4&link_type=DOI
18. MDPI Engineering Proceedings(70 青光眼/31 正常、镜像下载链接):https://www.mdpi.com/2673-4591/124/1/110/html
19. Nature Scientific Reports 对比表(DRISHTI-GS 70/31 分类口径):https://preview-www.nature.com/articles/s41598-026-39065-7/tables/4
20. Springer Discover Applied Sciences(训练/测试逐类 32:18 与 38:13 口径):https://link-hkg.springer.com/article/10.1007/s42452-025-06567-4
21. ConstantinSeibold/2DAnatomyDatasets issue #10(镜像重组织、注册门槛、阈值化实践):https://github.com/ConstantinSeibold/2DAnatomyDatasets/issues/10
22. Research Square 预印本(外部验证跌落观察;跨库对比表):https://dx.doi.org/10.21203/rs.3.rs-3364615/v1 与 https://www.researchsquare.com/article/rs-4107145/v1.pdf

§10.4 人工校验表

内容模块 审核者 审核方式 审核状态
§1 概览与 §3 规格(数字与来源) 千方病案医学编辑部(数据工程) 逐条对照 FACTS 清单与来源 URL ✅ 已通过
§2 医学背景(ICD-11/SNOMED/流行病学) 千方病案医学编辑部(眼科医师) 编码经 ICD-11 浏览器口径核对;流行病学数字核对原论文 ✅ 已通过
§4 数据结构与 DAIMS 字段字典 千方病案医学编辑部(数据工程) 对照官方论文真值格式定义逐项核验 ✅ 已通过
§6 AI 就绪指南(代码与坑点) 千方病案医学编辑部(数据工程) 代码逻辑走查;坑点逐条溯源至论文/官方页/社区 issue ✅ 已通过
§7 质量评估(偏倚/公平/DAIMS) 千方病案医学编辑部(交叉) DAIMS 24 项逐项复核;偏倚声明与官方披露一致性检查 ✅ 已通过
§8 基准与生态(引文完整性) 千方病案医学编辑部(数据工程) 排行榜与关键论文 DOI 逐一可解析 ✅ 已通过

审核方法说明:人工审核不重写 AI 文本,而是对"事实层"逐条回溯来源(数字、日期、编码、引文),对"判断层"(评分、建议、解读)做专业合理性把关;两层的审核痕迹分别体现在 §10.3 来源列表与本表的模块分工上。

§10.5 AI 生成章节标注

本页面全部章节由 AI 完成初稿(检索汇总与成文),人工审核以事实核对与医学/工程判断校验为主,未进行逐句重写。标注性质说明:数字与引文均可通过 §10.3 来源回溯;代码为整理性质,未经原始数据实机运行。

§10.6 最后人工审核日期

2026-09-05(与 §0 审核声明一致)。该日期之后如发生数据集官方页面重大变更(许可、划分、版本),本页应触发复审流程并更新此日期。

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


相关数据集导航

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

  • rim-one — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 皮肤影像 / 青光眼 / 骨骼肌肉影像
  • chase-db1 — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 皮肤影像 / 骨骼肌肉影像
  • hrf — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 皮肤影像 / 骨骼肌肉影像
  • refuge — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 青光眼
  • gamma — 共享标签:医学影像 / 眼科影像 / 青光眼
  • fives — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 青光眼
  • drions-db — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 青光眼
  • idrid — 共享标签:医学影像 / 眼科影像 / 医学图像分割
  • fgadr — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 皮肤影像
  • retouch — 共享标签:医学影像 / 眼科影像 / 医学图像分割 / 皮肤影像

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

返回 AI-Ready 数据集