WikiDer > Характеристики из ускоренного тестирования сегмента

Features from accelerated segment test

Характеристики из ускоренного тестирования сегмента (FAST) это метод определения углов, который можно использовать для извлечения характерных точек, а затем использовать для отслеживания и сопоставления объектов во многих компьютерное зрение задачи. Угловой детектор FAST был первоначально разработан Эдвардом Ростеном и Томом Драммондом и опубликован в 2006 году.[1] Самое многообещающее преимущество FAST угловой детектор - его вычислительная эффективность. Судя по названию, он действительно быстрее, чем многие другие известные методы извлечения признаков, такие как разница гауссиан (DoG) используется ПРОСЕЯТЬ, СЬЮЗЕН и Харрис детекторы. Более того, когда применяются методы машинного обучения, может быть достигнута превосходная производительность с точки зрения времени вычислений и ресурсов. Угловой детектор FAST очень подходит для обработки видео в реальном времени из-за его высокой скорости работы.

Детектор тестирования сегмента

Пиксели, используемые угловым детектором FAST

Угловой детектор FAST использует круг из 16 пикселей ( Круг Брезенхема радиуса 3), чтобы определить, действительно ли точка-кандидат p является углом. Каждый пиксель в круге помечен целым числом от 1 до 16 по часовой стрелке. Если набор из N смежных пикселей в круге все ярче, чем интенсивность пикселя-кандидата p (обозначается Iп) плюс пороговое значение t или все темнее, чем интенсивность пикселя-кандидата p минус пороговое значение t, тогда p классифицируется как угол. Условия можно записать как:

  • Условие 1: набор из N смежных пикселей S, , интенсивность x> Iп + порог, или
  • Условие 2: набор из N смежных пикселей S, ,

Таким образом, когда выполняется одно из двух условий, кандидата p можно классифицировать как угол. Существует компромисс между выбором N, количества смежных пикселей и порогового значения t. С одной стороны, количество обнаруженных угловых точек не должно быть слишком большим, с другой стороны, высокая производительность не должна достигаться за счет снижения вычислительной эффективности. Без улучшения машинное обучение, N обычно выбирают равным 12. Для исключения неугловых точек можно применить метод высокоскоростного испытания.

Скоростной тест

Высокоскоростной тест для отбраковки неугловых точек проводится путем изучения 4 примерных пикселей, а именно пикселей 1, 9, 5 и 13. Поскольку должно быть не менее 12 смежных пикселей, которые все ярче или темнее, чем предполагаемый угол, поэтому должно быть не менее 3 пикселей из этих 4 пикселей примера, которые все ярче или темнее, чем угол кандидата. Сначала исследуются пиксели 1 и 9, если оба I1 и я9 находятся внутри [яп - т, яп + t], то кандидат p не является углом. В противном случае пиксели 5 и 13 дополнительно исследуются, чтобы убедиться, что три из них ярче, чем I.п + т или темнее, чем яп - т. Если существует 3 из них, более ярких или темных, остальные пиксели затем исследуются для окончательного вывода. И, по словам изобретателя в своей первой статье,[2] в среднем для проверки углового пикселя-кандидата требуется 3,8 пикселя. По сравнению с 8,5 пикселями для каждого угла кандидата, 3,8 - действительно большое сокращение, которое может значительно улучшить производительность.

Однако у этого метода тестирования есть несколько недостатков:

  1. Высокоскоростной тест не может быть хорошо обобщен для N <12. Если N <12, возможно, что кандидат p является углом, и только 2 из 4 тестовых пикселей будут ярче Iп + т или темнее, чем яп - т.
  2. Эффективность детектора зависит от выбора и порядка этих выбранных тестовых пикселей. Однако маловероятно, что выбранные пиксели являются оптимальными из-за проблем с распределением углов.
  3. Обнаружены несколько объектов рядом друг с другом

Улучшение с помощью машинного обучения

Чтобы устранить первые два слабых места высокоскоростного теста, машинное обучение вводится подход, помогающий улучшить алгоритм обнаружения. Этот машинное обучение подход работает в два этапа. Во-первых, обнаружение угла с заданным N обрабатывается на наборе обучающих изображений, которые предпочтительно из области целевого приложения. Углы обнаруживаются с помощью простейшей реализации, которая буквально извлекает кольцо из 16 пикселей и сравнивает значения интенсивности с соответствующим порогом.

Для кандидата p каждое положение на окружности x ∈ {1, 2, 3, ..., 16} можно обозначить как p → x. Состояние каждого пикселя, Sр → х должен находиться в одном из следующих трех состояний:

  • д, яр → х ≤ яп - т (темнее)
  • с, яп - t ≤ Iр → х ≤ яп + t (аналогично)
  • б, яр → х≥ яп + t (ярче)

Затем, выбирая x (одинаковое для всех p), разбивает P (набор всех пикселей всех обучающих изображений) на 3 разных подмножества, Pd, Пs, Пб куда:

  • пd = {p ∈ P: Sр → х = d}
  • пs = {p ∈ P: Sр → х = s}
  • пб = {p ∈ P: Sр → х = b}

Во-вторых, Древо решений алгоритм, Алгоритм ID3 применяется к 16 точкам для достижения максимального получение информации. Пусть Kп быть логической переменной, которая указывает, является ли p углом, тогда энтропия из Kп используется для измерения информации о том, что p является углом. Для набора пикселей Q общая энтропия из KQ (не нормализовано):

  • H (Q) = (c + n) журнал2(c + n) - засорять2c - nlog2п
    • где c = | {i ∈ Q: Kя верно} | (количество углов)
    • где n = | {i ∈ Q: Kя ложно} | (количество не углов)

