Русский   English
ДонНТУ   Портал магістрів

Реферат за темою випускної роботи

Зміст

Введення

Задача розпізнавання облич виникає у багатьох областях. Але це вкрай складне завдання, що вимагає колосальних технічних засобів. Для спрощення особливо складних задач їх розбивають на декілька більш простих. В даному випадку виділяють два основні завдання: завдання виділення особи і завдання розпізнавання. Але навіть такий поділ зводить до двох досить складним підзадачам. Для їх розв'язання використовують різні підходи.

В алгоритмах виділення особи виділяють два напрями, які по-різному підходять до цього питання[1]. Перший підхід розглядає особу як набір різноманітних ознак, що характеризує особу як об'єкт серед множини інших об'єктів. Такими ознаками можуть служити колір шкіри, оскільки він варіюється в певному діапазоні, брови, очі, форма черепа і т.д. Другий підхід ґрунтується на розгляді знімка з особою як зображення, абстрагуючись від завдання виділення особи, розширюючи її до задачі виділення будь-якого об'єкта на знімку[1].

найпростіші алгоритми виділення і розпізнавання осіб використовують особливості зображень. Основна перевага таких алгоритмів – висока швидкість роботи. Інші алгоритми використовують різні складні структури зберігання і обробки інформації, представляючи собою цілу систему. Один із прикладів такої системи – нейронна мережа, що моделює роботу людського мозку. Незважаючи на величезну кількість нейронних мереж, більшість з них спеціалізовані на конкретній задачі. Для найбільш складних задач використовується дуже складні багатошарові нейронні мережі. Але складність часто виправдовує – ймовірність правильного розпізнавання і швидкість роботи таких мереж набагато вище звичайних методів. Однією з найбільш підходящої для задачі розпізнавання осіб визнана нейронна мережа типу неокогнітрон.

1. Актуальність теми

Задача розпізнавання осіб стає все більш актуальною. Є безліч місць, де доцільно застосувати системи розпізнавання осіб. Найбільш відомими областями застосування є безпека та криміналістика. Але існують і інші області застосування. Наприклад, у сфері соціальних мереж дану технологію можна застосувати автоматичного виділення і підписи людей на фотографіях. Дана технологія вкрай важлива і робототехніки і військовій справі, оскільки дозволить поділяти людей на «свій» – «чужий» або поділяти на класи за рівнем доступу[1].

2. Мета і завдання дослідження, плановані результати

Метою дослідження є розробка програмного продукту, який зможе з високою точністю розпізнавати обличчя режимі реального часу.

Основні завдання дослідження:

  1. Аналіз методів виділення особи на знімку.
  2. Вибір найбільш ефективного методу виділення обличчя на знімку.
  3. Аналіз алгоритмів розпізнавання осіб.
  4. Вибір найбільш ефективного алгоритму розпізнавання осіб на базі нейромереж типу неокогнітрон.
  5. Побудова параметричної моделі неокогнітрона.
  6. Розробка програмної моделі неокогнітрона.

Об'єкт дослідження: система розпізнавання осіб на основі нейромереж.

Предмет дослідження: алгоритми виділення і розпізнавання осіб з відеопотоку.

У рамках магістерської роботи планується отримання актуальних наукових результатів за наступними напрямками:

  1. Оцінка якості виділення осіб.
  2. Визначення найбільш ефективної моделі виділення осіб.
  3. Оцінка якості розпізнавання осіб за допомогою нейронних мереж.
  4. Створення програмної моделі нейронної мережі типу неокогнітрон.
  5. Аналіз ефективності роботи алгоритмів виділення і розпізнавання осіб з відеопотоку.

3. Огляд досліджень і розробок

Питаннями розпізнавання осіб займається безліч вчених з усього світу. Завдання виділення особи вирішують вчені з різних країн, застосовуючи різні методи. Найбільш ефективним вважається використання алгоритму Віоли-Джонса. Питанням же розпізнавання осіб за допомогою нейронних мереж в основному займаються в Японії.

3.1 Огляд міжнародних джерел

Ще в далекому 1998 р. В роботі Папагеоргіу був описаний принцип використання вейвлетів Хаара для завдання виділення осіб [2]. А В 2001 році П. Віола і М. Джонс опублікували кілька статей, серед яких були [3] [4], присвячених модифікації цієї ідеї. Застосування більш складних ознак дозволило підвищити ефективність. Разом з тим ще в 1999 р. була опублікована стаття [5], що описує основні принципи адаптивного навчання. Даний підхід також використовується в алгоритмі Віоли-Джонса. Оскільки алгоритм дає непогані результати, то після 2001 року з'явилося досить багато статей, що описують як базові принципи алгоритму, так і реалізацію [6] і навіть модифікацію для різних завдань, у тому числі для фіксування емоцій і рухів.

Нейронні мережі типу неокогнітрон зросли з мереж типу когнитрон. Одна з перших робіт [7] з'явилася ще в 1980 р. Пізніше ідея розвивалась і застосовувалась для розпізнавання різних типів об'єктів, у тому числі рукописного тексту [8] та осіб [9]

3.2 Огляд локальних джерел

