Skip to content

ПР09. Базовый алгоритм 2D/3D-восприятия

Работа относится к проектной траектории. Рассчитывайте на одну лабораторную пару и примерно 2,5 часа самостоятельной доработки.

Цель

Запустить предоставленный детектор на версионированном наборе, пересчитать метрики одной командой и доказать, что завышенная метрика была следствием утечки или ошибки предобработки, а не качеством модели.

Критерии зачтено

Работа зачтена, когда выполнены все три стадии и прошла автопроверка:

СтадияЧто требуется
1 · Собратьдетектор на версионированных изображениях/метках, метрики точности, полноты, F1, IoU и привязка 2D к глубине
2 · Сломатьутечка меток, неверное цветовое пространство или ошибка калибровки завышают метрику
3 · Доказатьправильный отчёт после исправления, errors.md с ≥3 категориями причин, хэш набора сохранён
Автопроверкаcheck_practice.py PR09 проверит data/manifest.json, evidence/pr09/{metrics.json,errors.md} и заявления public_tests_passed, defect_reproduced, defect_fixed, dataset_versioned

Что получится

Вы запустите готовый детектор на фиксированном наборе, сохраните исходные предсказания, посчитаете метрики и отдельно разберёте ошибки 2D-детекции и пространственной привязки.

Пакеты и понятия

  • perception_baseline — пакет с детектором и скриптом оценки; data/manifest.json — версия набора: хэш изображений/меток и правило разбиения на обучающую/тестовую выборки.
  • Метрики отвечают на разные вопросы: IoU — насколько точно совпадает область; точность — доля верных детекций среди найденных; полнота — доля найденных среди всех истинных; F1 — их гармоническое среднее.
  • Порог — уровень уверенности детекции; выбирается по цене ошибок до просмотра тестовой выборки.
  • Пространственная привязка требует глубины + калибровки + системы координат + согласованного времени; без глубины публикуется unknown.

Что сделать

  1. Запустите предоставленный классический детектор на версионированных изображениях и метках (data/manifest.json). Посчитайте точность, полноту, F1 и IoU сохранённым скриптом оценки.
  2. Свяжите 2D-детекцию с глубиной, проекцией лидара или геометрической оценкой расстояния. Для каждой детекции сохраните и 2D-область, и пространственную позу с указанием системы координат; при отсутствии глубины — unknown.
  3. В fixture есть утечка меток, неверное цветовое пространство или ошибка калибровки, из-за которой F1 выглядит завышенной. Покажите завышенную метрику до и корректный отчёт после исправления; errors.md — не менее трёх категорий причин ошибок.

Сохраните data/manifest.json и evidence/pr09/{metrics.json,errors.md,report.json}: хэш набора и разбиение зафиксированы, метрики пересчитываются одной командой, исходные предсказания сохранены.

Проверка

bash
colcon test --packages-select perception_baseline
python3 tools/evaluate_perception.py --manifest data/manifest.json
python3 /path/to/course/tools/check_practice.py PR09 --submission .

Готово, если хэш набора и разбиение сохранены, метрики пересчитываются одной командой, а errors.md содержит не менее трёх категорий причин. Дополнительно: проверьте устойчивость к освещению без изменения тестовых меток.

Как работаем на лабораторной

После проверки локализации сравним два отчёта с одинаковым F1, но разным разбиением данных. Затем зафиксируйте манифест набора и первый запуск детектора.

Общий порядок: runbook · troubleshooting.

Если использовался ИИ, применяются правила курса.

Официальные справочники

Учебные материалы: CC BY 4.0 · Код: Apache-2.0