В получение информации затем можно представить как:

  • ЧАСграмм= H (P) - H (Pб) - H (Ps) - H (Pd)

К каждому подмножеству применяется рекурсивный процесс, чтобы выбрать каждый x, который может максимизировать получение информации. Например, сначала выбирается x, чтобы разбить P на Pd, Пs, Пб с наибольшим количеством информации; то для каждого подмножества Pd, Пs, Пб, другой y выбирается для получения наибольшего информационного выигрыша (обратите внимание, что y может быть таким же, как x). Этот рекурсивный процесс заканчивается, когда энтропия равна нулю, так что либо все пиксели в этом подмножестве являются углами, либо неуглами.

Это сгенерировало Древо решений затем можно преобразовать в программный код, такой как C и C ++, который представляет собой просто набор вложенных операторов if-else. В целях оптимизации профильная оптимизация используется для компиляции кода. Собранный код позже используется в качестве детектора углов для других изображений.

Обратите внимание, что углы, обнаруженные с помощью этого Древо решений алгоритм должен немного отличаться от результатов с использованием сегментного тестового детектора. Это связано с тем, что эта модель дерева решений зависит от обучающих данных, которые не могут охватить все возможные углы.

Не максимальное подавление

"Поскольку сегментный тест не вычисляет функцию отклика угла, не максимальное подавление не может быть применен непосредственно к результирующим элементам ». Однако, если N фиксировано, для каждого пикселя p сила угла определяется как максимальное значение t, которое делает угол p углом. Таким образом, можно использовать два подхода:

  • А алгоритм двоичного поиска может применяться для нахождения наибольшего t, для которого p все еще является углом. Таким образом, каждый раз для алгоритма дерева решений устанавливается другое t. Когда ему удается найти наибольшее t, это t можно рассматривать как силу угла.
  • Другой подход - это итерационная схема, где каждый раз t увеличивается до наименьшего значения, которое проходит проверку.

FAST-ER: повышенная повторяемость

Извещатель FAST-ER представляет собой усовершенствованный извещатель FAST с использованием метаэвристический алгоритм, в данном случае имитация отжига. Чтобы после оптимизации структура дерева решений была оптимизирована и подходила для точек с высокой повторяемостью. Однако, поскольку имитация отжига - это метаэврический алгоритм, каждый раз алгоритм генерирует новое оптимизированное дерево решений. Поэтому лучше провести эффективно большое количество итераций, чтобы найти решение, близкое к реальному оптимальному. По словам Ростена, для оптимизации детектора FAST требуется около 200 часов на Pentium 4 на частоте 3 ГГц, что составляет 100 повторений 100 000 итераций.

Сравнение с другими детекторами

В исследовании Ростена[3] Детекторы FAST и FAST-ER оцениваются на нескольких различных наборах данных и сравниваются с Собака, Харрис, Харрис-Лаплас, Ши-Томази, и СЬЮЗЕН угловые детекторы.

Установки параметров для детекторов (кроме FAST) следующие:

ДетекторУстановка параметровЦенить
Собака
Шкалы на октаву3
Начальное размытие σ0.8
Октавы4
СЬЮЗЕНПорог расстояния4.0
Харрис, Ши-ТомазиРазмытие σ2.5
Харрис-ЛапласНачальное размытие σ0.8
Харрис размытие3
Октавы4
Шкалы на октаву10
Общие параметрыε5 пикселей
  • Результат теста повторяемости представлен как усредненная площадь под кривыми повторяемости для 0-2000 углов на кадр по всем наборам данных (кроме аддитивного шума):
ДетекторА
БЫСТРЕЕ1313.6
БЫСТРО-91304.57
СОБАКА1275.59
Ши и Томази1219.08
Харрис1195.2
Харрис-Лаплас1153.13
БЫСТРО-121121.53
СЬЮЗЕН1116.79
Случайный271.73
  • Тесты скорости проводились на компьютере Pentium 4-D с тактовой частотой 3,0 ГГц. Набор данных делится на обучающий набор и тестовый набор. Учебный набор состоит из 101 монохромный изображения с разрешением 992 × 668 пикселей. Тестовый набор состоит из 4968 кадров монохромный 352 × 288 видео. И вот результат:
ДетекторСкорость пикселей обучающего набораСкорость пикселей тестового набора
БЫСТРО n = 9188179
БЫСТРО n = 12158154
Исходный FAST n = 127982.2
БЫСТРЕЕ75.467.5
СЬЮЗЕН12.313.6
Харрис8.057.90
Ши-Томази6.506.50
Собака4.725.10

Рекомендации

  1. ^ Ростен, Эдвард; Драммонд, Том (2006). «Машинное обучение для высокоскоростного обнаружения углов». Компьютерное зрение - ECCV 2006. Конспект лекций по информатике. 3951. С. 430–443. Дои:10.1007/11744023_34. ISBN 978-3-540-33832-1. S2CID 1388140.
  2. ^ Эдвард Ростен, Аннотации к видео в реальном времени для дополненной реальности
  3. ^ Эдвард Ростен, БЫСТРЕЕ и лучше: подход машинного обучения к обнаружению углов

Библиография

  • Ростен, Эдвард; Рид Портер; Том Драммонд (2010). «БЫСТРЕЕ и лучше: подход машинного обучения к обнаружению углов». IEEE Transactions по анализу шаблонов и машинному анализу. 32 (1): 105–119. arXiv:0810.2434. Дои:10.1109 / TPAMI.2008.275. PMID 19926902.

внешняя ссылка