Крестинин И., Середин О.

advertisement
112
АЛГОРИТМЫ НА ОСНОВЕ ОСОБЫХ ТОЧЕК В ЗАДАЧАХ
ЛОКАЛИЗАЦИИ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ 1
И. А. Крестинин2, О. С. Середин2
2
Тульский государственный университет, 300600, Тула, пр. Ленина, 92, РФ
ivan@crown-s-soft.com, oseredin@yandex.ru
В статье рассматриваются общие подходы к решению задачи локализации
изображения произвольных графических объектов при наличии преобразований
поворота и изменения масштаба. Предлагается способ локализации,
использующий информацию о характерных особенностях искомого объекта.
Методика заключается в выделении центров каких-либо локальных особенностей
изображения, восстановлении соответствий между локальными особенностями
искомого объекта и вычислении параметров преобразования координат.
Приводится обзор возможных реализаций каждого из этих этапов.
Введение
Наиболее популярный сегодня подход к
решению задач локализации – это
использование скользящих окон [1,3]. В
этом случае, как правило, возникают
сложности с выбором размера окна, т.е.
определении
масштаба
локализуемых
объектов. Также трудности возникают при
поиске
повернутых
на
некоторый
неизвестный
угол
объектов.
Для
разрешения
этих
проблем
часто
используют несколько окон различного
размера [4], сравнение содержимого с
несколькими изображениями, на каждом из
которых объект повернут на различные
углы.
Однако
вычислительная
сложность
исходного алгоритма при этом возрастает
настолько, что, как правило, приходится
отказываться либо от поиска повернутых
объектов, а часто также и от определения
масштаба.
В статье будет рассмотрена группа
алгоритмов локализации, использующая
понятие особых точек для решения задач
локализации
повернутых
и
масштабированных графических объектов.
Пусть имеется множество цветов C , а
также некоторое подмножество двумерного
пространства
на
котором
P  R2
определена функция цвета f : P  C .
Тогда
под
термином
"графическое
изображение" будем понимать любую
упорядоченную
тройку
  f , P, C .
Множество всех возможных графических
изображений будем обозначать Ω . Введем
понятие преобразования изображения, как
функции   t 0  , определенной как
отображение T : Ω  Ω .
Рассмотрим преобразования изображений,
называемые аффинными:
Ta 11 , 12 , 13 ,  21 ,  22 ,  23  :
f  x, y  
(1)
 f 0 11 x  12 y  13 ,  21 x   22 y   23  .
Их удобно описывать так называемой
матрицей аффинного преобразования с
использованием однородных координат:
 11 12 13 


A    21  22  23  ,
 0
0
1 

(2)
1. Базовый алгоритм локализации на
основе особых точек
______________________________________________________________________
1
Работа выполнена при поддержке грантов РФФИ №№ 05-01-00679, 06-01-08042, 06-01-00412, 06-07-89249.
113
Ta  A : f  z   f0  A  z  ,
 x
 
z   y.
1
 
Отметим,
что
области
определения
функций f и f 0 , а также множества цветов
могут не позволять напрямую использовать
вышеописанные
преобразования.
Например, когда функция цвета определена
на узлах решетки (растровое изображение),
то ясно, что узлы, на которых определено
результирующее изображение, не обязаны
совпадать с узлами решетки, получаемой в
результате преобразования координат. В
таких случаях используют различные
интерполяционные процедуры.
Пусть к некоторому изображению 0
применена
последовательность
преобразований:
  T Ta  A, 0   .
применения аффинного преобразования
координат и некоторого преобразования
цветов пикселей.
При
осуществлении
различных
преобразований координат изображение,
как правило, не меняется по своему
содержанию.
Следовательно,
если
выделить на изображении некоторые
объекты,
то
при
преобразованиях
координат эти объекты сохранят свое
взаимное расположение. Если известны
координаты центров хотя бы 3-х объектов
на искомом изображении и координаты
центров этих же объектов на базовом
изображении, то можно легко восстановить
параметры преобразования координат,
используя которое можно отобразить одно
изображение на другое (рисунок 1).
(3)
Будем понимать под задачей локализации
задачу нахождения преобразования A по
имеющимся изображениям  (искомое
изображение) и 0 (базовое изображение).
Ясно, что в случае, если ничего не известно
о преобразовании T , то решить эту задачу
не представляется возможным. Потому
обычно считается, что известен хотя бы
приблизительный
вид
этого
преобразования.
Можно
потребовать,
чтобы это преобразование удовлетворяло
следующим требованиям: преобразование
T не изменяет области определения
функции цвета; значение функции яркости
преобразованного изображения зависят
лишь от значений функции яркости в
некоторой
локальной
окрестности
соответствующей координаты на исходном
изображении.
Этим
ограничениям
удовлетворяют, такие часто применяемые
на практике преобразования, как изменение
яркости
изображения,
контрастности,
гаммы, фильтры подавления шума, и
многие другие виды преобразований.
Можно
отметить,
что
большинство
встречающихся
на
практике
преобразований могут быть представлены в
виде (3), т.е. в виде последовательного
Рис. 1. Восстановление параметров преобразования
координат. Слева базовое изображение, справа –
искомое
Таким образом, алгоритм локализации на
основе особых точек выглядит следующим
образом:
 на искомом и на базовом изображениях
