Обнаружение инварианта точки зрения и распознавание простых 3D-объектов на изображении

У меня есть набор простых жестких 3D-объектов, которые я хочу обнаружить и распознать по изображению (скажем, от 5 до 10 классов). Объекты просты в том смысле, что они представляют собой цилиндры одного цвета или прямоугольники с простым узором (например, полосы) или какую-либо аналогичную простую форму. Объекты существенно отличаются друг от друга (например, нет двух классов, где один представляет собой большой цилиндр, а другой такой же, но меньший цилиндр). Поскольку текстуры довольно просты (сплошные тела и/или простые узоры), подход «мешок слов» не работает (они не содержат значительного количества уникальных ребер).

Хотя одним из возможных подходов является ручное кодирование каждого классификатора (ручное извлечение признаков и т. д.), существует ли простой подход, основанный на данных (например, классификатор Хаара/LBP), который будет работать? Если Хаар или LBP хороши для решения этой проблемы, как можно решить проблему неизвестной относительной точки зрения (и таким искажением перспективы, вращением и т. д.)? Сойдется ли просто предоставление положительных изображений со всех возможных точек зрения на объект или есть что-то еще, что обычно делается? Обнаружение и распознавание должны работать в режиме реального времени.


person Damjan Dakic    schedule 08.12.2014    source источник


Ответы (1)


Исходя из вашего описания вашей проблемы, я вижу несколько недостатков детектора на основе Хаара или LBP. Во-первых, эти функции не используют цвет, который кажется здесь важным. Во-вторых, классификатор, использующий функции Хаара или LBP, чувствителен к вращению в плоскости и вне плоскости. Если ваши объекты могут быть в любой 3D-ориентации, вам нужно будет дискретизировать диапазон 3D-вращений и обучить отдельный детектор для каждого из них. Например, для обнаружения лиц обычно используются два детектора: один для анфас и один для профильных лиц. Наконец, если не хватает текстуры для набора слов, может не хватить текстуры и для Хаара или LBP.

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

person Dima    schedule 08.12.2014
comment
Да, именно так я думал об управлении ориентацией для Haar/LBP. Что касается вашего последнего предложения, как бы вы подошли к части группировки? - person Damjan Dakic; 08.12.2014
comment
Это сложный вопрос. На эту тему есть много научных работ. Перцептивная группировка Google. Возможно, в вашем случае цвет был бы хорошей подсказкой. - person Dima; 09.12.2014