Быстрая Регистрация Особых Точек Изображений С Помощью Биграфового Голосования.

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

Она либо быстрая, либо аккуратная.

Я довольно долго (около 17 лет) занимаюсь обработкой изображений, в том числе реконструкцией 3D-сетки из видео, и у меня даже есть собственная компания, продающая такой продукт. Однако я решил выпустить часть разработки и ключевую идею в общественное достояние без патентной блокировки.

Общая идея существующих относительно быстрых алгоритмов такова:

  1. (Обнаружение особенностей) Найдите любые особые точки на каждом изображении, желательно с точностью до субпикселя.

  2. (Описание признака) Постройте для каждой точки массив признаков, полностью или частично удовлетворяющий следующим требованиям:
    • Инвариантность к:
      • (Физический) шум, изменения выдержки (яркость и контрастность), артефакты сжатия
      • (2D-геометрия) вращения, перемещения, масштабирование
      • (3D-геометрия) искажение проекции
    • Компактный (меньше памяти, более быстрое сравнение)
    • Разновидности (около выбранной точки в определенном заранее заданном шаблоне):
    • Гистограмма градиентов, яркости, цветов.

      (просеивание, серфинг.

      )

  3. Чтение значений и нормализация уровня.

    (ORB,BRIFF.)

  4. Для пары изображений найдите точки соответствия, используя минимальное расстояние (сумму абсолютных разностей (L1) или сумму квадратов разностей (L2)) между массивами признаков, асимптотическая сложность этого шага равна O(N^2), где N — количество особых точек.

  5. (Необязательно): Проверьте геометрическую совместимость пар, например, с помощью РАНСАК и повторите шаг 3


Быстрая регистрация особых точек изображений с помощью биграфового голосования.
</p><p>

Предлагаемая схема регистрации следующая.

Для каждого изображения (обнаружить):

Быстрая регистрация особых точек изображений с помощью биграфового голосования.
</p><p>

  1. Найдите особые точки
  2. Особые точки разделим на 2 группы по знаку разности ( Собака ) между значением в точке и средним значением в небольшой окрестности.

  3. Для каждой точки из первой группы найдите около десятка соседей.

    На этом этапе у нас есть биграф из ~N/2*10 ориентированных ребер.

  4. Для каждого края мы отбираем точки шаблона, масштабированные и поворачиваемые вместе с краем.

  5. Мы строим битовый (~26 бит) хэш, используя сравнение образцов.



Быстрая регистрация особых точек изображений с помощью биграфового голосования.
</p><p>

Для регистрации (привязки):
  1. Мы строим ЛУТ от краев правой картинки по хеш-значению
  2. Для каждого ребра на левом рисунке мы ищем O(1) ребер с одинаковым хешем в LUT.
  3. Добавляем 2 индекса точек с левого края к 2 индексам точек с правого края
  4. Проходим по всем пунктам правой картинки и подсчитываем количество голосов


Быстрая регистрация особых точек изображений с помощью биграфового голосования.
</p><p>

Результат: для FullHD на i7-6900K с использованием одного ядра Примерно 10 000 точек на изображение обнаружить 29,0556 мс/на изображение связывание 10,46563 мс/на пару Достоинства: быстрый, надежный с небольшими искажениями перспективы (маленькое количество неправильно соединенных точек), простой код, не запатентованный (насколько мне известно).



Быстрая регистрация особых точек изображений с помощью биграфового голосования.
</p><p>



Быстрая регистрация особых точек изображений с помощью биграфового голосования.
</p><p>

Фактический исходный код Сейчас я пишу шаблон для Raspberry Pi на основе этой схемы.

СЛЭМ , в свободное от работы время.

Теги: #регистрация видео #Raspberry Pi #открытый исходный код #Алгоритмы #Обработка изображений #Разработка робототехники

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.