выделяются
множества
некоторых
объектов (их центры – особые точки);
 находятся соответствия трех или более
особых точек искомого изображения
особым точкам базового изображения;
 вычисляются
параметры
преобразования координат.
2. Выделение множеств объектов.
Особые точки
Ясно, что для практического решения
проблемы выделения объектов необходимо
выбрать такое множество объектов, для
которого бы существовали эффективные
процедуры
их
нахождения
на
произвольном изображении. Потому в
114
качестве объектов часто используют
локальные экстремумы функции яркости,
функций составляющих цвета, локальные
экстремумы градиента функции яркости и
т.д. Центры таких объектов называют
особыми точками.
Главное свойство, которому должны
удовлетворять особые точки – они должны
сохранять свое взаимное расположение при
всех
допустимых
преобразованиях
изображений T .
Очевидно, что, например, взаимное
расположение локальных экстремумов
функции яркости будет сохраняться и при
таких операциях как увеличение масштаба,
поворот, зеркалирование, не слишком
сильное изменение яркости, контраста,
гаммы. Однако, достаточно проблемными
остаются такие операции, как: уменьшение
масштаба (т. к. очевидно, что при этом две
особых точки могут слиться в одну),
наложение шума (т. к. это может привести
к появлению ложных особых точек).
базовом изображении им соответствуют
точки:  xi0 , yi0  , такие, что они не лежат
на одной прямой. Составим из этих точек
матрицы следующего вида:
U
0


 x1 x2

U   y1 y2
1
1


... xn0 

... yn0  ,
... 1 
... xn 

... yn  .
... 1 
Aˆ  arg min U   A U 0 ,
AR6
(7)
где под символом
понимается сумма
квадратов элементов матрицы:
M 
rows  M  cols  M 
 
i 1
j 1
M ij2 .
(8)
Для случая n  3 :

1
, U 0  0.
(9)
Отметим, что решение задачи (7) для n  3
также может быть найдено аналитически,
но трудоемкость его нахождения растет с
n , потому для высоких n может
потребоваться решение уже численными
процедурами, что намного повышает
вычислительную сложность задачи в
целом, что часто крайне нежелательно.
4. Восстановление соответствий между
особыми точками
(4)
В случае идеальных изображений, к
которым было применено исключительно
преобразование координат, определяемое
матрицей аффинного преобразования A ,
выполняется равенство:
U   A  U 0 .
(6)
В таком случае аффинное преобразование
можно
искать
как
решение
оптимизационной задачи:

Выберем на искомом изображении n  3
особых точек:  xi , yi  i  1... n , пусть на
x20
y20
1
U   A U 0 .
A  U   U 0
3. Нахождение параметров
преобразований
 x10

  y10
1

Однако на практике из-за ошибок
вносимых,
например,
дискретностью
решетки
растровых
изображений,
неточностью
определения
координат
особых точек и т. д. равенство (5)
выполняется лишь приближенно:
(5)
Выделив на изображениях некоторые
множества объектов и определив их
центры, необходимо найти соответствие
особых точек базового изображения
особым точкам искомого изображения.
Существует несколько путей решения этой
задачи рассмотрим их более подробно.
4.1 Классификация особых точек
В некоторых случаях удается отнести
каждый из объектов выделенный на
изображении к отдельному классу. Так,
115
например, объекты, выделенные на
изображениях рисунка 2 можно отнести к
классам "нос самолета", "правое крыло
самолета", "левое крыло самолета". Если
каждый из объектов изображения имеет
уникальный класс, то легко сопоставить
объекты базового и искомого изображений.
Однако на практике крайне редко удается
назначить каждому объекту уникальный
класс, что является главным недостатком
данного метода.
4.2 Перебор возможных соответствий
Этот подход заключается в переборе
возможных соответствий n -ок особых
точек искомого изображения n -кам особых
точек базового изображения с оцениванием
степени успеха такого сопоставления при
помощи какого-либо критерия q U  , U 0  .
Например, для случая n  3 в большинстве
случаев нам не удастся найти ни одного
соответствия n -ок особых точек, которое
бы полностью удовлетворяло равенству (5)
потому в качестве критерия можно выбрать
степень расхождения решения с этим
равенством:


