Skip to content

十亿像素与全切片图像标注工具对比

对比八款用于全切片病理扫描图和大型航拍或 IIIF 图像的工具,比较切片格式、许可证,以及是否支持每张切片分配多名标注者。

QuPath 和 ASAP 是免费的桌面程序,供一个人勾画和分析全切片病理扫描图;Cytomine 和 Digital Slide Archive 是免费的网页平台,把一个实验室的切片集中存放在一台服务器上;V7 是托管平台,价格需询价。Potato 是免费、可自托管的替代方案,适合多名标注者勾画同一批切片或大型拼接图的研究。Potato 在浏览器中逐个瓦片打开切片,能导入和导出 QuPath GeoJSON 与 ASAP XML,并就框和多边形报告经过机遇校正的标注者间一致性。

十亿像素图像约有十亿个像素,浏览器无法把这样大的图像作为一张图片打开。查看器转而使用图像金字塔。图像金字塔以逐级减半的分辨率保存图像的多个副本,并把每个副本切成小瓦片。查看器只获取当前放大倍数下屏幕上可见的瓦片。全切片图像是以这种金字塔形式保存的显微镜切片扫描图,采用厂商格式,例如 Aperio .svs、Hamamatsu .ndpi 和 3DHISTECH .mrxs(见数字病理)。国际图像互操作框架(IIIF)定义了一组 Web API,图书馆和档案馆通过这些 API 提供此类图像,并描述图像序列。

下面的对比涵盖用于标注大到无法作为单个文件打开的图像的工具,从病理切片到航拍拼接图和 IIIF 馆藏。基于深度缩放的十亿像素图像标注介绍 Potato 的查看器及其全部选项。医学图像与临床文本标注工具对比涵盖 CT 和 MR 体数据以及临床记录,图像标注工具对比涵盖普通照片和点云。

值得比较的十亿像素图像标注工具

许可证、价格和大图像支持情况均于 2026 年 11 月 2 日取自各项目自己的页面。

工具运行方式许可证价格大图像适合
QuPath适用于 Windows、macOS 和 Linux 的桌面应用GPL-3.0免费通过 OpenSlide 和 Bio-Formats 读取全切片图像一名病理医生或科研人员标注切片,内置细胞和组织检测
ASAP适用于 64 位 Windows 和 Linux 的桌面应用GPL-2.0免费通过 OpenSlide 读取多家厂商的多分辨率切片查看切片并绘制点、矩形、多边形和样条曲线,保存为 XML
Cytomine运行在你自己服务器上的网页平台,用 Docker Compose 安装Apache-2.0免费大型生物医学图像团队共享切片和标注,并运行分析应用
Digital Slide Archive运行在你自己服务器上的网页平台,用 Docker Compose 安装Apache-2.0免费瓦片化格式,包括 TIFF、SVS 和 JP2带基于角色的访问控制的切片库,在 HistomicsUI 中标注和审阅,用 HistomicsTK 分析
napariPython 桌面查看器BSD-3-Clause免费多尺度数组,二维显示时按视口选择分辨率在 Python 分析流程中标注 NumPy 或 Zarr 数组
V7托管网页平台专有询价单边超过 10,000 像素的文件使用金字塔瓦片,上限为单边 65,535 像素、面积 268,435,456 像素,列出的格式包括 .svs 和 .ndpi由厂商提供支持的托管标注
Recogito Studio网页平台,可用 Docker 自托管,也可由项目方托管AGPL-3.0自托管免费;托管方案需询价IIIF 图像多人以 W3C Web Annotation 形式共同标注 IIIF 图像、TEI 文本和 PDF
Potato运行在你自己服务器上的 Python 网页服务器GPL-3.0-or-later免费以 DZI 和 IIIF Image API 3.0 提供的瓦片金字塔,以及 openslide 可读格式的切片每张切片或拼接图分配多名标注者,并计算标注者间一致性

QuPath 的网站声明,QuPath 不用于临床、诊断或治疗目的。Potato 是研究软件,没有获得任何临床或监管许可。

不同任务适合哪个工具

下表把每类大图像项目与为这类项目打造的工具对应起来。

任务合适的工具
一名病理医生标注切片,并检测或分类细胞QuPath
打开切片并绘制区域,保存为人类可读的 XMLASAP
用一台实验室服务器存放切片,并在切片区域上运行分析Cytomine 和 Digital Slide Archive
在 Python 脚本中标注多尺度数组napari
由厂商提供支持的托管切片标注V7
在人文项目中与同事一起标注 IIIF 图像Recogito Studio
多名标注者勾画同一批切片,并报告一致性Potato
由多名标注者修正 QuPath 或 ASAP 区域先用 QuPath 或 ASAP 完成第一轮,再用 Potato

