ДонНТУ   Портал магистров

Реферат по теме выпускной работы

Содержание

Введение

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

1. Актуальность темы

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

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

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

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

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

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

2. Цель и задачи исследования, планируемые результаты

Целью исследования является анализ и разработка существующих методов распознавания жестов с помощью камеры глубина, повышение их эффективности, а так же их реализация на платформе Microsoft Kinect.

Основные задачи исследования:

  1. Анализ методов распознавания жестов руки, основанных на камере глубины, и определение наиболее точного из них.
  2. Разработка модифицированных методов распознавания жестов.
  3. Реализация методов с использованием платформы Microsoft Kinect.
  4. Провести экспериментальные исследования характеристик методов.

Объект исследования: методы, алгоритмы и программы захвата, отслеживания и распознавания жестов человеческой руки.

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

3. Обзор исследований и разработок

Первый сенсор глубины появился лишь недавно (в 2010 г.), поэтому было проведено не много исследований в области распознавания жестов руки с использованием камеры глубины.

3.1 Обзор международных источников

Первый сенсор глубины выпустила компания Microsoft, первоначально представленный для консоли Xbox 360 в 2010 г., и позднее для персональных компьютеров под управлением ОС Windows в 2012 г. [1]. Существуют также и альтернативные сенсоры глубины: Xtion Pro [2], Leap Motion [3], DUO 3D [4], Intel Perceptual Computing [5].

Распознавание жестов руки касается 2 сложных проблем: определение руки и распознавание жеста (рис. 3.1).

Рисунок 3.1 - Схема распознавания жестов руки

Рисунок 3.1 - Схема распознавания жестов руки

Существуют различные методы обнаружения руки на изображении. Эти методы можно разделить на две группы: методы на основе внешнего вида руки (Vision-based approach) и методы на основе 3D-модели руки (3D hand model based approach). В методах на основе внешнего вида руки [6-19] при моделировании используются двумерные параметры изображения, которые сравниваются с такими же параметрами, выделенными из входного изображения. В методах на основе 3D-модели применяются кинематические 3D-модели руки, с помощью которых можно оценить параметры руки, сравнивая их с двумерными проекциями этих 3D-моделей. В методах первого типа используются такие признаки, как цвет кожи [12-14], образы руки [15,16], локальные признаки [11,17], оптический поток [18,19]. Каждый метод имеет преимущества и недостатки. Методы на основе цвета кожи имеют высокую скорость выполнения и могут работать в реальном времени, но при этом зависят от изменения освещения или не позволяют отличить руку от вещей, цвет которых подобен цвету кожи. Методы с использованием образов руки и локальных признаков работают так же быстро, но на сложном фоне не обеспечивают точное обнаружение. Оптический поток позволяет обнаружить только движущиеся объекты. Методы на основе 3D-моделей [20-26] обеспечивают большую степень свободы (можно обнаруживать и одновременно распознавать различные формы руки), но требуют большого объема вычислений и наличия обширной базы данных, включающей все позы руки.

Популярные методы для обнаружения руки: методы на основе фильтра Калмана [27,28], методы с использованием маркеров (перчаток) [29], методы использующие цвет кожи [30,31], методы использующие данные о глубине [42].

В работе [32] описан метод Джонса – Виолы с использованием признаков Хаара и AdaBoost классификатора для обнаружения руки. Главное преимущество этого метода состоит в высокой скорости его выполнения. В [33] показано, что метод Джонса Виолы может обрабатывать до 15 кадр/с, т.е. позволяет работать в реальном времени.

В [34,35] представлен метод, который синхронизирует виртуальную руку (рис. 3.2), собранную из примитивов, с реальной рукой. Виртуальная рука представленна 27 параметрами и задача состоит в подборе значений этих параметров так, что бы они наиболее точно характеризовали жест реальной руки. В основе лежит метод роя частиц (МРЧ) [36-38]. Программную реализацию можно скачать по адресу [45], там же есть и библиотека для не коммерческого использования. В [39] представлен этот же метод только для одновременного слежения за 2-мя руками.

