Дополненная реальность SDK с OpenCV [закрыто]


Я разрабатываю SDK дополненной реальности на OpenCV. У меня были некоторые проблемы, чтобы найти учебники по этой теме, Какие шаги, чтобы следовать, возможные алгоритмы, быстрое и эффективное кодирование в реальном времени и т. д.

пока я собрал следующую информацию и полезные ссылки.

установка OpenCV

скачать последняя версия релиза.

вы можете найти руководства по установке здесь (платформы: linux, mac, windows, java, android, iOS).

онлайн документация.

Дополненная Реальность

для начинающих здесь это простой код дополненной реальности в OpenCV. Это хорошее начало.

для тех, кто ищет хорошо разработанный современный SDK, я нашел некоторые общие шаги, которые должна иметь каждая дополненная реальность, основанная на отслеживании маркеров, учитывая функции OpenCV.

  1. основная программа: создает все классы, инициализацию, захват кадров из видео.

  2. класс AR_Engine: управляет частями приложения дополненной реальности. Должно быть 2 основных состояния:

    • определение: пытается обнаружить маркер в сцене
    • отслеживание: как только он обнаружен, использует более низкие вычислительные методы для отслеживания маркера в предстоящем кадры.

также должны быть некоторые алгоритмы для нахождения положения и ориентации камеры в каждом кадре. Это достигается путем обнаружения преобразования гомографии между маркером, обнаруженным в сцене, и 2D-изображением маркера, которое мы обработали в автономном режиме. Объяснение этого метода здесь (стр. 18). Основными шагами для оценки позы являются:

  1. загрузка камеры внутренняя Параметры. Ранее извлеченные в автономном режиме с помощью калибровки.

  2. загрузить шаблон (маркер) для отслеживания: это изображение плоского маркера, который мы будем отслеживать. Необходимо извлечь функции и сгенерировать дескрипторы (точки) для этого шаблона, так что позже мы можем сравнить с функциями из сцены. Алгоритмы для этого задача:

  3. для каждого обновления кадра запустите алгоритм обнаружения для извлечение объектов из сцены и генерации дескрипторов. Опять же у нас есть несколько вариантов.

    • просеять
    • быстро
    • SURF
    • урод: новый метод (2012) supossed чтобы быть самым быстрым.
    • шар
  4. найти игр между шаблоном и дескрипторами сцены.

  5. найти фонетическое письмо матрица из этих матчей. RANSAC можно использовать до того, как найти inliers/outliers в наборе совпадений.

  6. экстракт Камера Поза от проективное преобразование.

    • пример кода на позе из гомографии.
    • пример кода по гомографии из позы.

полные примеры:

2 90

2 ответа:

поскольку приложения AR часто работают на мобильных устройствах, вы можете рассмотреть также другие функции детектора / дескриптора:

Как правило, если вы можете выбрать маркеры, вы сначала обнаружите квадратную цель с помощью детектора края, а затем либо Hough, либо просто контуры - затем определите конкретный маркер из внутреннего дизайна. Вместо того, чтобы использовать общий сопоставитель точек.

посмотри Aruco для хорошо написанного примера кода.