切片格式与瓦片金字塔

QuPath 通过 OpenSlide 和 Bio-Formats 库读取全切片图像。QuPath 的格式页面把 NDPI 列为支持良好,对 MRXS 则只给出有限支持。Digital Slide Archive 通过 Python 接口接入新格式,V7 让标注者把瓦片化文件当作一张图像来处理。

Potato 的 image_annotation 方案接受 viewer: deepzoom。深度缩放查看器通过 OpenSeadragon 绘制图像,并把标注画布叠加在图像上。Potato 通过 openslide 读取 .svs、.ndpi、.mrxs、.scn、.vms、.vmu、.bif 和 .svslide 格式的全切片文件,每次从切片自带的金字塔中读取一个瓦片。切片支持需要 wsi 可选依赖。这个可选依赖会安装 openslide-python、openslide-bin 和 tifffile:

bash
pip install "potato-annotation[wsi]"

大型航拍 TIFF 之类的平面图像没有自带的金字塔。对于平面图像,Potato 在某一层级的瓦片第一次被请求时构建该层级。对每个层级,Potato 只解码一次源图像。除非调高 tiles.max_pixels,否则 Potato 拒绝构建超过 6.4 亿像素的层级。带有多个层级的瓦片化 TIFF 不需要这种解码。安装 wsi 可选依赖后,openslide 会从 TIFF 自带的层级读取瓦片化 TIFF。Potato 把每个金字塔同时以 DZI 和 IIIF Image API 3.0 的形式在 /media/iiif/<path>/info.json 提供。Mirador 和其他 IIIF 客户端可以通过这个路由打开同样的图像。

同一张切片上的多名标注者

在报告肿瘤面积的研究中,每张切片会交给不止一名标注者,因为不同病理医生画出的同一肿瘤边界并不相同。QuPath 和 ASAP 运行在个人电脑上,我们在这两个程序的页面中都没有找到把一张切片分配给多名标注者的方法。Cytomine 在团队成员之间共享项目的工作,Digital Slide Archive 按用户或角色控制访问,并包含标注审阅功能。

Potato 按 num_annotators_per_item 设定的人数把每张切片分配给标注者,并把每位标注者的区域保存在该标注者名下。Potato 为每个 image_annotation 方案报告几何形状上的一致性,无论是否使用深度缩放查看器。报告分别给出检测、分类和定位的结果。对于定位,Potato 比较同一张切片上的标注者,并以不同切片上的标注对作为机遇基线。我们没有发现其他标注平台报告空间标签上经过机遇校正的一致性。如何测量边界框上的标注者间一致性解释了这一方法。

在 Potato 中开展两名病理医生的切片研究

下面的配置把每张切片发给两名标注者。每位标注者用多边形勾画肿瘤区域,并用框标出有丝分裂簇。一致性报告涵盖这两种形状,完整配置能通过 Potato 的验证器:

yaml
annotation_task_name: Tumor regions on whole-slide images
task_dir: .
output_annotation_dir: annotation_output/
media_directory: media
data_files:
  - data/slides.json
item_properties:
  id_key: id
  text_key: note
user_config:
  allow_all_users: true
  users: []
 
# Two pathologists outline every slide, and each pathologist's regions are kept apart
num_annotators_per_item: 2
agreement_metrics:
  enabled: true
 
annotation_schemes:
  - annotation_type: image_annotation
    name: regions
    description: "Outline each tumor region and box each cluster of mitoses."
    source_field: image
    viewer: deepzoom
    tools: [polygon, bbox, landmark]
    labels:
      - {name: tumor, color: "#c0397b"}
      - {name: mitosis cluster, color: "#5b2c86"}
      - {name: artifact, color: "#7f8c8d"}

data/slides.json 中的每个条目指向 media/ 下的一张切片,例如 {"id": "slide_01", "image": "case_01.svs", "note": "Case 01"}。两名标注者完成同一批切片后,一致性报告会出现在 /admin/iaa。Potato 以相对于全分辨率切片的比例存储坐标。位于 /media/tiles/<slide>.dzi?format=json 的瓦片描述符给出切片的每像素微米数,可用于把区域换算为微米。

在 Potato 中使用 QuPath GeoJSON 和 ASAP XML

从 Potato 2.13 起,potato import 读取 QuPath GeoJSON 和 ASAP XML,并把每个区域文件与同名切片配对。下面第一条命令建立一个项目,其中的区域作为预标注交给每位标注者修正;第二条命令把每位标注者的区域以 0 级切片像素写回 QuPath GeoJSON:

