Научная статья на тему 'Обнаружение руки в режиме реального времени в видеопотоке с помощью признаков Хаара и AdaBoost-классификатора'

Обнаружение руки в режиме реального времени в видеопотоке с помощью признаков Хаара и AdaBoost-классификатора Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
129
22
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОБНАРУЖЕНИЕ РУКИ / ПРИЗНАКИ ХААРА / ADABOOST

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Нгуен Тоан Тханг

Приведен обзор методов обнаружения положения руки на изображении. Предлагается способ обнаружения руки в реальном времени в видеопотоке на основе признаков Хаара и AdaBoost-классификатора. Анализируются результаты работы программной реализации предложенного способа.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Нгуен Тоан Тханг

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Обнаружение руки в режиме реального времени в видеопотоке с помощью признаков Хаара и AdaBoost-классификатора»

ОБНАРУЖЕНИЕ РУКИ В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ В ВИДЕОПОТОКЕ С ПОМОЩЬЮ ПРИЗНАКОВ ХААРА И АБАБ008Т-КЛАССИФИКАТОРА

Т. Т. Нгуен

Институт кибернетики Национального исследовательского Томского политехнического университета, 634034, Томск, Россия

УДК 004.931

Приведен обзор методов обнаружения положения руки на изображении. Предлагается способ обнаружения руки в реальном времени в видеопотоке на основе признаков Хаара и AdaBoost-класси-фикатора. Анализируются результаты работы программной реализации предложенного способа.

Ключевые слова: обнаружение руки, признаки Хаара, AdaBoost.

This paper presents a short review of the hand detecting methods in images. The paper also provides an implementation of the object detecting method based on Haar-like features and AdaBoost for the realtime hand detection task in video sequences. The discussion on the effectiveness of the algorithm and the program realization is included.

Key words: Hand detection, Haar-like features, AdaBoost.

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

Методы обнаружения руки на изображении. Существуют различные методы обнаружения руки на изображении. Эти методы можно разделить на две группы: методы на основе внешнего вида руки (Vision-based approach) и методы на основе 3Б-модели руки (3D hand model based approach) [1]. В методах на основе внешнего вида руки при моделировании используются двумерные параметры изображения, которые сравниваются с такими же параметрами, выделенными из входного изображения. В методах на основе 3D-модели применяются кинематические 3D-модели руки, с помощью которых можно оценить параметры руки, сравнивая их с двумерными проекциями этих 3D-моделей. В методах первого типа используются такие при-

а

б

Признаки края

шнФФ

(а) <Ъ) (с)

(Л)

Признаки центра 0 *

(а) <Ъ)

Признаки линии

ЕЮ

в В

(а) (Ь) (с) «1) (е) (О <В) (Ъ)

Рис. 1. Примеры признаков Хаара: а - множество простых признаков; б - множество расширенных признаков

знаки, как цвет кожи [2-4], образы руки [5, 6], локальные признаки [7, 8], оптический поток [9, 10].

Каждый метод имеет преимущества и недостатки. Методы на основе цвета кожи имеют высокую скорость выполнения и могут работать в реальном времени, но при этом зависят от изменения освещения или не позволяют отличить руку от вещей, цвет которых подобен цвету кожи. Методы с использованием образов руки и локальных признаков работают так же быстро, но на сложном фоне не обеспечивают точное обнаружение. Оптический поток позволяет обнаружить только движущиеся объекты. Методы на основе ЭБ-моделей обеспечивают большую степень свободы (можно обнаруживать и одновременно распознавать различные формы руки), но требуют большого объема вычислений и наличия обширной базы данных, включающей все позы руки.

В настоящее время метод Джонса - Виолы с использованием признаков Хаара и АёаВоов1;-классификатора для обнаружения человеческих лиц предлагает один из лучших алгоритмов для решения таких задач. В данной работе метод Джонса - Виолы используется для решения задачи обнаружения руки в реальном времени.

Метод обнаружения руки на изображении на основе признаков Хаара и AdaBoost-классификатора (метод Джонса - Виолы). Метод Джонса - Виолы был разработан для решения задачи обнаружения человеческих лиц на изображении. Главное преимущество этого метода состоит в высокой скорости его выполнения. В [11] показано, что метод Джонса Виолы может обрабатывать до 15 кадр/с, т. е. позволяет работать в реальном времени. В данной работе метод Джонса - Виолы применяется для обнаружения руки и отслеживания ее положения в видеопоследовательности.

Признаки Хаара. Значение признаков Хаара вычисляется по формуле [11]

/ (х) = £/-£/,

где / - интенсивность пикселей; - все пиксели в области черного прямоугольника; $2 - все пиксели в области белого прямоугольника. На рис. 1 показаны простые и расширенные признаки Хаара, используемые в данной работе.

Интегральное изображение. Использование интегрального изображения позволяет быстро вычислить значения признаков Хаара независимо от размера изображения. Интегральное изобра-

а

б

А Рх В Р2

С

Рз Р4

Рис. 2. Понятие интегрального изображения: а - интегральное изображение в точке р(х,у); б - вычисление суммы пикселей внутри прямоугольника

жение Р в точке р(х,у) вычисляется как сумма интенсивностей всех точек, находящихся выше и левее нее (рис. 2,а) [11]:

Р(х, у) = £ I(х', у').

х '< х, у '< у

