УДК 004.931
МЕТОДИ РОЗРАХУНКУ КІЛЬКОСТІ ЛЮДЕЙ В ІНТЕЛЕКТУАЛЬНИХ СИСТЕМАХ УПРАВЛІННЯ ДОРОЖНІМ РУХОМ
З.В. Хадікова, студент, Н.В. Білоус, професор, к.т.н., Харківський національний
університет радіоелектроніки
Анотація. Описано проблему розрахунку кількості людей в інтелектуальних системах управління дорожним рухом. Пропонується застосування методів комп ’ютерного зору для розв ’язання даної проблеми. Розглянуто існуючі методи виявлення обличь на зображеннях. Детально розглянуто алгоритм Віоли-Джонса, який було використано для програмної реалізації системи.
Ключові слова: інтелектуальна система управління дорожнім рухом, комп ’ютерний зір, виявлення обличчя, орепСУ, алгоритм Віоли-Джонса.
МЕТОДЫ РАСЧЁТА КОЛИЧЕСТВА ЛЮДЕЙ В ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМАХ УПРАВЛЕНИЯ ДОРОЖНЫМ ДВИЖЕНИЕМ
З.В. Хадикова, студент, Н.В. Бєлоус, профессор, к.т.н.,
Харьковский национальный университет радмоелектроники
Аннотация. Описана проблема расчёта количества людей в интеллектуальных системах управления дорожным движением. Предлагается применение методов компьютерного зрения для решения данной проблемы. Рассмотрены существующие методы определения лиц на изображениях. Подробно рассмотрен алгоритм Виолы-Джонса, который был использован в программной реализации системы.
Ключевые слова: интеллектуальная система управления дорожным движением, компьютерное зрение, локализация лица, openCV, алгоритм Виолы-Джонса.
METHODS OF CALCULATION OF THE NUMBER OF PEOPLE IN INTELLIGENT
TRAFFIC MANAGEMENT SYSTEMS
Z. Khadikova, student, N. Bilous, Professor, Candidate of Technical Science, Kharkiv National University of Radioelectronics
Abstract. The problem of calculation of people in intelligent traffic management systems is described in the given article. Methods of computer vision are suggested to solve this problem. Existing methods of face detection are considered. Viola-Jones algorithm, used to develop the system, is considered in details.
Key words: intelligent traffic management systems, computer vision, face detection, openCV, Viola-Jones algorithm.
Вступ
В умовах постійного зростання інтенсивності руху автомобільного транспорту на магістральних вулицях міст знижується ефективність організації руху традиційними методами
управління транспортними потоками. На сьогодні рух на перехрестях регулюється світлофорами, що мають певну програму роботи (тривалість увімкнених сигналів), у кращому випадку - декілька режимів роботи. Звісно, в такому випадку їх робота не може
бути оптимальною. Наприклад, за відсутності пішоходів зелене світло для переходу дороги все одно увімкнеться. Значно ефективніше було б не вмикати зелене світло, коли бажаючих перейти дорогу немає, та увімкнути зелене світло раніше, ніж це передбачено програмою світлофора, якщо кількість людей досягла певного значення. Для цього необхідно завжди знати, скільки людей знаходиться на пішохідному переході.
Дана стаття демонструє доцільність використання методів комп’ютерного зору для розрахунку кількості пішоходів на перехресті для системи управління дорожнім рухом.
Аналіз публікацій
Вчені, що досліджують проблеми безпеки дорожнього руху, погоджуються, що управління рухом в умовах граничного насичення доріг транспортними та пішохідними потоками вимагає все більш досконалих методів регулювання руху [1].
Про підтримання відповідності режимів роботи світлофорів умовам руху було сказано на конференції «Організація і безпека дорожнього руху у великих містах». Також пропонується збирання статистичних даних щодо щільності транспортного та пішохідного потоків та налаштування світлофорних об’єктів відповідно до зібраної інформації.
С. Антощук [1] пропонує для управління дорожнім рухом застосування штучного інтелекту. Відзначено застосування відеоспос-тереження для вказаних цілей. Процес збирання та обробки візуальної інформації передбачає накопичення, обробку та видачу результуючої інформації. У роботі виділено такі процедури обробки зображень: попередня обробка, сегментація та розпізнавання зображень.
У статті має бути розкрито можливість використання методів комп’ютерного зору у системах управління дорожнім рухом, зокрема для розрахунку кількості людей, наприклад, на пішоходному переході.
Задачу розрахунку кількості людей можна звести до задачі пошуку облич людей на відео з камери, встановленої над перехрестям, та їх підрахунок. Задача пошуку облич наразі є дуже актуальною у зв’язку зі зрос-
таючими практичними потребами: охоронні системи, верифікація, криміналістична експертиза, телеконференції і т.д. Саме тому ця тема знайшла відгук в роботах багатьох вітчизняних та зарубіжних вчених.
Всі вчені погоджуються, що пошук обличчя на зображенні ускладнюється через розмаїття поз, виразів обличчя, освітлення, загородження іншими об’єктами, якості зображення, наявності таких структурних компонентів, як борода, вуса, окуляри тощо.
Шаабан [2] стверджує, що основний принцип роботи сучасних алгоритмів знаходження обличчя полягає в тому, щоб за допомогою класифікатора відділити частини, на яких обличчя наявне, від частин, на яких обличчя відсутнє (фону), навчаючи класифікатор на множині навчальних прикладів.
Пір [3] визначає мету автоматичного знаходження обличчя на зображенні як сегментацію зображення на області, що містить людські обличчя, та області, якими, через відсутність на них частин обличчя, можна знехтувати.
Янг [4] відзначає зростання популярності алгоритмів, що базуються на машинному навчанні. У статті приведено класифікацію методів пошуку обличчя на зображенні та порівняння отриманих результатів на практиці. Автор вказує на проблему класифікації обличчя через достатньо великі варіації класу «обличчя».
У своїй роботі Ріхан [5] пропонує інноваційний підхід у вигляді об’єднаних алгоритмів пошуку обличчя та сегментації зображення. Як алгоритм для пошуку обличчя використовується алгоритм Віоли-Джонса, а сегментація виконується за допомогою мережі Маркова. Автор посилається на роботу Колмогорова [6], який запропонував надійний спосіб отримання переднього та заднього планів із пари стереозображень. Мережу Маркова пропонується використовувати разом із розшарованими структурами зображень. Метод, отриманий у результаті, виявився швидкодійним та придатним для роботи в режимі реального часу.
Метод, запропонований Муригіним У [7], дозволяє розв’язати одну з основних проблем, що заважає ефективному пошуку об-
личчя на зображенні, — різниці умов освітлення, оскільки бокове освітлення може створювати тіні, а занадто яскраве освітлення викликає втрату окремих деталей обличчя. Метод використовує шаблон, що являє собою зображення центральної частини обличчя, яке містить основні його елементи: очі, брови, ніс і рот. Використання в якості шаблону лише центральної частини обличчя дозволяє усунути вилив найбільш варіабельних частин голови людини, таких як зачіска чи борода. Для зменшення впливу умов освітлення зображення будь-якого обличчя розбивається на кінцеве число областей, яскравість точок в яких можна пов’язати з яскравістю точок шаблону.
Проблемою більшості алгоритмів пошуку облич, що використовують машинне навчання, є ефективність класифікатора. Тому Му-ригін у своїй роботі [7] запропонував принцип відбору та об’єднання набору простих і малоефективних властивостей в одне вирішальне правило, що має високу класифікуючу здатність.
Головною проблемою, що існує в області пошуку облич, Сатіаван [8] вважає те, що більшість алгоритмів розпізнавання обличчя нечітко визначають успішний процес виявлення обличчя.
Останнім часом увага вчених у сфері пошуку обличчя зосередилася на використанні Хаар-подібних властивостей, оскільки вони продемонстрували відмінні результати, за наявності великої кількості різноманітних тестових зображень [4]. Відзначено методи Віоли-Джонса та AdaBoost, які реалізовано у бібліотеці OpenCV.
Таким чином, можна справедливо вважати, що наразі не існує абсолютно вірного способу відокремити обличчя на зображенні. Вчені, що працюють у цій галузі, досі сперечаються про те, який з підходів, є правильним. На даному етапі популярними є алгоритми, що використовують машинне навчання, зокрема ті, що використовують Хаар-подібні властивості. Серед алгоритмів пошуку облич на зображеннях добре проявили себе алгоритми AdaBoost та Віоли-Джонса. Ефективність цих алгоритмів багато в чому залежить від підібраних тестових зображень та якості тренування класифікатора.
Мета і постановка задачі
Задача розрахунку кількості людей на пішохідному переході для подальшого використання системами управління дорожнім рухом може бути розв’язана за допомогою методів комп’ютерного зору, а саме методів пошуку обличчя на зображенні.
Необхідно шукати та рахувати обличчя людей на відеопотоку, що надходитиме з камери, розташованої над пішохідним переходом. Це дозволить мати актуальну інформацію в режимі реального часу про кількість людей на пішохідному переході, що може бути використано для автоматизації управління світлофорним об’єктом.
Особливості умов розрахунку кількості людей на пішохідному переході є такими:
- люди на перехресті можуть стояти один за одним, тому існує велика ймовірність перекриття облич;
- люди на перехресті стоять у полі зору камери, а не проходять повз неї;
- процес розрахунку проходить автоматично.
Основні труднощі, з якими доведеться стик-нутися в ході реалізації:
- робота у режимі реального часу;
- якість зображення камери;
- умови навколишнього середовища;
- необхідність виявлення облич за різних кутів зору;
- перекриття людей іншими людьми на зображенні, та ін.
Завданням дослідження є проаналізувати методи пошуку облич на зображенні та визначити найбільш доцільний до використання для розрахунку кількості людей в інтелектуальних системах управління дорожнім рухом. Також необхідно розробити програмну реалізацію обраного методу для перевірки ефективності його роботи.
Методи розрахунку кількості людей в інтелектуальних системах управління дорожнім рухом
Завдання виявлення облич на зображеннях є одним із найбільш цікавих та популярних на сьогодні. Воно розглядається і як самостійне, наприклад, автоматичне виявлення та фокусування облич у камерах, та як частина інших задач, таких як відстежування обличчя та його розпізнавання.
Виявлення обличчя визначається як процес вилучення обличчя із зображення. Цей процес ускладнюється (особливо у системах відеоспостереження) через такі чинникі, як:
— різноманітність поз - ідеальним для виявлення облич є зображення, на якому усі обличчя розташовані фронтально, але через постійний рух людей та кут розташування камери це малоймовірно;
— загородження частин обличчя - наявність таких елементів, як бороди, окуляри або капелюхи. Обличчя можуть бути частково покриті об’єктами або іншими обличчями;
— вирази обличчя - частини обличчя також можуть змінюватися залежно від виразу обличчя;
— якість зображення - різні камери та різні умови оточуючого середовища дають зображення різної якості, що впливає на вигляд обличчя [3].
Завдання виявлення обличчя складається з таких підзавдань, як локація обличчя та відслідковування обличчя.
Наразі існує багато методів виявлення обличчя, проте більшість з них мають 2 істотні недоліки:
— надмірна складність та затратність розрахунків;
— низька ефективність [3].
Алгоритми комп’ютерного зору надають можливість визначити і використати принципи, якими керується мозок при вирішенні задачі розпізнавання.
Алгоритм роботи емпіричних методів розпізнавання може бути стисло описаний таким чином:
— виявлення елементів і особливостей (features), характерних для зображення обличчя;
— аналіз виявлених особливостей, винесення рішення про кількість і розташування облич
[9].
Виявлення елементів та особливостей обличчя відбувається за допомогою наступних властивостей:
— краї - різкі переходи яскравості. Краю зазвичай відповідають кордони об’єктів на зображенні - очей, брів, рота, носа. Ця властивість також використовується в ряді робіт, які розглядають краї на зображенні як ознаки потенційної наявності обличчя;
- яскравість - області зображення, що відповідають рисам обличчя; часто є більш темними, ніж шкіра, що їх оточує. Скориставшись цим спостереженням, ряд дослідників використовує алгоритми виявлення і підкреслення областей локальних мінімумів яскравості, розглядаючи їх як потенційні риси обличчя. У деяких роботах робиться спроба використовувати певні схеми співвідношень яркостей, характерних для деяких рис обличчя;
- колір - як показали експерименти, колір шкіри різних людей займає досить невелику обмежену підобласть колірного простору, навіть при розгляді кольорів шкіри людей, що належать до різних рас. Причому основна відмінність полягає в яскравості, а не у відтінку кольору, що дозволяє зробити висновок про схожість відтінку кольору шкіри різних людей і використовувати характерний колір шкіри як ознаку для розпізнавання облич.
- характерна форма рис обличчя - виходячи з того, що процесам розпізнавання візуальних образів високого рівня в мозку передує якась низькорівнева організація візуальної інформації, було запропоновано декілька операторів, що підкреслюють області зображення, які володіють властивостями, характерними для рис обличчя, такими, наприклад, як симетричність, близькість меж рис обличчя за формою до параболи. Результатом застосування таких операторів є сукупність точок на зображенні, що з високою ймовірністю належать до рис обличчя. Інший близький варіант розпізнавання - використання жорстких або деформівних шаблонів для виявлення рис обличчя (наприклад, очей)
[10].
Методи цього класу мають допомогти у виявленні закономірностей і властивостей зображення обличчя неявно, та застосовують методи математичної статистики і машинного навчання. Методи цієї категорії спираються на інструментарій розпізнавання образів, розглядаючи завдання виявлення обличчя як окремий випадок завдання розпізнавання. Зображенню (або його фрагменту) ставиться у відповідність деяким чином отримані ознаки, які використовуються для поділу зображень на два класи - обличчя / необличчя.
Найпоширеніший спосіб отримання вектора ознак - це використання самого зображення: кожен піксель стає компонентом вектора, перетворюючи чорно-біле зображення п х т у вектор простору Яп х т . Недоліком такого
подання є надзвичайно висока розмірність простору ознак. Перевага полягає тому, що, використовуючи всі зображення цілком замість обчислених на його основі характеристик, з усієї процедури побудови класифікатора (включаючи виділення стійких ознак для розпізнавання) повністю виключається участь людини, що потенційно знижує імовірність помилки побудови неправильної моделі зображення обличчя внаслідок невірних рішень і помилок розробника.
Зазвичай пошук облич на зображеннях за допомогою методів, що базуються на побудові математичної моделі зображення обличчя, полягає в повному переборі всіх прямокутних фрагментів зображення всіляких розмірів і проведенні перевірки кожного із фрагментів на наявність обличчя. Оскільки схема повного перебору володіє такими безумовними недоліками, як надмірність і велика обчислювальна складність, авторами застосовуються різні методи зменшення кількості фрагментів, що мають розглядатися.
Недоліком методів першого класу є велика змінність об’єкта розпізнавання, залежність виду обличчя на зображенні від умов зйомки та освітлення. Також ці методи допомагають у відтворенні інструменту розпізнавання облич людським мозоком, але зіштовхуються із проблемою ефективного переведення в набір формальних правил.
Недоліками методів другого класу є:
- залежність від орієнтації і масштабу обличчя. Більшість класифікаторів не є інваріантними до повороту обличчя у площині зображення і зміни його розміру;
- неявний спосіб визначення ознак для розпізнавання облич приховує у собі потенційну небезпеку: класифікатор, що володіє недостатньо репрезентативним набором зображень облич, теоретично може виділити вторинні або помилкові ознаки як важливі;
- висока обчислювальна складність. По-перше, самі класифікатори часто включають у себе велику кількість досить складних обчислень; по-друге, повний перебір всіх можливих прямокутних фрагментів зображення сам по собі займає велику кількість часу. Це ускладнює використання деяких методів у системах реального часу (наприклад, відсте-жування переміщення обличчя у відеопотоці). Перевага емпіричних методів полягає ще й у тому, що вони часто є досить простими в реалізації.
Беручи до уваги особливості умов використання алгоритму, а саме необхідність роботи у режимі реального часу, з усіх методів розглянемо детальніше метод Віоли-Джонса.
Класифікація зображень за методом Віоли-Джонса базується на значеннях простих детекторів особливостей. Особливості використовуються замість безпосередніх значень пікселів з багатьох причин. Основною причиною є те, що особливості можуть описувати ті знання про клас об’єктів, які важко виявити на кінцевому числі навчальних даних. Друга важлива причина використання особливостей: системи, побудовані на їх основі, працюють набагато швидше, ніж системи, що працюють безпосередньо з пікселями.
Основні принципи, на яких ґрунтується метод:
— використовуються зображення в інтегральному уявленні, що дозволяє обчислювати швидко необхідні об’єкти;
— використовуються ознаки Хаара, за допомогою яких відбувається пошук потрібного об’єкта (у даному контексті - обличчя та його рис);
— використовується бустінг (від англ. boost -поліпшення, посилення) для вибору найбільш придатних ознак для шуканого об’єкта на даній частині зображення;
— всі ознаки надходять на вхід класифікатора, який дає результат «вірно» або «невірно»;
— використовуються каскади ознак для швидкого відкидання вікон, де не знайдено облич.
Алгоритм Віоли-Джонса реалізовано у бібліотеці функцій та алгоритмів комп’ютерного зору, обробки зображень і чисельних алгоритмів загального призначення OpenCV. OpenCV - це набір типів даних, функцій і класів для обробки зображень алгоритмами комп’ютерного зору. В OpenCV також реалізовано алгоритм SURF для 3Б-реконструкції.
Основою процесу виявлення обличчя за допомогою методу Віоли-Джонса та бібліотеки OpenCV є процес тренування класифікатора та створення каскаду Хаара у вигляді XML-файла. Для того щоб навчити класифікатор, потрібно підготувати тестові набори «позитивних» і «негативних» зображень. «Позитивні» зображення містять потрібний об’єкт, «негативні» - тільки фон.
Реалізація методу пошуку облич на зображенні
Для перевірки можливості та ефективності використання обраного методу пошуку облич було розроблено тестову програмну систему.
Оскільки відеопотік є лише набором зображень, задача зводиться до розбиття відео-потоку на окремі зображення та пошук облич на зображеннях, використовуючи обраний алгоритм Віоли-Джонса та бібліотеку
OpenCV. Бібліотека OpenCV має багато обгорток під різні мови програмування. Однією з таких обгорток є EmguCV, що дозволяє використовувати функціонал OpenCV у додатках, написаних на платформі .Net.
Для того щоб вивчити класифікатор Хаара, необхідно мати тестові набори «позитивних» і «негативних» зображень. «Позитивні» зображення містять потрібний об’єкт (обличчя, рот, ніс тощо), «негативні» - тільки фон. Візьмемо такі тестові зображення людей, що містять людей з різними зачісками, з окулярами, головними уборами та волоссям на обличчі.
Навчання класифікатора займає багато часу (до декількох діб), а процес знаходження обличчя - до секунди.
Під час тестування програмного модуля було встановлено, що визначаються обличчя розташовані фронтально, у профіль, в окулярах, в головних уборах та з волоссям на обличчі. Для покращення показників необхідно поглиблене тренування системи, уточнення каскадів Хаара та, можливо, використання 3D-моделей.
Висновки
Сучасні способи регулювання світлофорних об’єктів на пішохідних переходах не є оптимальними. У статті було запропоновано використовувати методи пошуку облич для розрахунку кількості людей на пішохідному переході. Цей підхід надає такі переваги:
— працює в автоматичному режимі;
— оптимізує роботу світлофорів на пішохідних переходах;
— дозволить знизити затори;
— дозволить підвищити безпеку дорожнього руху.
Литература
1. Антощук С.Г. Сенсорные интеллектуаль-
ные системы в управлении дорожным движением / С.Г. Антощук, А.Е. Колесников, А.А. Нутович // Електромашинобудування та електрообладнання: науковий журнал. - 2009. - №74. - С. 105-111.
2. Shaaban Z. Face Detection Methods /
Z. Shaaban // 2011 International Conference on Computer and Software Modeling, IPCSIT. - 2011.- Vol. 14.
3. Peer P. An Automatic Human Face Detection
Method / P. Peer, F. Solina // University of Ljubljana, Ljubljana, Slovenia - 199S. -Vol. 22 - P. 25-34.
4. Yang M. Detecting faces in images: A survey
/ M. Yan, D. Kriegman, N. Ahuja // IEEE Trans. Pattern Analysis and Machine Intelligence.- 2002 - Vol. 24, №1 - P. 34-5S.
5. Rihan J. OBJCUT for Face Detection /
J.Rihan, P. Kohli, P. Torr // Oxford Brookes University, UK, 200б.
6. Kolmogorov V. Bi-layer segmentation of
binocular stereo video / V.Kolmogorov, A.Criminisi, A. Blake, G. Cross, C. Rother // CVPR (2), 2005. - P. 407-414.
7. Мурыгин КВ. Особенности реализации
алгоритма AdaBoost для обнаружения объектов на изображении / Искусственный интеллект. - 2009. - №3.
S. Setiawan H. Quantitative Measurement ofFace Detection Algorithm Performance / H. Setiawan // The 4th International Conference on ICTS, 200S.
9. Вежневец В. Обнаружение и локализация
лица на изображении / В. Вежневец, А. Дегтярёва // Компьютерная графика и мультимедиа: научный журнал. - 2003.
- №1(3). - C. 39-51.
10. Hjelmas E. Face detection: A survey /
E. Hjelmas // Low Journal of Computer Vision and Image Understanding. - 2001. -Vol. S3 - P. 23б-274.
Рецензент: Є.Б. Решетніков, професор, к.т.н., ХНАДУ.
Стаття надійшла до редакції 30 квітня 2013 р.