q U  , U 0  U   A U 0 .
(10)
Однако, как уже говорилось ранее
использование n  3 крайне нежелательно
из-за роста сложности решения задачи (7),
поэтому можно использовать следующий
подход: после того, как по некоторой паре
n -ок особых точек получены параметры
преобразования координат попытаться
проверить
другие
точки
искомого
изображения на степень соответствия
точкам базового изображения. Еще одним
подходом может быть использование уже
самих изображений, можно найти по
некоторой паре n -ок особых точек
параметры
отображения
искомого
изображения на базовое, после этого
вырезать из обоих изображений области,
которые согласно этому отображению
перекрываются и сравнить полученные
области каким-либо алгоритмом сравнения
изображений. Как продолжение этого
подхода можно предложить осуществлять
не сравнение вырезанного фрагмента с
искомым, а распознавание его содержимого
каким-либо классификатором.
Как общий недостаток можно отметить
крайне
большое
множество
таких
соответствий, его размерность составляет
N

 N0

n
, где N и N0 – число особых
точек на искомом и базовом изображении
соответственно, так, например, при
локализации объекта типа самолет даже на
относительно простом изображении мы
получаем порядка 7 млн. соответствий
(рисунок
2,
отмечены
фрагменты
соответствующие
20-ти
"наилучшим"
соответствиям).
Рис. 2. Двадцать "наилучших" фрагментов при
решении задачи локализации изображения самолета
4.3 Комплексные методы
Отнести каждую из особых точек
изображения
к
отдельному
классу
затруднительно, однако можно попытаться
ввести небольшое количество классов, и
использовать
перебор
возможных
соответствий лишь для объектов попавших
в один класс. Такой подход может
существенно
сократить
количество
вычислительных ресурсов необходимых
для решения задачи по сравнению с
подходом,
основанным
на
простом
переборе. Описание подобного подхода
можно найти, например, в статье [2].
Так, например, в случае использования в
качестве особых точек центров локальных
экстремумов функции яркости, можно
отнести к одному классу минимумы этой
функции, а к другому максимумы.
116
Заключение
Алгоритмы, использующие понятие особых
точек могут быть применены для решения
широкого круга задач связанных с
локализацией изображений. Они могут
давать значительно лучшие результаты в
случае
наличия
масштабных
преобразований и поворотов изображений
по
сравнению
с
алгоритмами,
построенными по принципу скользящего
окна.
Использование
для
восстановления
соответствий алгоритмов основывающихся
на
переборе
выглядит
наиболее
перспективным, однако, их вычислительная
сложность достаточно велика, впрочем
здесь
возможно
использование
дополнительной
эмпирической
информации для снижения перебора.
Литература
1. A. Torralba, K. Murphy, and W. Freeman.
Contextual models for object detection using
boosted random fields. In Advances in Neural Info.
Proc. Systems, 2004.
2. Ratan A. L., Grimson W., Wells W.M. Object
detection and localization by dynamic template
warping// Int. Journal of Computer Vision.- 2000.Vol.36.- No.2.- P.131-147.
3. Костин, Д. Киттлер Метод опорных векторов для
быстрого поиска лиц и координат глаз на
изображении. 6-я международная конференция
"Распознавание образов и анализ изображений:
новые информационные технологии" (РОАИ-62002). Великий Новгород, 21-26 окт. 2002 г.: Тр.
конф.: В 2 т. НовГУ им. Ярослава Мудрого.
Великий Новгород, 2002. - Т. 2. 316-320 с.
4. K. Murphy, A. Torralba, D. Eaton, W. T. Freeman,
Object detection and localization using local and
global features Lecture Notes in Computer Science.
Sicily workshop on object recognition, 2005.А.
Download