Применение фильтрации в задаче распознавания узловых точек калибровочного шаблона

Вычислительные технологии

Том 19, № 4, 2014

Применение фильтрации в задаче распознавания узловых точек калибровочного шаблона*

С. В. Панин1,2, В. О. Чемезов1, П. С. Лювутин1,2 1 Институт физики прочности и материаловедения СО РАН, Томск, Россия 2Национальный исследовательский Томский политехнический университет, Россия

e-mail: svp@ispms.tsc.ru

Панин С.В., Чемезов В.О., Любутин П.С. Применение фильтрации в задаче распознавания узловых точек калибровочного шаблона // Вычислительные технологии. 2014. Т. 19, № 4. С. 61-68.

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

Ключевые слова: фильтрация, обработка изображений, распознавание, калибровка видеокамер.

Panin S.V., Chemezov V.O., Lyubutin P.S. Use of filtration in the problem of recognition of grid points in a calibration pattern // Computational Technologies. 2014. Vol. 19, No. 4. P. 61-68.

Most of algorithms in 3-D Computer Vision employ chessboard pattern recognition for camera calibration because of its simplicity. However, such algorithms often use low effective chessboard feature detection based on selection of threshold value or its range. In doing so, the robustness of grid points recognition and performance are decreased.

To increase the robustness, we propose to use statistical descriptors like mean, variance and skewness of the shape of the response function of local regions at the image, which contains feature points. Consequently, one can decrease the number of false "grid points" that should be analyzed at the chessboard's image.

Full algorithm consists of the traditional Harris detection (detector) followed by additional filtration, which uses above mentioned statistical descriptors in small regions centered at local maximums. Then all recognized grid points are to be analyzed with a higher rate to find out ones that really belong to the chessboard (because that approach has less error value).

The obtained experimental results show that the offered algorithm with the introduced additional filtration procedure leads to better performance compared with the recently available algorithms. The robustness was increased up to 85 % at the expense of a minor 15 % increase of the computational time.

Keywords: filtration, image processing, recognition, camera calibration.

* Работа выполнена при поддержке проекта СО РАН № III.23.1.3, РФФИ (грант № 13-07-00009) и гранта Президента РФ № СП-816.2012.5.

Введение

Одной из наиболее сложных областей машинного зрения является стереозрение. В этом случае информация об объекте поступает по двум или более видеоканалам и позволяет восстанавливать форму, размер и расстояние до объекта, имитируя при двух каналах бинокулярное зрение человека. Основная проблема стереозрения — настройка оптической системы, в частности калибровка камер, от результатов которой зависит точность восстанавливаемой трёхмерной информации.

При недостатке априорной информации о расположении и внутренних характеристиках камер, входящих в оптическую систему, главной задачей при проведении калибровки данных камер становится получение их внешних и внутренних характеристик [1]. Эта задача напрямую зависит от точности обнаружения устойчивых характеристик (атрибутов) калибровочного шаблона, которые мало подвержены изменениям и легко выделяются на нём. Часто в качестве такого шаблона используют шахматную доску (ШД), на изображении которой точки пересечения клеток (узлов ШД) могут быть устойчиво выделены.

Известные на сегодня методы поиска узлов ШД либо требуют участия оператора для введения априорной информации об обрабатываемом изображении, либо имеют недостаточную точность локализации. Участие оператора в определении положения узлов неприемлемо для автоматизированных систем, а неверно найденные узловые точки могут привести к некорректным результатам работы алгоритмов восстановления 3В-профиля объекта.

В работах [2, 3] было отмечено, что вопросам разработки алгоритмов выделения атрибутов уделяется недостаточно внимания, в то время как появляется все больше алгоритмов, использующих их в качестве входных данных. Традиционный подход, реализуемый в такого рода алгоритмах, основан на вычислении сумм или разностей цветовых характеристик (яркости) в пределах малой области вокруг каждого пиксела на изображении. Наиболее часто встречающимся решением является использование детектора углов Харриса и Стефенса [4], в основе которого лежит оценка отклика Я, рассчитанного для малой области изображения по формуле

