Проблема слепого полета
В задачах слежения за объектом часто возникает ситуация, когда цель на короткое время исчезает из поля зрения камеры. В такие моменты системе необходимо продолжать движение по инерции, чтобы не потерять объект. Классический фильтр Калмана в таких условиях справляется плохо: он теряет цель в 84% случаев, если у него нет данных о расстоянии до объекта.
Команда MoranaLabs поставила задачу создать алгоритм, который сможет эффективно «вести» цель вслепую. Для этого использовался симулятор, где физика рассчитывалась на Python, а обучение проходило с помощью библиотеки stable-baselines3. Все испытания проводились в виртуальной среде, имитирующей реальные условия полета.
Сложности обучения нейросети
Путь к работающей модели занял пять недель и включал 12 версий алгоритма. Первые попытки были неудачными из-за ошибок в настройках. Например, если окно времени, в течение которого цель считается потерянной, слишком короткое, нейросеть просто не успевает выучить поведение для возврата в кадр. Если же окно слишком длинное, а штрафы за ошибки велики, нейросети становится выгоднее «сдаться» и завершить эпизод раньше, чем она попытается найти цель.
Еще одной ошибкой стала попытка навязать нейросети поведение простого визуального сервопривода. Оказалось, что если задавать слишком жесткие рамки поведения, это ограничивает потенциал системы, и она не может превзойти даже самые простые алгоритмы.
Гибридный подход против классики
В итоге разработчики создали гибридную архитектуру. Она сочетает в себе структуру классического фильтра и возможности обучаемой нейросети, которая определяет коэффициент усиления. Такой подход позволил превзойти как чистый фильтр Калмана, так и чистые нейросетевые модели.
Результаты оказались впечатляющими: новый трекер теряет цель лишь в 18% эпизодов, при этом в 80% случаев он успешно возвращает объект в центр кадра после временного исчезновения. Это значительно превосходит показатели классических методов на монокулярных камерах.
Что это значит
Разработка показала, что для решения сложных задач навигации эффективнее всего использовать гибридные системы, объединяющие математические модели и машинное обучение. Это позволяет компенсировать отсутствие данных о расстоянии и ошибки датчиков, обеспечивая стабильное слежение даже при прерывистом визуальном контакте.