Рисунок 3.2 - Виртуальная модель 3D руки

Рисунок 3.2 - Виртуальная модель 3D руки

В работе [40] для распознавания и слежения за рукой используется скрытая Марковская модель.

В [41] объединили 2 прибора для получения данных о руке, Kinect и специальный тактильный прибор, одеваемый на руку.

В [42] для определения жеста руки используется метод сходства контуров, а для определения 3D траектории используется машина конечных автоматов.

В работе [43] представлен метод Finger-Earth Mover’s Distance (FEMD) для распознавания жестов руки, метод предлагает представить данные о руке, полученные с камеры глубины, в виде кривой (рис. 3.3) и далее работать с кривой.

Рисунок 3.3 - Кривая метода Finger-Earth Mover’s Distance

Рисунок 3.3 - Кривая метода Finger-Earth Mover’s Distance

3.2 Обзор локальных источников

Для ДонНТУ научная проблема распознавания жестов с помощью камеры глубины является новой.

На кафедре ПМИ исследованием разработок, связанных с камерой глубины (Kinect), занимается Бабков Виктор Светозарович. Так же выпускник ДонНТУ Соболев Евгений Георгиевич в рамках своей дипломной работы [44] занимался трехмерным сканированием объектов с использованием платформы Microsoft Kinect под руководством В.С. Бабкова.

4. Нахождение руки на основании данных о глубине

Идея заключается в том, чтобы извлечь из облака точек множество точек, которые описывают руку пользователя (рис. 4.1).

Рисунок 4.1 - Выделение множества точек, принадлежащих руке

Рисунок 4.1 - Выделение множества точек, принадлежащих руке

В методе используются только данные о глубине, полученные с датчика Kinect. Для работы метода необходимо, что бы рука находилась на переднем плане. По данным о глубине строится гистограмма (рис. 4.2). При нахождении руки необходимо учесть шум (на рис. 4.2 красным обведён шум).

Рисунок 4.2 - Гистограмма данных о глубине

Рисунок 4.2 - Гистограмма данных о глубине

Все данные о глубине собираются в N контейнерах, каждый контейнер характеризует свой диапазон (интервал диапазона может быть, например, 100 см) и содержит количество точек находящихся в этом интервале. Далее выбираем тот диапазон, который находится ближе всего к камере и имеет достаточное количество точек. Определили глубину позиции руки dh. Далее нужно выбрать все точки, лежащие в диапазоне [dh-d1, dh+d2], где d1, d2 – специфический порог. Теперь нашли все точки принадлежащие руке [42].

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

5. Анализ методов и определение наиболее эффективного

Исследованы несколько методов для распознавания жестов руки: метод роя частиц [34,35], метод Finger-Earth Mover’s Distance [43] и метод сходства контуров [42]. Выделили несколько основных характеристик методов и построили сравнительную таблицу (таблица 5.1). В таблице 5.1 зелёным выделены лучшие показатели методов, а красным – худшие.

Таблица 5.1 – Сравнительная характеристика методов распознавания жестов руки

Рисунок 5.1 - Сравнительная характеристика методов распознавания жестов руки

В исследованных методах для получения данных о жесте руки рекомендуется использовать устройство Microsoft Kinect.

В [45] выполнена программная реализация метода роя частиц, которая следит за рукой, в том числе и за всеми 5-ю пальцами на ней (рис. 5.2).

Рисунок 5.2 - Синхронизация виртуальной и реальной руки

Рисунок 5.2 - Синхронизация виртуальной и реальной руки

(анимация: 11 кадров, 10 циклов повторения, 113 килобайт)

Данное программное обеспечение следит за 3D позицией, ориентацией и полной артикуляцией человеческой руки, основываясь на визуальных данных, без использования каких бы то ни было маркеров. Метод, который был разработан:

Минимальные системные требования:

Система требует установку программного обеспечения:

Система была протестирована на компьютере с характеристиками: 2 Core, Intel Pentium CPU B940 @ 2GHz, 3GB RAM, NVIDIA GeForce GT 520M. Программа показала не плохие результаты (в большинстве случаев достаточно точно определяет показываемый жест). Производительность составила 4 кадра/сек.

Выводы

Проведен анализ методов распознавания жестов руки. Описан метод определения руки на основании данных о глубине, полученные с сенсора глубины. Определён наиболее точный метод, им является подход основанный на методе роя частиц [34,35].

Магистерская работа посвящена исследованию точных методов распознавания жестов руки на основе трёхмерного сканирования. В рамках проведенных исследований выполнено:

  1. Проведён анализ методов распознавания жестов руки, основанных на камере глубины
  2. Дали сравнительную оценку методам.
  3. Определили наиболее точные из них.

Дальнейшие исследования направлены на следующие аспекты:

  1. Разработка модифицированных методов распознавания жестов.
  2. Реализация методов с использованием платформы Microsoft Kinect.
  3. Дать оценку полученным результатам.

При написании данного реферата магистерская работа еще не завершена. Окончательное завершение: январь 2014 года. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.

Список источников

  1. Kinect - Wikipedia [Электронный ресурс]. – Режим доступа: http://ru.wikipedia.org/wiki/Kinect
  2. Asus Xtion Pro [Электронный ресурс]. – Режим доступа: http://ru.asus.com/Multimedia/Motion_Sensor/Xtion_PRO/
  3. Leap Motion [Электронный ресурс]. – Режим доступа: https://www.leapmotion.com/
  4. DUO 3D [Электронный ресурс]. – Режим доступа: http://duo3d.com/
  5. Intel Perceptual Computing [Электронный ресурс]. – Режим доступа: https://perceptualchallenge.intel.com/
  6. C. Chua, H. Guan, and Y. Ho. Model-based 3d hand posture estimation from a single 2d image. Image and Vision Computing, 20:191 - 202, 2002.
  7. N. Shimada, Y. Shirai, Y. Kuno, and J. Miura. Hand gesture estimation and model refinement using monocular camera-ambiguity limitation by inequality constraints. In Proc. of Third IEEE International Conf. on Face and Gesture Recognition, 1998.
  8. B. Stenger, A. Thayananthan, P. Torr, and R. Cipolla. Filtering using a tree-based estimator. In Proc. of IEEE ICCV, 2003.
  9. Moeslund, T.B., Hilton, A., Kruger, V.: A survey of advances in vision-based human motion capture and analysis. CVIU 104 (2006) 90–126
  10. Erol, A., Bebis, G., Nicolescu, M., Boyle, R.D., Twombly, X.: Vision-based hand pose estimation: A review. CVIU 108 (2007) 52–73
  11. K. Oka, Y.Sato and H. Koike, “Real-Time Fingertip Tracking and Gesture Recognition”, IEEE Computer Graphics and Applications, November-December, 2002, pp. 64-71.
  12. 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.
  13. 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.
  14. 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.
  15. 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.
  16. 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.
  17. HUANG C., JENG S. A model-based hand gesture recognition system // Machine Vision Appl. 2001. V. 12, N 5. P. 243–258.
  18. 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.
  19. 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.
  20. Athitsos, V., Sclaroff, S.: Estimating 3d hand pose from a cluttered image. CVPR 2 (2003) 432
  21. Rosales, R., Athitsos, V., Sigal, L., Sclaroff, S.: 3d hand pose reconstruction using specialized mappings. In: ICCV. (2001) 378–385
  22. Romero, J., Kjellstrom, H., Kragic, D.: Monocular real-time 3D articulated hand pose estimation. IEEE-RAS Int’l Conf. on Humanoid Robots (2009) 87–92
  23. Rehg, J.M., Kanade, T.: Visual tracking of high dof articulated structures: An application to human hand tracking. In: ECCV, Springer-Verlag (1994) 35–46
  24. Stenger, B., Mendonca, P., Cipolla, R.: Model-based 3D tracking of an articulated hand. CVPR (2001) II–310–II–315
  25. Sudderth, E., Mandel, M., Freeman, W., Willsky, A.: Visual hand tracking using nonparametric belief propagation. In: CVPR Workshop. (2004) 189189
  26. de la Gorce, M., Paragios, N., Fleet, D.: Model-based hand tracking with texture, shading and self-occlusions. In: CVPR. (2008) 1–8
  27. S. J. Julier, J. K. Uhlmann, and H. F. Durrant-Whyte. A new approach for filtering nonlinear systems. In Proc. American Control Conference, pages 1628–1632, Seattle, USA, June 1995.
  28. E. A. Wan and R. van der Merve. The Unscented Kalman Filter for nonlinear estimation. In Proc. of IEEE Symposium 2000 on Adaptive Systems for Signal Processing, Communications and Control, pages 153–158, Lake Louise, Canada, Oct. 2000.
  29. A. Zafrulla, H. Brashear, H. Hamilton, T. Starner. “A novel approach to American Sign Language (ASL) Phrase Verification using Reversed Signing.” Computer Vision and Pattern Recognition Workshops, 2010.
  30. M. J. Jones and J. M. Rehg. "Statistical Color Models with Application to Skin Detection." IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 1999.
  31. Antonis A. Argyros and Manolis Lourakis. Real-time Tracking of Multiple Skincolored Objects with a Possibly Moving Camera. pages 368–379. Springer, 2004.
  32. Т.Т. Нгуен. Обнаружение руки в режиме реального времени в видеопотоке с помощью признаков Xаара и Adaboost-классификатора. // Средства и системы обработки и анализа данных, 2011. c. 76-80.
  33. 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.
  34. Iason Oikonomidis, Nikolaos Kyriazis, and Antonis A. Argyros. Full DOF Tracking of a Hand Interacting with an Object by Modeling Occlusions and Physical Constraints. In ICCV, 2011. To appear.
  35. Project Report, December 18, 2003. I. Oikonomidis, N. Kyriazis, and A. Argyros, “Efficient model-based 3D tracking of hand articulations using Kinect”, in BMVC 2011, 2011.
  36. Sabine Helwig and Rolf Wanka. Particle Swarm Optimization in High-Dimensional Bounded Search Spaces. In Swarm Intelligence Symposium, pages 198–205. IEEE, 2007.
  37. Vijay John, Spela Ivekovic, and Emanuele Trucco. Articulated Human Motion Tracking with HPSO. International Conference on Computer Vision Theory and Applications, 2009.
  38. James Kennedy and Russ Eberhart. Particle Swarm Optimization. In International Conference on Neural Networks, volume 4, pages 1942–1948. IEEE, January 1995.
  39. Iason Oikonomidis, Nikolaos Kyriazis, and Antonis A. Argyros. Tracking the Articulated Motion of Two Strongly Interacting Hands, 2012.
  40. C. Keskin, A. Erkan, L. Akarun. Real time hand tracking and 3d gesture recognition for interactive interfaces using HMM, 2003.
  41. V. Frati, D. Prattichizzo. Using Kinect for hand tracking and rendering in wearable haptics, 2011.
  42. Zhi Li, Ray Jarvis. Real time Hand Gesture Recognition using a Range Camera. ACRA, 2009.
  43. Zhou Ren, Junsong Yuan, Zhengyou Zhang. Robust Hand Gesture Recognition Based on Finger-Earth Mover’s Distance with a Commodity Depth Camera. Published by ACM 2011.
  44. Е.Г. Соболев. Средства интерактивного взаимодействия реального и виртуального пространств на основе трехмерного сканирования объектов с использованием платформы Microsoft Kinect [Электронный ресурс]. – Режим доступа: http://masters.donntu.ru/2012/fknt/sobolev/diss/index.htm
  45. Kinect 3D Hand Tracking [Электронный ресурс]. – Режим доступа: http://cvrlcode.ics.forth.gr/handtracking/