где I — яркость изображения, и, V — координаты текущего пиксела, х, у — смещение относительно текущего пиксела внутри анализируемой области малого размера, и)(х, у) — весовая функция.

С целью увеличения точности и быстродействия выделения узлов ШД в работе [5] предложено анализировать сумму нескольких откликов, рассчитанную следующим образом:

X у

3

Б Я (и^) = ^ | (1п + 1п+8) - (1п+4 + 1п+12)|,

п=0

7

БЯ = £ 11п - 1п+81,

п=0

15

££/

п

И Я

5

16

Я (и, V) = Б Я (и, V) - Б Я (и, V) - И Я (и, V),

где х, у = -1, 1, п — порядковый номер пиксела, связанный с его местонахождением в окрестности в виде окружности из 16 точек, расположенных на примерно одинаковом удалении от пиксела. Этот алгоритм позволяет учесть характерные особенности узла ШД на изображении (например, контрастные границы клеток). Существует и другой подход к решению данной задачи, который состоит в расчёте взаимной корреляционной функции для заданного шаблона и фрагмента изображения, содержащего узел ШД, с последующим поиском его экстремумов.

При поиске узловых точек с помощью одного из вышеперечисленных или подобных методов основным фактором, лимитирующим помехоустойчивость, является большое число ложных срабатываний (пикселов, значение отклика для которых соизмеримо с величиной отклика, характерной для узлов ШД), обусловленных использованием упрощённой схемы анализа (вследствие минимального объёма вычислений) и исключением из рассмотрения промежуточных результатов. Независимо от применяемого метода промежуточным результатом при поиске узловых точек будет двумерная функция отклика с выраженными экстремумами, вычисленная для каждого пиксела исходного изображения. Далее, с целью выбора кандидатов в узловые точки можно анализировать как функцию отклика на наличие локальных экстремумов, так и свойства фрагмента изображения в окрестности таких экстремумов (области, потенциально содержащей кандидата).

В настоящей работе предложен метод фильтрации, позволяющий повысить помехоустойчивость выделения узлов ШД из множества кандидатов. Для определения кандидатов в узловые точки использовался представленный выше алгоритм [5].

1. Описание алгоритма

Базовый алгоритм выделения узлов ШД [5] можно разделить на следующие процедуры:

— расчёт функции отклика для всего исходного изображения;

— первичная фильтрация узлов ШД в областях, не содержащих в явном виде узлов

— основная фильтрация узлов ШД в областях, содержащих кандидатов.

Атрибуты, используемые для расчёта функции отклика в базовом алгоритме выделения узловых точек, позволяют учесть наибольшее количество ситуаций, способных вызвать ложное детектирование. Таким образом, ещё до применения процедуры основной фильтрации основные экстремумы функции отклика будут соответствовать лишь тем областям, которые с высокой вероятностью содержат кандидатов в узлы ШД. Существует множество алгоритмов фильтрации кандидатов, в том числе основанных на оценке только "простых" свойств, таких как наличие экстремума либо принадлежность значения функции отклика заданному интервалу. На рис. 1 приведена схема фильтрации, используемой в предлагаемом алгоритме. Цель применения дополнительной филь-

ШД;

Рис. 1. Схема предложенного алгоритма фильтрации кандидатов

а б в г

Рис. 2. Характерные формы функции отклика вблизи узла ШД: а — фрагмент исходного изображения; б — функция отклика вблизи узловой точки фрагмента исходного изображения; пример функции отклика в локальной области, содержащей (в) и не содержащей (г) узел ШД

трации (на основе расчёта статистических показателей) — исключить ложных кандидатов и тем самым увеличить помехоустойчивость обнаружения узловых точек.

Предлагаемая процедура дополнительной фильтрации основана на рассмотрении функции отклика для фрагмента изображения, содержащего кандидата (рис. 2, а, б), как распределения вероятности случайной величины. Было установлено, что такие локальные области имеют подобную структуру. При этом области, содержащие узловые точки, имеют выраженный максимум и при удалении от экстремума значение функции отклика убывает в соответствии с двумерным нормальным (гауссовым) распределением (рис. 2, в). С другой стороны, области, не содержащие узлов ШД, как правило, имеют распределения, соответствующие другим законам, и к тому же не обладают свойством симметрии (рис. 2, г). Для оценки формы функции распределения предложено использовать статистические показатели с последующим их анализом с применением описанного ниже критерия.

