← документы задачи · диаграмма Ганта · ТЗ в PDF
Mind map ТЗ задачи 04
Все разделы технического задания ДепЗдрава деревом: у каждого пункта — страница ТЗ и что из этого уже работает на стенде. Нажмите на пункт, чтобы прочитать подробности; ветки раскрываются кнопкой справа от названия.
из 79 требований · версия стенда 0.5.4
Всё ТЗ списком
-
i
Задача 04 · контроль качества денситометрии DXA стр. 2
Сервис-помощник по контролю качества: проверяет, можно ли использовать исследование для клинической интерпретации, оценивает корректность областей измерения и объясняет, какое нарушение найдено. Ошибки укладки и разметки искажают показатели и ведут к повторным исследованиям, а ручной контроль требует специалиста.На стенде: Стенд DXA QC: версия 0.5.1 на правилах, без обученной модели.
-
Задача и функционал стр. 3
Разработать ПО на основе ИИ для автоматизированной оценки качества денситометрических исследований и корректности разметки анатомических структур без первичного ручного просмотра каждого исследования.
-
Объекты анализа стр. 3
В базовый контур входят две области; допускается единая модель или отдельные модели с автоматическим определением области.
-
✓
Поясничный отдел позвоночника стр. 3
сделано
Обязательная область.На стенде: Определяется, качество оценивается: охват, ось, посторонние предметы.
-
◐
Проксимальный отдел бедра стр. 3
частично
Обязательная область.На стенде: Определяется сторона и приблизительные ориентиры; вердикт качества бедра пока не выносится.
-
i
Единая модель или отдельные стр. 3
Выбор архитектуры за участниками.На стенде: Отдельные правила для позвоночника и бедра с определением области.
-
✓
Поясничный отдел позвоночника стр. 3
сделано
-
Основной функционал стр. 3
Что должен уметь сервис.
-
◐
Определение анатомической области стр. 3
частично
Поясничный отдел или проксимальный отдел бедра.На стенде: По ширине кадра GE Lunar (300 / 280 px) и эвристике яркости; нераспознанная область пока не отклоняется.
-
✕
Определение проекции стр. 3
не сделано
Проекция исследования.На стенде: Проекция не определяется, считается прямой.
-
◐
Классификация: качественное или нарушение стр. 3
частично
quality_class 0 или 1.На стенде: Позвоночник — 0/1; бедро — «не оценено».
-
◐
Оценка укладки и позиционирования стр. 3
частично
По стандартным критериям.На стенде: Позвоночник: охват снизу и наклон оси; бедро — нет.
-
◐
Оценка корректности разметки и областей измерения стр. 3
частично
Корректно ли выполнена разметка анатомических структур.На стенде: Вход без разметки: сервис строит свою разметку-атлас (позвонки Th12–L5, кости, ориентиры) и проверяет по ней; проверка чужой разметки не реализована.
-
✓
Один или несколько типов нарушения стр. 3
сделано
Перечень нарушений у исследования.На стенде: violation_type — список через «;», пояснения к каждому нарушению.
-
✓
Структурированный отчёт стр. 3
сделано
Отчёт с результатами работы.На стенде: Таблица csv/xlsx, JSON в API, интерактивные карточки снимков.
-
◐
Определение анатомической области стр. 3
частично
-
Объекты анализа стр. 3
-
Нарушения качества стр. 3
Категории нарушений, которые должно рассматривать решение (раздел 2.3).
-
Поясничный отдел стр. 3
Три критерия с иллюстрациями на рисунках 1–3.
-
✓
Охват снизу: верхние края подвздошных костей стр. 4
сделано
На нижнем уровне сканирования видны верхние края подвздошных костей (рис. 1).На стенде: Яркость кости в нижних углах кадра, порог настраивается в пульте; F1 0,77 на обучающем наборе.
-
✕
Охват сверху: половина Th12 стр. 4
не сделано
Верхний уровень сканирования — половина тела позвонка Th12 (рис. 1).На стенде: Th12 размечается приблизительно, граница кадра по нему не проверяется.
-
✓
Ось позвоночника: наклон до 5° стр. 4
сделано
Правильно выровненная ось, допустимый наклон до 5 градусов (рис. 2: 1,6° — корректно, 6,9° — нет).На стенде: Угол оси по центрам позвонков, допуск настраивается; F1 0,33 на обучающем наборе.
-
◐
Посторонние предметы и артефакты стр. 5
частично
Отсутствие посторонних предметов, выраженных артефактов и наложений, например металла одежды (рис. 3).На стенде: Поиск очень ярких объектов вне столба работает, но F1 0,13 — слабое место версии.
-
✓
Охват снизу: верхние края подвздошных костей стр. 4
сделано
-
Проксимальный отдел бедра стр. 5
Три критерия с иллюстрациями на рисунках 4–6.
-
◐
Позиционирование: большой вертел, шейка, седалищная кость стр. 5
частично
На изображении представлены большой вертел, шейка бедра и седалищная кость (рис. 4).На стенде: Ориентиры вертела и шейки находятся приблизительно и подписаны на атласе; седалищная кость и вердикт — нет.
-
✕
Отсутствие ротации: малый вертел стр. 6
не сделано
Контур слегка деформирован малым вертелом; переротация — контур плавный, недоротация — малый вертел слишком большой (рис. 5).На стенде: Не реализовано.
-
✕
Область интереса: поля 3 см и 2 см стр. 7
не сделано
Видно по 3 см сверху и снизу от области интереса и 2 см от правого и левого края (рис. 6).На стенде: Не реализовано: в DICOM организатора нет PixelSpacing, миллиметры без калибровки не получить.
-
◐
Позиционирование: большой вертел, шейка, седалищная кость стр. 5
частично
-
Поясничный отдел стр. 3
-
Входные данные и ресурсы стр. 7
Что приходит на вход и что дал организатор (разделы 2.4 и 6).
-
✓
DICOM без разметки стр. 7
сделано
Исследования в формате DICOM без разметки.На стенде: Загрузчик терпит нестандартные UID и пустые теги; картинки и не-DXA получают отказ с причиной.
-
✓
До 3 изображений или серий в исследовании стр. 7
сделано
Одно исследование — одно или несколько изображений, не более 3.На стенде: Одинаковые снимки схлопываются: в обучающем наборе встречается до 29 копий в исследовании.
-
✓
Метаданные можно, персональные данные — нет стр. 7
сделано
Метаданные DICOM допустимы, но решение не должно зависеть от персональных данных.На стенде: Используются только пиксели и технические теги; персональные данные не читаются.
-
i
Обезличенные изображения и экспертная разметка стр. 7
Организатор предоставляет обезличенные изображения и часть исследований с экспертной разметкой.
-
Ресурсы организатора стр. 10
Раздел 6.
-
i
НД_для_обучения.zip стр. 10
Обезличенные DICOM с экспертной оценкой качества.На стенде: 100 исследований, 499 DICOM, 252 уникальных снимка; метки на исследование и область, не на файл.
-
i
Для теста.zip стр. 10
Фрагмент для проверки формата и отладки загрузчика.На стенде: 3 снимка: поясничный отдел, правое и левое бедро.
-
i
Методические рекомендации, разделы 2.6 и 2.7 стр. 10
Детальные критерии качества и примеры разметки.
-
i
Закрытый тестовый набор стр. 10
Для финальной оценки, участникам не передаётся.
-
i
НД_для_обучения.zip стр. 10
-
✓
DICOM без разметки стр. 7
сделано
-
Результат стр. 8
Выходные данные и дополнительный функционал (разделы 2.5 и 2.6).
-
✓
Таблица .xlsx или .csv стр. 8
сделано
Одна строка — одно изображение (одна анатомическая область) в исследовании.На стенде: results.csv и results.xlsx у каждого прогона, в API — ссылки на них.
-
✓
Колонки таблицы стр. 8
сделано
Рекомендуемая структура из восьми колонок.На стенде: Все восемь колонок в указанном порядке.
-
✓
path_to_study стр. 8
сделано
Путь к исследованию или файлу, String.
-
✓
study_uid стр. 8
сделано
Идентификатор исследования из DICOM-тегов, String.
-
✓
image_uid стр. 8
сделано
Идентификатор изображения из DICOM-тегов, String.
-
✓
anatomical_region стр. 8
сделано
Определённая анатомическая область, String.
-
✓
quality_class стр. 8
сделано
0 — качественное, 1 — есть нарушение, Integer.На стенде: Пусто, если область не оценивается.
-
✓
violation_type стр. 8
сделано
Тип или перечень нарушений, String.
-
✓
processing_status стр. 8
сделано
Success / Failure, String.
-
✓
time_of_processing стр. 8
сделано
Время обработки в секундах, Float.
-
✓
path_to_study стр. 8
сделано
-
Дополнительный функционал стр. 8
Раздел 2.6.
-
✓
Визуализация нарушения: маска, контур, точки стр. 8
сделано
Дополнительная серия с визуализацией: маска, контур, ключевые точки или тепловая карта.На стенде: Атлас: зоны позвонков и костей, ось, рамки предметов, слои и лупа; overlays.zip с картинками.
-
✕
Описание нарушений в DICOM SR стр. 8
не сделано
Текстовое описание нарушений в формате DICOM SR.На стенде: Не реализовано: текст пояснений есть в таблице и карточке, но не в DICOM SR.
-
✕
Автокоррекция разметки с подтверждением стр. 8
не сделано
Автоматическая коррекция разметки с возможностью подтверждения специалистом.На стенде: Разметку не правят; админ может исправить вердикт снимка в пульте — это не коррекция разметки.
-
✓
Веб-интерфейс стр. 8
сделано
Интерактивный веб-интерфейс для загрузки, просмотра и пакетной обработки.На стенде: Стенд: загрузка, живой прогресс, таблица, инфографика, карточки с голосом, пульт.
-
✓
Визуализация нарушения: маска, контур, точки стр. 8
сделано
-
✓
Таблица .xlsx или .csv стр. 8
сделано
-
Технические и программные требования стр. 8
Разделы 2.7 и 3.
-
✓
Не более 3 минут на исследование стр. 8
сделано
Время обработки одного исследования на целевой конфигурации.На стенде: Около 0,25 с на снимок на слабом сервере стенда.
-
✓
Без необработанных исключений стр. 8
сделано
Все ошибки фиксируются в отчёте.На стенде: Нечитаемые и неподходящие файлы — строки Failure с причиной; упавший анализ снимка не роняет пакет.
-
✓
Воспроизводимость стр. 8
сделано
Одинаковые результаты при повторном запуске на тех же данных.На стенде: Правила детерминированы, случайная выборка с фиксированным зерном.
-
✓
Пакетная обработка архива стр. 8
сделано
Общая таблица xlsx/csv и zip с дополнительными сериями.На стенде: Загрузка zip на стенде и /api/batch; overlays.zip с атласами.
-
Оборудование стр. 9
Раздел 3.1.
-
✕
Минимальная и рекомендуемая конфигурация стр. 9
не сделано
Указать память, процессор, графический ускоритель и диск для инференса.На стенде: Не оформлено: стенд работает на 1,5 ядра и 1,5 ГБ памяти без GPU.
-
i
Финальный тест: 2 × H200 стр. 9
Каждая H200 в своей ВМ: 44 CPU, 256 ГБ RAM, 141 ГБ VRAM.
-
✕
Минимальная и рекомендуемая конфигурация стр. 9
не сделано
-
Программные требования стр. 9
Раздел 3.2.
-
✓
Контейнеризация стр. 9
сделано
Обязательна.На стенде: Docker-образ, compose в infra/app.
-
◐
Скрипт сборки и запуска для Linux и UNIX стр. 9
частично
Скрипт для сборки и запуска контейнера.На стенде: infra/app/deploy.sh для стенда; универсальный скрипт с инструкцией для проверяющих ещё не оформлен.
-
✓
Локально, без внешних сервисов стр. 9
сделано
Без закрытых внешних сервисов и без передачи медицинских изображений во внешние системы.На стенде: Анализ, голос и отчёты работают локально; анализ снимка в Claude — только по одобрению админа и не для данных организатора.
-
✓
API пакетной обработки стр. 9
сделано
API для обработки тестового набора.На стенде: HTTP /api/batch и MCP-сервер /mcp.
-
◐
Зафиксированные зависимости стр. 9
частично
Версии библиотек, сред выполнения и базового контейнера.На стенде: Библиотеки закреплены точными версиями; базовый образ python:3.12-slim без digest.
-
✓
Контейнеризация стр. 9
сделано
-
✓
Не более 3 минут на исследование стр. 8
сделано
-
Метрики и критерии оценки стр. 11
Раздел 8. Приоритет — F1 и ROC-AUC, метрики с 95% доверительными интервалами.
-
Метрики эффективности стр. 12
Отдельно по каждой области и типу нарушения, а также в целом (8.4).
-
◐
Чувствительность и специфичность стр. 12
частично
Выявление исследований с нарушениями и специфичность для качественных.На стенде: Позвоночник на уровне исследования: итог 0,44 и 0,76; бедро — нет.
-
◐
F1 и сбалансированная точность стр. 12
частично
Сбалансированная точность и F1-мера.На стенде: F1 есть (итог по позвоночнику 0,45); сбалансированная точность не считается.
-
✕
ROC AUC / PR AUC стр. 12
не сделано
Для бинарной классификации.На стенде: Не считается: правила дают класс без вероятности.
-
◐
macro-F1 по типам нарушений стр. 12
частично
Для многоклассового или мультилейбл-определения типов.На стенде: F1 по каждому типу у позвоночника есть, сводный macro-F1 не показан.
-
✕
Dice, IoU, расстояние между точками стр. 12
не сделано
Метрики локализации при наличии функционала.На стенде: Не считаются: нет эталонной разметки контуров и точек.
-
✓
Время и доля успешно обработанных стр. 12
сделано
Время одного исследования и доля успешных файлов.На стенде: Среднее время на снимок и отказы в сводке каждого прогона.
-
✓
95% доверительные интервалы стр. 12
сделано
Метрики точности желательно с 95% ДИ.На стенде: Бутстреп на странице прогона обучающего набора для чувствительности, специфичности и F1.
-
◐
Чувствительность и специфичность стр. 12
частично
-
i
Подход коллектива стр. 11
Понимание клинической задачи, таксономия нарушений, выборка, дисбаланс классов, отсутствие утечки между выборками (8.1).На стенде: Разбиение только по исследованиям, дубли схлопываются до оценки; пороги пока подобраны на тех же данных.
-
i
Техническая проработка стр. 11
Архитектура, предобработка DICOM, устойчивость, обработка ошибок, контейнеризация, воспроизводимость (8.2).
-
i
Соответствие задаче стр. 11
Полнота функций, форматы, поддержка областей, прозрачность ограничений, локальное использование (8.3).
-
i
Питч-сессия стр. 12
Владение материалом, логика решения, демонстрация, понимание ограничений и план внедрения (8.5).
-
Метрики эффективности стр. 12
-
Сдача решения стр. 10
Промежуточная и финальная сдача (раздел 7).
-
MVP · промежуточная сдача стр. 10
Раздел 7.1.
-
✕
Обученная модель и скрипт инференса стр. 10
не сделано
Обученная модель и скрипт инференса.На стенде: Версия на правилах без обучения; модель не обучалась.
-
✓
Чтение DICOM и пакетная обработка стр. 10
сделано
Модуль чтения DICOM и пакетной обработки.
-
✓
Бинарный класс «качественное / нарушение» стр. 10
сделано
Как минимум бинарный класс.На стенде: Для позвоночника.
-
✓
Разметка хотя бы одной области стр. 10
сделано
Оценка корректности разметки для одной области.На стенде: Атлас поясничного отдела с уровнями позвонков и проверками.
-
✓
Файл результатов в формате стр. 10
сделано
Согласованный формат.На стенде: Таблица по разделу 2.5.
-
◐
Метрики на валидационной выборке стр. 10
частично
Расчёт основных метрик.На стенде: Считаются на обучающем наборе, пороги подобраны на тех же данных — отдельной валидации нет.
-
◐
Краткая инструкция стр. 10
частично
Как работать с моделью.На стенде: Стенд и описание API есть, инструкции для сдачи нет.
-
◐
Ограничения и план доработки стр. 10
частично
Описание ограничений и плана.На стенде: Ограничения показаны на стенде, план — в трекере.
-
✕
Обученная модель и скрипт инференса стр. 10
не сделано
-
Финальная версия стр. 11
Раздел 7.2; проверка на закрытых данных без участия команды.
-
✕
Обученная модель и веса стр. 11
не сделано
Все необходимые веса.
-
✓
Контейнеризированный сервис стр. 11
сделано
Сервис или приложение в контейнере.
-
◐
Все области и классы нарушений стр. 11
частично
Поддержка всех обязательных областей и классов.На стенде: Позвоночник без Th12; бедро без вердикта.
-
◐
Скрипт сборки и запуска с инструкцией стр. 11
частично
Для Linux и UNIX-подобных систем.На стенде: Есть для стенда, для проверяющих не оформлен.
-
✓
Устойчивая пакетная обработка стр. 11
сделано
Закрытого тестового набора.На стенде: Весь обучающий набор проходит без отказов, прерванные прогоны возобновляются.
-
✓
Структурированный файл результатов стр. 11
сделано
Таблица по разделу 2.5.
-
✕
Полный комплект документации стр. 11
не сделано
README, руководства пользователя и развёртывания.
-
✕
Презентация и демонстрационный сценарий стр. 11
не сделано
Для защиты.На стенде: Эпик «Презентация и защита» в трекере.
-
i
Исходный код стр. 11
В объёме, установленном правилами конкурса.
-
✕
Обученная модель и веса стр. 11
не сделано
-
MVP · промежуточная сдача стр. 10
-
Презентация и документация стр. 9
Разделы 4 и 5.
-
Презентация стр. 9
Показать не только метрики, но и логику клинического контроля качества.
-
✕
Подход и обоснование стр. 9
не сделано
Описание и обоснование выбранного подхода.
-
✕
Архитектура модели и решения стр. 9
не сделано
Архитектура модели и программного решения.
-
✕
Данные, разбиение, предобработка стр. 9
не сделано
Состав наборов, правила разбиения, предобработка.
-
✕
Таксономия нарушений стр. 9
не сделано
Таксономия и подход к нескольким нарушениям.
-
✕
Эксперименты и анализ ошибок стр. 9
не сделано
Сравнение вариантов модели и анализ ошибок.
-
◐
Метрики с ДИ стр. 9
частично
Метрики качества с доверительными интервалами.На стенде: Считаются на стенде, слайдов нет.
-
◐
Скорость и системные требования стр. 9
частично
Скорость обработки и требования.На стенде: Скорость измерена, требования не оформлены.
-
✕
Ограничения и внедрение стр. 9
не сделано
Ограничения и сценарий внедрения.
-
◐
Кейсы работы решения стр. 9
частично
Демонстрационные кейсы.На стенде: Стенд с примерами и карточками; ролик не собран.
-
✕
Подход и обоснование стр. 9
не сделано
-
Документация стр. 10
Сторонний разработчик должен воспроизвести запуск на новых DICOM.
-
◐
README.md стр. 10
частично
Назначение и ограничения, структура, требования, сборка и запуск, API, форматы, модель, известные ошибки.На стенде: Есть infra/app/README.md про стенд; полного README по списку ТЗ нет.
-
✕
Руководство пользователя стр. 10
не сделано
Дополнительный документ.
-
◐
Руководство по развёртыванию стр. 10
частично
Дополнительный документ.На стенде: Разделы про деплой стенда в infra/app/README.md.
-
✕
Процедура обучения или дообучения стр. 10
не сделано
Краткое описание.На стенде: Модель не обучается.
-
◐
README.md стр. 10
частично
-
Презентация стр. 9
-
Задача и функционал стр. 3