bash
potato import -i case_01.geojson --image-dir /data/slides -o case-project
python -m potato.export -c case-project/config.yaml -f qupath_geojson -o out/qupath

导出为每位标注者的每张切片写出一个文件,-f asap_xml 则改为写出 ASAP XML。标签会成为 QuPath 分类和 ASAP 分组。导入时每张切片最多读取 50,000 个区域。从 QuPath 中只导出标注,不要把细胞检测结果放进文件。显微图像页面介绍了相关选项。

航拍拼接图与 IIIF 馆藏

大型航拍和无人机拼接图与切片在同一个深度缩放查看器中打开。超过 6.4 亿像素的拼接图应保存为瓦片化的金字塔 TIFF,或把 tiles.max_pixels 调高到服务器内存允许的值。深度缩放查看器把区域存储为相对于图像的比例,而不是地图坐标。当标注必须落入 GIS 时,标注者使用 geo_annotation 方案,在你托管的 GeoTIFF 或 XYZ 瓦片之上的 OpenLayers 地图上绘制,Potato 把每个答案保存为 EPSG:4326 下的 GeoJSON。

对于 IIIF 馆藏,potato import -f iiif 读取 IIIF Presentation 清单(manifest),为每个画布(canvas)生成一个条目。导入器把每个画布作为一张图片载入,图片来自图像自身的 URL,或者来自向画布的 Image 服务发出的请求,默认请求尺寸以能放进 2,000 像素见方为准。对于导入的清单,标注者看到的是一张图像,而不是瓦片。iiif_annotations 导出把区域写成 W3C 标注页,与清单的一份副本放在一起,Mirador 和 Universal Viewer 打开这份副本时会显示这些区域。Annotorious 是采用 BSD 许可的 JavaScript 库,为 OpenSeadragon 和 IIIF 查看器加入标注功能。Annotorious 适合自行构建查看器的团队。数字人文页面汇集了 Potato 的 IIIF 功能。

Potato 在十亿像素图像上不做的事

  • 不做细胞或组织检测。 Potato 不在切片上运行任何检测或分割模型。Potato 2.14.0 即将推出的检测和分割训练器读取普通图像文件,不使用全切片图像或深度缩放图像训练。QuPath 能检测细胞和组织并训练像素分类器,HistomicsTK 提供细胞核分割和颜色反卷积。
  • QuPath 和 ASAP 导出不包含掩码。 深度缩放图像上的画笔掩码以源图像的全分辨率存储,没有纹理尺寸上限,因为掩码缓冲区索引的是图像像素而不是 GPU 纹理。QuPath 和 ASAP 导出只写出形状。如果切片区域要回到 QuPath 或 ASAP,请用多边形绘制。
  • 深度缩放中没有区域感知填充。 深度缩放页面没有单一的源图像可供读取颜色。填充工具会退而填充掩码中的空白区域。
  • 存储中没有微米坐标。 区域以相对于切片的比例存储,导出写出的是 0 级像素。
  • 不提供托管的标注人员。 请自带标注者,或在 Prolific 上招募。

我们于 2026 年 11 月 2 日对照各项目自己的文档和价格页核实了表中的每一格。如果某一格有误,请告诉我们。

常见问题

病理切片应该用哪个十亿像素图像标注工具?

一名病理医生在桌面电脑上标注和分析切片,用 QuPath;实验室要把切片放在共享服务器上,用 Cytomine 或 Digital Slide Archive。多名标注者勾画同一批切片、且研究需要报告标注者间一致性时,用 Potato。Potato 读取 SVS、NDPI、MRXS 以及 openslide 可读的其他格式,并与 QuPath 和 ASAP 交换区域。

哪个十亿像素图像标注工具适用于航拍和卫星拼接图?

Potato 的深度缩放查看器把航拍和卫星拼接图作为瓦片金字塔打开。对于保存为瓦片化金字塔 TIFF 的拼接图,Potato 无需解码整幅图像即可读取。V7 会把单边超过 10,000 像素的任何文件切成瓦片,标称上限为单边 65,535 像素。当标注需要地图坐标时,标注者使用 Potato 的 geo_annotation 方案在 GeoTIFF 或托管的 XYZ 瓦片上绘制,Potato 保存为 EPSG:4326 下的 GeoJSON。

有没有用于全切片图像的 AI 十亿像素图像标注工具?

QuPath 内置细胞和组织检测,并提供用于像素和对象分类的交互式机器学习;Cytomine 能运行细胞计数和肿瘤勾画等分析应用。Potato 不在切片上运行检测模型,而是把 QuPath GeoJSON 或 ASAP XML 文件中的区域导入为预标注,由每位标注者修正。

延伸阅读