В Донецькому національному технічному університеті проблемами розпізнавання осіб займаються кілька людей. Основний внесок робить доцент кафедри прикладної математики та інформатики Федяєв О.І. в таких роботах, як [10-13]. Також необхідно відзначити роботи доцента Ладиженського Ю.В., в числі яких робота [14]

4. Опис виділення особи з допомогою алгоритму Віоли-Джонса

Як вже було сказано вище, існує два підходи до вирішення задачі виділення особи на знімку. Алгоритм Віоли-Джонса реалізує другий підхід, абстрагуючись від завдання виділення особи до завдання виділення будь-якого об'єкта на знімку. Більш того, даний алгоритм відноситься до учнем алгоритмами, тобто він вимагає деякий час до застосування. Основна ідея алгоритмів другого типу – пікселі і їх розташування характеризують об'єкт на зображенні. Для того, щоб прискорити процес виділення об'єкта в алгоритмі Віоли-Джонса використовуються не окремі пікселі, а набори пікселів. Основною особливістю даних наборів є те, що вони розділені на кілька областей двох типів: світлі і темні. Кожен такий набір називається ознакою або функцією Хаара. У нього є характеристика – значення ознаки. Саме ця характеристика визначає, чи є обличчя на знімку. Відбувається це наступним чином: для того, щоб визначити, чи є обличчя на знімку, ознака багаторазово накладається на зображення. При накладанні на ознаки частина пікселів потрапляє під світлу область, частина – під темну. Для кожної області вираховується середнє значення яскравості. Тут необхідно пояснити, що алгоритм Віоли-Джонса використовує в якості вхідного зображення знімок в сірих відтінках. Як тільки буде розраховані середні яскравості для темної і світлої області, з середнього світлої області вираховується середнє темній області. Це і буде значенням ознаки. Для того, щоб визначити, чи належить область під ознакою особі чи ні, необхідно порівняти значення ознаки зі значенням ознаки, отриманими на етапі навчання. Але оскільки ознаки можуть мати різне значення в залежності від розташування, то необхідно перевіряти кожну ознаку ще й при повороті на різний кут. Класична схема з ознаками Хаара передбачає поворот на 90 і 180 градусів. Алгоритм Віоли-Джонса допускає поворот і на інші кути. Також застосовуються й інші перетворення над ознаками, в тому числі масштабування. Але тут з'являється цілком логічне питання – як реагувати на зображення різного розміру? Для цього в алгоритмі використовується метод плаваючого вікна – замість того, щоб застосовувати ознаки до всього зображення, ознаки застосовуються тільки до невеликої області, званої вікном. Вікно може змінювати розміри, а пересування вікна дозволяє охопити всі зображення. На малюнку 1 представлена загальна схема роботи алгоритму Віоли-Джонса.

Схема роботи алгоритму Віоли-Джонса

Малюнок 1 – Схема роботи алгоритму Віоли-Джонса
(анімація: 23 кадру, 7 циклів повторення, 81,5 кілобайт)

Очевидно, що всі вищезгадані перетворення вимагають розрахунків колосальної складності. Для прискорення використовується інший тип подання зображення – інтегральне. Інтегральне подання – це представлення зображення у вигляді матриці, де кожен елемент – сума яскравостей пікселів, що знаходяться лівіше і вище поточного, тобто в елементі x,y зберігається сума яскравості пікселів в області 0,0 – x,0 – x,y – 0,y. Це зводить час на розрахунок значення ознаки до константному значенням.

Повернемося до навчання. Це найбільш тривала процедура, оскільки необхідно застосувати весь набір ознак до безлічі зображень для знаходження найбільш оптимальних значень ознак. Від якості тренування залежить ефективність розпізнавання, а тому необхідно якомога більше зображень. При навчанні необхідно виділити ознаки, які будуть видавати правильний результат дуже часто і ті, які будуть видавати випадковий результат. Перші називають сильними ознаками, а другі – слабкими. Слабкі ознаки неефективні для розпізнавання. Але є можливість їх використовувати – їх можна об'єднати для повчання сильного ознаки. Дана модифікація називається AdaBoost.

Підводячи підсумок, можна сказати, що основна концепція алгоритму Віоли-Джонса – швидке виділення, але повільне навчання – дозволяє застосовувати його для роботи в режимі реального часу.

Опис нейронної мережі типу неокогнітрон

Неокогнітрон був розроблений Кунихикой Фукусімою у 1980 р. Ця нейронна мережа є продовжувачем ідеї, реалізованої в когнитроне, розробленому цим же автором у 1975 р. Основна особливість неокогнітрона в порівнянні з його попередником – більше відповідає моделі зорової системи.

Неокогнітрон являє собою багатошарову сверточную нейронну мережу. У неокогнитроне використовуються два типи нейронів: прості (S) і комплексні (C). Завдання простого нейрона – стежити за своїм рецепсивным полем і визначати на ньому образ, на який він навчений. Під рецепсивным полем слід розуміти область, у якій нейрон відповідає за розпізнавання образу. Прості нейрони організовані в групи, звані шарами. Всередині одного шару нейрони налаштовані на виявлення одного й того ж образу, але в різних рецептивних полях. При цьому ваги всередині одного шару у них однакові. Всі нейрони одного шару перебираю всілякі положення образу. Такий підхід дозволяє врахувати будь-яке положення образу.