1.1. Расчёт статистических показателей

Для нахождения вида распределения функции отклика необходимо знать его математическое ожидание, дисперсию и коэффициент асимметрии. Предполагается, что значение функции отклика характеризует вероятность нахождения узловой точки в пикселе с данными координатами. В этом случае статистические показатели рассчитываются с использованием моментов случайных величин.

Рассмотрим три первых начальных и три первых центральных момента некоторой случайной величины X. Под к-м начальным моментом случайной величины Х, где к Е [1; 3], подразумевается величина ик = Е \хк], где Е [х] = ^ хр(х) — математиче-

X

ское ожидание дискретной случайной величины; к-м центральным моментом является величина Шк = Е |х — Е [х]|к [2]. При этом второй центральный момент определяет дисперсию распределения, а третий центральный момент — асимметрию распределения. Функция отклика также характеризуется случайным распределением и является двумерным массивом. Для упрощения будем проводить расчёт последовательно в горизонтальном и вертикальном направлениях.

1.2. Критерий отбора

Для окончательного выделения узлов ШД на всем изображении требуется, подобно базовому алгоритму, произвести выделение локальных экстремумов обобщённых коэффициентов асимметрии. Последние рассчитываются по формуле

М = + ш2з,

где М — обобщённый коэффициент асимметрии, ш^3 и ш«3 — значения коэффициентов горизонтальной и вертикальной асимметрии соответственно. Картина обобщённых коэффициентов асимметрии, приведённых в виде яркостей изображения, представлена на рис. 3, а. Видно, что локальные экстремумы на изображении соответствуют узлам ШД. В данном случае функция отклика имеет симметричную форму, если в экстремуме М ^ 0. Для уточнения местоположения экстремума функции отклика проводится рас-

Рис. 3. Результат обработки изображения с целью выделения узлов ШД: а — картина, обобщённых коэффициентов асимметрии; б — отобранные узловые точки

чёт отношения её дисперсий в вертикальном и горизонтальном направлениях, которое должно находиться в заданном интервале

Результат отбора точек, определяющих узлы ШД, представлен на рис. 3, б.

2. Методика эксперимента

2.1. Критерий оценки фильтрации

Чтобы оценить качество фильтрации кандидатов, необходимо использовать ряд критериев. Таких критериев может быть достаточно много, а их выбор в определённой степени произволен. Рассмотрим некоторые из них:

— помехоустойчивость определения улов ШД;

— точность определения координат узлов ШД;

— время выполнения операций фильтрации.

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

2.2. Тестовая выборка

Для проведения тестов были сформированы две серии изображений размером 640x480 пикселов, содержащие вращаемую в пространстве (преимущественно в плоскости изображения) шахматную доску:

1) последовательность из 20 изображений ШД, снятых на фотокамеру в лабораторных условиях;

