Введение в отслеживание плоских изображений
Отслеживание плоских изображений (Planar Image Tracking) используется для обнаружения и отслеживания текстурированных плоских объектов из повседневной жизни. Под “плоским” объектом может быть как небольшой предмет вроде книги, визитки или плаката, так и крупная цель вроде стены с граффити. Такие объекты имеют плоскую поверхность и богатую, неповторяющуюся текстуру.
Эта страница кратко описывает основные принципы обнаружения и отслеживания плоских изображений, ожидаемые результаты и адаптацию под платформы, чтобы помочь быстро понять границы функции и ключевые моменты разработки.
Основные принципы
Понимание этих принципов помогает улучшить распознавание и избежать распространённых проблем.
Основной процесс
Этап загрузки и предварительной обработки:
- Система загружает целевое изображение, извлекает из него множество визуальных feature points, создаёт его feature description и добавляет в базу признаков.
- Чем богаче текстура изображения, тем легче его распознать и отслеживать. Можно использовать инструмент проверки целевого изображения, чтобы заранее проверить распознаваемость вашей цели.

Слева: изображение с богатой текстурой, легко распознаётся (5 звёзд); справа: простое изображение с малой текстурой, распознаётся плохо (1 звезда).
Мы рекомендуем использовать в качестве целей изображения уровня 4~5 звёзд.Этап обнаружения и отслеживания в реальном времени:
- После того как камера захватывает кадр, система анализирует feature points текущего кадра и сопоставляет их с базой признаков целевого изображения.
- С помощью алгоритма PnP (Perspective-n-Point) вычисляется pose изображения в 3D-пространстве (позиция + вращение).
- После успешного обнаружения цели система переходит в режим отслеживания. В этот момент она сравнивает последовательные кадры и анализирует движение между ними, обеспечивая отслеживание в реальном времени.
Механизмы оптимизации:
- Восстановление после потери отслеживания: после краткой окклюзии или быстрого смазывания система автоматически обнаруживает цель заново.
- Одновременное отслеживание нескольких целей: количество concurrent для одного Tracker управляется параметром
Simultaneous Number, что позволяет отслеживать несколько целей одной сущностью Tracker.
Технические ограничения
- Поддерживаются только плоские изображения (не 3D-объекты и не динамический контент).
- Сильно зависит от освещения; слишком тёмный или пересвеченный кадр затруднит обнаружение или приведёт к потере отслеживания.
- При обнаружении камера не должна находиться слишком далеко от цели; убедитесь, что цель занимает не менее 30% кадра.
- Многоцелевое отслеживание ограничено производительностью устройства; обычно PC может одновременно отслеживать более 10 целей, а мобильное устройство — 4~6 плоских целей.
Эффект и ожидаемые результаты
Поняв работу и технические ограничения обнаружения и отслеживания изображений, полезно также знать, каких результатов функция может достичь. Это помогает задавать разумные критерии тестирования во время разработки.
Идеальный результат
- Точная наложенность: виртуальный объект выравнивается по краям изображения.
- Быстрое обнаружение: сверхнизкая задержка от загрузки приложения до успешного обнаружения.
- Стабильное отслеживание: изображение остаётся отслеживаемым при вращении, перемещении и частичной окклюзии.
Неидеальные ситуации и действия
| Явление | Причина | Восприятие пользователя | Предварительное решение (см. далее) |
|---|---|---|---|
| Не удаётся распознать | Недостаточная текстура или слишком маленькое изображение | Виртуальный объект не появляется | Оптимизировать целевое изображение и проверить распознаваемость инструментом |
| Дрожание отслеживания | Цель занимает слишком мало экрана и мало отслеживаемых точек | Виртуальный объект заметно дрожит | Не удаляться слишком далеко от цели и задать режим PreferQuality |
| Частая потеря | Быстрое движение изображения или полная окклюзия | Виртуальный объект мигает/исчезает | Стабилизировать движение устройства/цели или увеличить размер цели |
| Потеря нескольких целей | Ограничения оборудования | Часть целей не удаётся отслеживать | Подобрать разумный Simultaneous Number, балансируя производительность |
Способ проверки ожидаемых результатов
- Этап разработки: используйте камеру PC через Play Mode Unity Editor для предварительного просмотра.
- Этап тестирования: используйте официальную sample-сцену или собственное тестовое изображение, чтобы покрыть разные условия освещения, угла и расстояния.
Лучшие практики для целевых изображений
Эффективность отслеживания плоских изображений сильно зависит от качества целевого изображения. Чтобы обеспечить высокий процент распознавания, следуйте этим правилам при подготовке изображения.
В зависимости от сценария вы можете подготовить целевое изображение по-разному: сфотографировать объект прямо в анфас или сначала разработать рисунок, а потом распечатать его. И фотографии, и макеты можно использовать как шаблонное изображение.
Базовые требования
- Формат изображения: рекомендуется JPG или PNG.
- Обработка альфа-канала: если у изображения есть альфа-канал, система будет обрабатывать его как белый фон. Если это не то, что вам нужно, избегайте альфа-канала.
Ключевые пункты оптимизации
Обеспечьте богатую текстуру
Шаблон должен содержать достаточно деталей и изменений краёв; избегайте однотонных или простых графических форм.

Слева: изображение с богатой текстурой можно обнаружить; справа: однотонное изображение обнаружить нельзя
Избегайте повторяющихся паттернов
Узоры с повторяемой регулярностью (например, шахматка или полосы) снижают уникальность feature points.

Изображение с повторяющимся паттерном нельзя отслеживать
Заполняйте кадр
Объект должен занимать как можно больше площади изображения, уменьшая пустые области.

Изображение с плотным объектом легче обнаружить и отслеживать
Контролируйте пропорции
Изображение не должно быть слишком узким и длинным; короткая сторона должна составлять не менее 20% длинной стороны.

Слишком узкие изображения трудно отслеживать
Выберите подходящее разрешение
Рекомендуемый диапазон: от SQCIF (128×96) до QVGA (1280×960).
Слишком маленькое: мало feature points, ниже точность распознавания.
Слишком большое: лишние затраты памяти и времени вычислений при генерации данных Target.