Комплексні нейрони покликані стежити за усіма простими нейронами, распознающими конкретний образ. Для порушення такого нейрона досить порушення будь-якого підконтрольного йому простого нейрона. Активність просто нейрона означає, що він виявив характерні ознаки образу в деякій позиції, а активність комплексного нейрона говорить, що образ був в принципі виявлений на цьому шарі.

На кожному шарі нейронів все менше і менше. На останньому шарі залишаються тільки нейрони, що відповідають за образ в цілому – по одному на кожен розпізнаваний образ.

Кожен шар після першого в якості вхідного параметра має картину, отриману комплексними нейронами попереднього шару. По мірі пересування по верствам картина узагальнюється і стає менш залежною від стану і деякого рівня трансформації. На малюнку 2 зображено приклад розпізнання неокогнітроном символу.

Приклад роботи неокогнітрона при розпізнанні символу

Малюнок 2 – Приклад роботи неокогнітрона при розпізнанні символу

Навчання неокогнітрона можна проводити як з вчителем, так і без вчителя. Останній варіант робить систему більш автономною. При такому навчанні при подачі в неокогнітрон зображень система починає виділяти характерні ознаки об'єкта. У першу чергу виділяються найбільш значимі ознаки. Від шару до шару зберігається загальний принцип навчання – виділяються фактори, характерні для множини вхідних сигналів.

Висновки

Аналіз різних алгоритмів виділення і розпізнавання осіб привів до вибору двох перспективних алгоритмів: алгоритм Віоли-Джонса для виділення і нейронна мережа типу неокогнітрон для процесу розпізнавання. У ході проведених досліджень було виявлено, що неокогнітрон вимагає ретельної налаштування на рішення поставленої задачі. На даному етапі реалізована одна з частин майбутнього програмного продукту, а саме виділення особи. Подальші дії припускаю розробку моделі для неокогнітрона та створення програмної реалізації даного типу нейронної мережі, а також об'єднання зазначених компонентів в один програмний продукт.

References

  1. В. Вежневец, А. Дегтярева, Обнаружение и локализация лица на изображении, Компьютерная Графика и Мультимедиа, Сетевой журнал.
  2. C. Papageorgiou, M. Oren and T. Poggio. A General Framework for Object Detection. International Conference on Computer Vision, 1998, C. 555 – 562.
  3. P. Viola and M. Jones, "Rapid object detection using a boosted cascade of simple features", Computer Vision and Pattern Recognition, 2001, vol.1, C. 511 – 518.
  4. P. Viola, M. Jones, Robust Real-time Object Detection, 2000, 24 c.
  5. Y. Freund, R. E. Schapire, A Short Introduction to Boosting, Journal of Japanese Society for Artificial Intelligence, 1999.
  6. C. de Souza, Haar-feature Object Detection in C#, 2001.
  7. K. Fukushima, "Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position", Biological Cybernetics, 1980. – C. 193-202.
  8. K. Fukushima, N. Wake, Handwritten alphanumeric Character Recognition by the Neocognitron – IEEE Transactions on neural networks, Vol. 2, No 3, 1991. – C. 355-365.
  9. G. Poli, J. H. Saito, J. F. Mari, M. R. Zorzan, Processing Neocognitron of Face Recognition on High Performance Environment Based on GPU with CUDA Architecture – 20th International Symposium on Computer Architecture and High Performance Computing, 2008. – c. 81-88.
  10. О. И. Федяев, Ю. С. Махно, Система распознавания зашумлённых и искажённых графических образов на основе нейронной сети типа неокогнитрон // Одиннадцатая национальная конференция по искусственному интеллекту с международным участием КИИ-2008: Труды конференции. Т. 3. – М .: ЛЕНАНД, 2008. – 464 с.
  11. А. А. Сова, О. И. Федяев, Исследование моделей S- и С нейронов неокогнитрона при обучении и распознавании образов – VII международная научно-техническая конференция студентов, аспирантов и молодых научных работников Информатика и компьютерные технологии – Донецк, ДонНТУ, 2011. – С. 164-168.
  12. Г. Ю. Костецкая, О. И. Федяев, Кодирование изображений человеческих лиц с помощью самоорганизующейся карты Кохонена – V международная научно-техническая конференция студентов, аспирантов и молодых научных работников Информатика и компьютерные технологии – Донецьк, ДонНТУ, 2009. – С. 265-268.
  13. Н. Х. Умяров, О. И. Федяев, Выделение лица на снимке из видеопотока с целью его распознавания – VII международная научно-техническая конференция студентов, аспирантов и молодых научных работников Информатика и компьютерные технологии – Донецьк, ДонНТУ, 2011. – С. 173-177.
  14. А. В. Колесник, Ю. В. Ладыженский, Распределенная программная система распознавания лиц – VI международная научно-техническая конференция студентов, аспирантов и молодых научных работников Информатика и компьютерные технологии – Донецк, ДонНТУ, 2010. – С. 248-251.