Сравнение инструментов разметки гигапиксельных изображений и цельных слайдов
Восемь инструментов для сканов цельных слайдов в патологии и больших аэрофотоснимков или изображений IIIF, сравнение по форматам слайдов, лицензиям и поддержке нескольких разметчиков на слайд.
QuPath и ASAP — бесплатные настольные программы, в которых один человек обводит и анализирует сканы цельных патологических слайдов. Cytomine и Digital Slide Archive — бесплатные веб-платформы, которые хранят слайды лаборатории на одном сервере, а V7 — облачная платформа с ценой по запросу. Potato — бесплатная альтернатива для размещения у себя, рассчитанная на исследования, в которых несколько разметчиков обводят одни и те же слайды или большие мозаики. Potato открывает слайды в браузере по тайлам, импортирует и экспортирует QuPath GeoJSON и ASAP XML и сообщает согласованность разметчиков по рамкам и полигонам с поправкой на случайность.
Гигапиксельное изображение содержит около миллиарда пикселей, и браузер не может открыть изображение такого размера как одну картинку. Поэтому просмотрщики используют пирамиду изображений. Пирамида изображений хранит копии изображения, разрешение которых каждый раз уменьшается вдвое, и нарезает каждую копию на маленькие тайлы. Просмотрщик загружает только тайлы, видимые на экране при текущем увеличении. Изображение цельного слайда (whole-slide image) — это отсканированный микроскопический препарат, сохранённый в виде такой пирамиды в форматах производителей, например Aperio .svs, Hamamatsu .ndpi и 3DHISTECH .mrxs (см. цифровую патологию). International Image Interoperability Framework (IIIF) определяет веб-API, через которые библиотеки и архивы отдают такие изображения и описывают последовательности изображений.
Ниже сравниваются инструменты для разметки изображений, слишком больших, чтобы открыть их одним файлом, от патологических слайдов до аэрофотомозаик и коллекций IIIF. Просмотрщик Potato и все его параметры описаны на странице Разметка гигапиксельных изображений с Deep Zoom. Объёмы КТ и МРТ и клинические записи разбирает руководство Сравнение инструментов разметки медицинских изображений и клинических текстов, а обычные фотографии и облака точек разбирает Сравнение инструментов разметки изображений.
Какие инструменты разметки гигапиксельных изображений стоит сравнивать
Лицензии, цены и поддержка больших изображений взяты со страниц самих проектов по состоянию на 2 ноября 2026 года.
| Инструмент | Как работает | Лицензия | Цена | Большие изображения | Подходит для |
|---|---|---|---|---|---|
| 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 |
| napari | Настольный просмотрщик на Python | BSD-3-Clause | Бесплатно | Многомасштабные массивы, в 2D разрешение выбирается по области просмотра | Разметки внутри анализа на Python, на массивах NumPy или Zarr |
| V7 | Облачная веб-платформа | Проприетарная | По запросу | Пирамидальные тайлы для файлов больше 10 000 пикселей по стороне, до 65 535 пикселей по стороне и 268 435 456 пикселей по площади, в списке форматов есть .svs и .ndpi | Управляемой разметки с поддержкой поставщика |
| Recogito Studio | Веб-платформа, у себя через Docker или на хостинге проекта | AGPL-3.0 | Бесплатно у себя, облачные тарифы по запросу | Изображения IIIF | Нескольких человек, которые вместе размечают изображения IIIF, тексты TEI и PDF как W3C Web Annotations |
| Potato | Веб-сервер на Python на вашем сервере | GPL-3.0-or-later | Бесплатно | Пирамиды тайлов, которые отдаются как DZI и IIIF Image API 3.0, и слайды в форматах, которые читает openslide | Нескольких разметчиков на слайд или мозаику с согласованностью разметчиков |
На сайте QuPath сказано, что QuPath не предназначен для клинических, диагностических или терапевтических целей. Potato — исследовательское ПО без клинического или регуляторного одобрения.
Какой инструмент для какой задачи
В таблице каждому виду проектов с большими изображениями сопоставлены инструменты, созданные для таких проектов.
| Задача | Подходят |
|---|---|
| Один патолог размечает слайды и находит или классифицирует клетки | QuPath |
| Открыть слайд и нарисовать области, которые сохраняются в читаемом человеком XML | ASAP |
| Лабораторный сервер, который хранит слайды и запускает анализ областей слайда | 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 позволяет разметчикам работать с тайловым файлом как с одним изображением.
Схема image_annotation в Potato принимает viewer: deepzoom. Просмотрщик deep zoom рисует изображение через OpenSeadragon и накладывает поверх изображения холст разметки. Potato читает файлы цельных слайдов в форматах .svs, .ndpi, .mrxs, .scn, .vms, .vmu, .bif и .svslide через openslide, по одному тайлу за раз из собственной пирамиды слайда. Для поддержки слайдов нужен дополнительный набор зависимостей wsi. Этот набор устанавливает openslide-python, openslide-bin и tifffile:
pip install "potato-annotation[wsi]"У плоского изображения, например большого аэрофотоснимка в TIFF, собственной пирамиды нет. Potato строит каждый уровень плоского изображения при первом запросе тайла этого уровня. Для каждого уровня Potato декодирует исходный файл один раз. Уровень больше 640 мегапикселей Potato строить отказывается, если не увеличить tiles.max_pixels. Тайловому 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, с просмотрщиком deep zoom или без него. Отчёт даёт детекцию, классификацию и локализацию по отдельности. Для локализации Potato сравнивает разметчиков на одном и том же слайде с базовым уровнем случайного совпадения, взятым из пар разметок на разных слайдах. Мы не нашли ни одной другой платформы разметки, которая сообщала бы согласованность по пространственным меткам с поправкой на случайность. Метод объясняет руководство Как измерить согласованность разметчиков по ограничивающим рамкам.
Исследование слайдов с двумя патологами в Potato
Конфигурация ниже отправляет каждый слайд двум разметчикам. Каждый разметчик обводит области опухоли полигонами и выделяет рамками скопления митозов. Отчёт о согласованности охватывает обе фигуры, а полная конфигурация проходит валидатор Potato:
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 сообщает число микрометров на пиксель слайда, чтобы область можно было перевести в микрометры.
QuPath GeoJSON и ASAP XML в Potato
Начиная с Potato 2.13, potato import читает QuPath GeoJSON и ASAP XML и сопоставляет каждый файл областей со слайдом с тем же именем. Первая команда ниже создаёт проект, в котором области появляются как предразметка, которую исправляет каждый разметчик, а вторая записывает области каждого разметчика обратно в QuPath GeoJSON в пикселях нулевого уровня слайда:
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
Большие мозаики аэрофотосъёмки и съёмки с дронов открываются в том же просмотрщике deep zoom, что и слайды. Сохраните мозаику больше 640 мегапикселей как тайловый пирамидальный TIFF или увеличьте tiles.max_pixels до значения, которое позволяет память сервера. Просмотрщик deep zoom хранит области как доли изображения, а не как картографические координаты. Когда разметка должна попасть в ГИС, разметчики рисуют схемой geo_annotation на карте OpenLayers поверх GeoTIFF или тайлов XYZ, которые вы размещаете сами, и Potato сохраняет каждый ответ как GeoJSON в EPSG:4326.
Для коллекций IIIF команда potato import -f iiif читает манифест IIIF Presentation и создаёт по одному объекту на каждый холст (canvas). Импортёр загружает каждый холст как одну картинку, по собственному URL изображения или запросом к сервису Image этого холста, по умолчанию с размером, вписанным в квадрат со стороной 2000 пикселей. Разметчик импортированного манифеста видит одно изображение, а не тайлы. Экспорт iiif_annotations записывает области как страницы аннотаций W3C рядом с копией манифеста, и Mirador и Universal Viewer открывают эту копию с показанными областями. Annotorious — библиотека на JavaScript под лицензией BSD, которая добавляет разметку в просмотрщики OpenSeadragon и IIIF. Annotorious подходит команде, которая строит собственный просмотрщик. Возможности Potato для IIIF собраны на странице Цифровые гуманитарные науки.
Чего Potato не делает для гигапиксельных изображений
- Нет детекции клеток и тканей. Potato не запускает на слайдах модели детекции или сегментации. Средства обучения моделей детекции и сегментации, которые появятся в Potato 2.14.0, читают обычные файлы изображений и не обучают модели на изображениях цельных слайдов или изображениях deep zoom. QuPath находит клетки и ткани и обучает пиксельные классификаторы, а HistomicsTK покрывает сегментацию ядер и цветовую деконволюцию.
- Нет масок в экспорте для QuPath и ASAP. Маски, нарисованные кистью на изображении deep zoom, хранятся в полном разрешении исходника без ограничения на размер текстуры, потому что буфер маски индексирует пиксели изображения, а не текстуру GPU. Экспорт для QuPath и ASAP записывает только фигуры. Рисуйте области слайда полигонами, если эти области вернутся в QuPath или ASAP.
- Нет заливки с учётом областей в deep zoom. У страницы deep zoom нет единого исходного изображения, из которого можно читать цвета. Инструмент заливки в этом случае просто заливает пустую область маски.
- Нет координат в микрометрах при хранении. Области хранятся как доли слайда, а экспорт записывает пиксели нулевого уровня.
- Нет управляемой рабочей силы. Приводите своих разметчиков или набирайте разметчиков на Prolific.
Мы сверили каждую ячейку с документацией и страницами цен каждого проекта 2 ноября 2026 года. Если в какой-то ячейке ошибка, сообщите нам.
Частые вопросы
Какой инструмент разметки гигапиксельных изображений выбрать для патологических слайдов?
Используйте QuPath, если один патолог размечает и анализирует слайды на настольном компьютере, и Cytomine или Digital Slide Archive, если лаборатория хранит слайды на общем сервере. Используйте Potato, когда несколько разметчиков обводят одни и те же слайды и исследование сообщает согласованность между разметчиками. Potato читает SVS, NDPI, MRXS и другие форматы, которые читает openslide, и обменивается областями с QuPath и ASAP.
Какой инструмент разметки гигапиксельных изображений подходит для аэрофото- и спутниковых мозаик?
Просмотрщик deep zoom в Potato открывает аэрофото- и спутниковые мозаики как пирамиды тайлов. Мозаику, сохранённую как тайловый пирамидальный TIFF, Potato читает, не декодируя изображение целиком. V7 разбивает на тайлы любой файл больше 10 000 пикселей по стороне, в пределах заявленного максимума 65 535 пикселей по стороне. Когда разметке нужны картографические координаты, разметчики рисуют схемой geo_annotation в Potato поверх GeoTIFF или размещённых тайлов XYZ, и Potato сохраняет GeoJSON в EPSG:4326.
Есть ли ИИ-инструмент разметки гигапиксельных изображений цельных слайдов?
В QuPath есть встроенная детекция клеток и тканей и интерактивное машинное обучение для классификации пикселей и объектов, а Cytomine запускает приложения для анализа, например подсчёт клеток и выделение границ опухоли. Potato не запускает на слайдах модели детекции. Вместо этого Potato импортирует области из файлов QuPath GeoJSON или ASAP XML как предразметку, которую исправляет каждый разметчик.
Что почитать дальше
- Разметка гигапиксельных изображений с Deep Zoom, все параметры просмотрщика
- Микроскопия, флуоресцентные изображения и команды импорта и экспорта слайдов
- Микроскопия и патология, возможности Potato для микроскопии в одном месте
- Разметка в здравоохранении и клинической практике
- Сравнение инструментов разметки медицинских изображений и клинических текстов
- Сравнение инструментов разметки изображений
- Согласованность по геометрии
- Сравнение инструментов разметки, все типы данных на одной странице