Таким образом, сумма пикселей внутри прямоугольника Б (см. рис. 2,б) может быть вычислена в виде Р4 + Р1 - Р2 - Р3 и не зависит от размера изображения.

AdaBoost-классификатор. Видеопоток, получаемый с помощью видеокамеры, представляет собой последовательность кадров. Для каждого кадра вычисляется его интегральное изображение. Затем кадр сканируется окном малого размера (субокном), содержащим признаки Хаара. Для каждого ]-го признака соответствующий классификатор определяется формулой [11]

^ х) =

1 Ру/у (х) < Р,0,,

ГУ

0,

где х - субокно; в, - пороговое значение; ру - направление знака неравенства; / - признак Хаара.

ЛёаВоо81;-алгоритм позволяет повысить точность классификации с помощью ряда слабых классификаторов, используя так называемую каскадную классификацию (рис. 3). В результате вычисляется взвешенная комбинация этих слабых классификаторов:

Н (х) =

N - количество слабых классификаторов; а - коэффициент, полученный из тренируемой базы данных; Ь - слабый классификатор).

Рис. 3. Каскадная классификация в алгоритме AdaBoost

I=1

Рис. 4. Часть базы позитивных изображений с объектом

Рис. 5. Часть базы негативных изображений без объекта

Программная реализация и обсуждение результатов. В данной программной реализации создана база изображений для тренировки Ada-Boost-классификатора, содержащая 400 изображений с объектом (рука) (рис. 4) и 500 случайных изображений без объекта (негативные изображения) (рис. 5). Разработан 14-ступенчатый каскадный классификатор для распознавания руки. Для тестирования использовалась база изображений, содержащая 100 изображений размером 640x480 с объектом.

В результате численных экспериментов установлено, что обработка каждого изображения из тестовой выборки выполняется за 50-60 мс (рис. 6). Объект правильно обнаруживается на 99 изображениях из 100.

При работе в реальном времени видеопоток получается с помощью встроенной камеры ноутбука Asus с частотой 15 кадр/с. Размер кадра -640x480 пикселей. Программа протестирована на ноутбуке Asus с процессором Intel Core Duo 2, видеокартой NVIDIA GEFORCE G621M. Скорость обработки в реальном времени составляет приблизительно 14-15 кадр/с, что является достаточным для отслеживания и распознавания движения объектов.

Выводы. Алгоритм Джонса - Виолы на основе признаков Хаара и AdaBoost позволяет решать задачу обнаружения руки с таким же быстродействием, как и задачу обнаружения человеческих лиц (для которой он первоначально предназначался). Скорость обработки на обычном компьютере достигает 14-15 кадр/с, что является достаточным для работы в режиме реального времени.

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

Рис. 6. Обнаружение руки в реальном времени

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

1. Zhou H., Huang T. S. Tracking articulated hand motion with Eigen dynamics analysis // Proc. of the Intern. conf. on computer vision, Nice (France), 14-16 Oct. 2003. Washington DC: IEEE Computer Soc., 2003. V. 2. P. 1102-1109.

2. Wu Y., Huang T. S. Non-stationary color tracking for vision-based human computer interaction // IEEE Trans. Neural Networks. 2002. V. 13, N 4. P. 948- 960.

3. Manresa C., Varona J., MAS R., Perales F. J. Hand tracking and gesture recognition for humancomputer interaction // Electron. Lett. Comput. Vision Image Anal. 2005. V. 5, N 3. P. 96-104.

4. Mckenna S., Morrison K. A comparison of skin history and trajectory-based representation schemes for the recognition of user-specific gestures // Pattern Recognition. 2004. V. 37. P. 999-1009.

5. Chen F., Fu C., Huang C. Hand gesture recognition using a real-time tracking method and hidden Markov models // Image Vision Comput. 2003. V. 21, N 8. P. 745-758.

6. Ng C. W., Ranganath S. Gesture recognition via pose classification // Proc. of the 15th Intern. conf. on pattern recognition, Barcelona (Spain), 3-7 Sept. 2000. Washington DC: IEEE Computer Soc., 2000. V. 3. P. 699-704.

7. Oka K., Sato Y., Koike H. Real-time fingertip tracking and gesture recognition // Proc. IEEE. Comput. Graphics Appl. 2002. V. 22, N 6. P. 64-71.

8. Huang C., Jeng S. A model-based hand gesture recognition system // Machine Vision Appl. 2001. V.12, N 5. P.243-258.

9. Cutler R., Turk M. View-based interpretation of real-time optical flow for gesture recognition // Proc. of the 3rd IEEE conf. on face and gesture recognition, Nara (Japan), 14-16 Apr. 1998. Washington DC: IEEE Computer Soc., 1998. P. 416-421.

10. Lu S., Metaxas D., Samaras D., Oliensis J. Using multiple cues for hand tracking and model refinement // Proc. of the IEEE conf. on computer vision and pattern recognition, Madison (USA), 16-22 June 2003. Washington DC: IEEE Computer Soc., 2003. P. 443-450.

11. Viola P., Jones M. Rapid object detection using a boosted cascade of simple features // Proc. of the IEEE conf. on computer vision and pattern recognition. Washington DC: IEEE Computer Soc., 2001. P.511-518.

Нгуен Тоан Тханг - асп. Института кибернетики Томского политехнического университета; тел. (382-2) 70-16-09; e-mail: thangngt.cntt@gmail.com

Дата поступления - 01.11.11

i Надоели баннеры? Вы всегда можете отключить рекламу.