Domain adaptation с VR/fisheye на обычное видео
Есть модель для first-person VR/fisheye, а нужно работать на flat third-person видео. Как переносить качество?
Ответить самому
Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.
Короткий ответ
Нужно уменьшить gap доменов: перепроекции/аугментации, сильный pretrained backbone, pseudo-labeling, небольшой labeled target set и валидация на целевом видео.
Полный разбор
Модель, обученная на VR/fisheye, видит другую геометрию, поле зрения, motion pattern, scale объектов и артефакты. Можно попробовать перепроецировать VR в flat-view или, наоборот, аугментировать flat data под fisheye, но полностью это gap не закроет.
Практичный план: взять сильный pretrained/self-supervised backbone, собрать небольшой labeled target set, использовать pseudo-labeling сильной teacher-моделью, дообучить head или всю модель с осторожным learning rate, добавить augmentations по blur, distortion, perspective, lighting.
Оценивать нужно на целевом домене. Если нет target labels, можно начать с human review, active learning и error buckets: occlusion, small objects, fast motion, edge cases.
Теория
Domain adaptation работает только если явно измерять target-domain качество, а не надеяться на source validation.
Типичные ошибки
- Считать fisheye и обычное видео одним доменом.
- Не собирать даже маленький target validation set.
- Переиспользовать thresholds без calibration.