2) тестовая последовательность из 20 изображений ШД, взятая из открытой библиотеки по видеообработке (ОрепСУ — https://github.com/Itseez/opencv/tree/master/ samples/cpp или http://opencv.org).

С использованием первой серии изображений произведены настройка и отладка алгоритма. Так эмпирическим методом были определены значения порогов для расчётов с помощью (7). Вторую серию изображений обрабатывали с применением полученных параметров, определенных для первой серии.

2.3. Методика тестирования

В рамках проведения тестов на помехоустойчивость определения узлов ШД сравнивались базовый и предложенный алгоритмы. Помехоустойчивость оценивалась по величине параметра с (среднее количество неверно определённых узлов ШД, %):

где Qt — число выделенных узловых точек, Qr — истинное число точек, N — количество изображений в серии.

При проведении теста на скорость в каждой из серий оценивали среднее время обработки изображений с помощью базового и предложенного алгоритмов. Критерием оценки является относительное изменение времени обработки одного изображения.

3. Результаты тестирования 3.1. Оценка достоверности

Исходные изображения для первой и второй серий представлены на рис. 4, а, г. Истинное количество узлов ШД равно 49 и 54 для первой и второй серии соответственно. Результаты работы базового и предложенного алгоритмов приведены на рис. 4, б, в, д, е и в табл. 1. На рисунках найденные точки выделены в виде светлых кружков.

Из рис. 4, б, д видно, что базовый алгоритм имеет ложные срабатывания на внешних клетках ШД; количество таких точек минимизируется при использовании представленного авторами алгоритма (рис. 4, в, е). Полученные результаты свидетельствуют об очевидной эффективности применения предложенного алгоритма с точки зрения помехоустойчивости выделения узлов ШД.

V»

Лпв

ГЛг

Ща №

Рис. 4. Результат обработки экспериментальных изображений: исходные изображения (а, г) выделение узлов ШД с помощью базового (б, д) и предложенного (в, е) алгоритмов

е

Таблица 1. Помехоустойчивость определения узлов шахматной доски

Алгоритм

Среднее количество найденных узлов

Первая серия

Вторая серия

в, %

Первая серия

Вторая серия

Среднеквадратичная ошибка

Первая серия

Вторая серия

Базовый

60

78

21.3

44.3

10.7

26.1

Предложенный

51

57

3.8

6.4

3.7

4.0

Таблица 2. Время выделения узлов шахматной доски рассматриваемыми алгоритмами

Алгоритм Среднее время обработки

одного изображения, мс

Базовый 179.5

Предложенный 205.35

3.2. Оценка вычислительных затрат

Среднее время обработки изображений для обеих серий указано в табл. 2. Видно, что предложенный алгоритм фильтрации увеличивает время обработки в среднем на 15 % (26 мс), что является вполне удовлетворительным результатом. Все измерения проводились с использованием компьютера на базе процессора AMD Phenom(tm) II X550 с тактовой частотой 3.1 ГГц и оперативной памятью 2 ГБ под управлением Windows 7.

Заключение

В работе предложен и протестирован алгоритм выделения узловых точек на изображениях, содержащих шаблон в виде шахматной доски. В основе алгоритма — анализ формы функции отклика и вычисление меры её близости к двумерному нормальному распределению. Результаты тестирования показали увеличение помехоустойчивости выделения узлов ШД (более чем в 5 раз) за счёт более детального анализа функции отклика. Представленный алгоритм, содержащий дополнительную фильтрацию, увеличивает время обработки данных не более чем на 15 %.

Предложенная процедура дополнительной фильтрации может быть применена не только в задаче выделения узлов ШД, но и для решения многих других задач, связанных с автоматической обработкой изображений, например, для поиска углов объектов либо для оценки цветовых переходов (перепадов яркости).

Список литературы

[1] Zhang Z. A flexible new technique for camera calibration // IEEE Trans. on Pattern Analysis and Machine Intelligence. 2000. Vol. 22, No. 11. P. 1330-1334.

[2] Soh L., Matas J., Kittler J. Robust recognition of calibration charts //VI Intern. Conf. on Image Proc. and its Appl. 1997. Ser. IPA '97. Vol. 2. P. 487-491.

Available: http://dx.doi.org/10.1049/cp:19970941

[3] de la Escalera A., Armingol J.M. Automatic chessboard detection for intrinsic and extrinsic camera parameter calibration // Sensors. 2010. Vol. 10, No. 3. P. 2027-2044. Available: http://www.mdpi.com/1424-8220/10/3/2027

[4] Harris C., Stephens M. A combined corner and edge detector // Proc. of The Fourth Alvey Vision Conf. 1988. Vol. 15. P. 147-151. http://www.bmva.org/bmvc/1988/avc-88-023.pdf

[5] Bennett S., Lasenby J. ChESS — quick and robust detection of chess-board features // Computer Vision and Image Understanding. 2014. Vol. 118. P. 197-210.

Available: http://www.sciencedirect.com/science/article/pii/S1077314213001999

Поступила в 'редакцию 4 февраля 2014 г., с доработки — 20 марта 2014 г.