Спосіб виявлення облич людей на зображенні
Номер патенту: 54760
Опубліковано: 25.11.2010
Автори: Кулик Анатолій Ярославович, Білошкурський Сергій Степанович, Маслій Роман Васильович
Формула / Реферат
Спосіб виявлення облич людей на зображенні, в якому формують базу зображень облич фронтального вигляду та базу зображень, на яких відсутні обличчя, з яких формують навчальні та верифікаційні набори позитивних та негативних прикладів, тренують каскад сильних класифікаторів, додають до каскаду сильні класифікатори до тих пір, поки не буде досягнуто заданих значень помилки першого роду та рівня детекції для каскаду; тренують сильний класифікатор, додають слабкі класифікатори у сильний класифікатор до тих пір, поки не буде досягнуто заданих значень помилки першого роду та рівня детекції для сильного класифікатора, тренують слабкі класифікатори, додають у сильний класифікатор слабкий класифікатор, який на зваженому наборі навчальних прикладів показав найменшу помилку, формують сильний класифікатор, на верифікаційних наборах перевіряють досягнення помилки першого роду та рівня детекції для сильного класифікатора, негативний навчальний набір наступного класифікатора формують з прикладів, отриманих з бази зображень, на яких відсутні обличчя, які попередні сильні класифікатори каскаду прийняли за обличчя, вводять у комп'ютер зображення, за допомогою вікна пошуку у різних масштабах і положеннях виділяють області зображення, подають їх на вхід каскаду сильних класифікаторів, область зображення признають за детектовану область, якщо всі сильні класифікатори каскаду прийняли область зображення за обличчя, кластеризують детектовані області в об'єднані області, кожна з яких признається за область обличчя, який відрізняється тим, що значення порога та парності ознак у слабких класифікаторах обчислюється до навчання сильного класифікатора, для формування слабких класифікаторів використовують модифіковані Хаар-подібні ознаки, кожна з яких характеризується значенням локального бінарного шаблону, обчислюють значення модифікованої Хаар-подібної ознаки шляхом підрахунку кількості пікселів у темних та світлих прямокутниках ознаки, в яких значення локального бінарного шаблону, застосованого до околу пікселя, відповідають значенню локального бінарного шаблону, яким характеризується ознака, для обчислення значень модифікованої Хаар-подібної ознаки використовують масив значень локальних бінарних шаблонів, який утворений шляхом застосування локального бінарного шаблону до пікселів півтонового зображення, а також масив інтегральних значень локальних бінарних шаблонів, негативні та позитивні навчальні набори являють собою масиви значень локальних бінарних шаблонів.
Текст
Спосіб виявлення облич людей на зображенні, в якому формують базу зображень облич фронтального вигляду та базу зображень, на яких відсутні обличчя, з яких формують навчальні та верифікаційні набори позитивних та негативних прикладів, тренують каскад сильних класифікаторів, додають до каскаду сильні класифікатори до тих пір, поки не буде досягнуто заданих значень помилки першого роду та рівня детекції для каскаду; тренують сильний класифікатор, додають слабкі класифікатори у сильний класифікатор до тих пір, поки не буде досягнуто заданих значень помилки першого роду та рівня детекції для сильного класифікатора, тренують слабкі класифікатори, додають у сильний класифікатор слабкий класифікатор, який на зваженому наборі навчальних прикладів показав найменшу помилку, формують сильний класифікатор, на верифікаційних наборах перевіряють досягнення помилки першого роду та рівня детекції для сильного класифікатора, негативний навчальний набір наступного класифікатора формують з прикладів, отриманих з бази зображень, на яких відсутні обличчя, які попередні U 2 54760 1 3 кладенні на оброблене зображення шаблонів, на введеному в комп'ютер зображенні спочатку знаходять характерні точки обличчя людини, за взаємним розташуванням яких визначають кути нахилу й повороту голови на зображенні, формують об'ємну модель середнього обличчя, масштабують її, накладають модель, повернену відповідно до певних кутів нахилу й повороту голови, на зображення, сполучають всі точки моделі з пікселями вихідного зображення, будують фронтальний вид введеного зображення обличчя й розпізнають людину. Недоліком є те, що у відомому способі комп'ютерного розпізнавання людини за зображенням її обличчя у випадку змін освітлення чи використання зображень низької якості характерні точки обличчя при кореляційному порівнянні шаблонів цих точок можуть бути не знайдені, що може призвести до збільшення помилок другого роду. Найбільш близьким до способу, що заявляється, є спосіб знаходження об'єктів на зображенні (Патент US 7099510, М.кл. G06K9/62, опубл. в 2006р.), в якому спочатку формують базу зображень облич фронтального вигляду В face , та базу зображень, на яких відсутні обличчя В nonface . Зображення з В face нормалізують таким чином, щоб очі на зображеннях знаходилися в одних і тих же просторових координатах та формують з них навчальний P та верифікаційний Vp набори позитивних прикладів. Виділяють з В nonface області зображень та формують з них навчальний N та верифікаційний Vn набори негативних прикладів. Зображення у наборах P, Vp , N, Vn приводять до розміру 24*24 пікселі. Визначають набір прямокутних Хаар-подібних ознак, кожна з яких визначається типом, розмірами та місцезнаходженням на зображенні розміром 24 на 24 пікселі. Потім тренують каскад сильних класифікаторів (КСК), для чого вcтановлюють значення помилки першого роду FP_C, рівень детекції TP_C яких при тренуванні має досягнути КСК. Додають до КСК сильні класифікатори (СК) до тих пір, поки не будуть досягнуті встановлені FP_С та ТР_С. Встановлюють значення помилки першого роду FP, та рівня детекції ТР для кожного СК. Кожен СК тренують до досягнення встановлених FP та ТР наступним чином. Формують навчальну вибірку з набору Р позитивних прикладів та набору N негативних прикладів вигляду (x1,y1), ..., (хn,уn), де х зображення, у - цільове значення, яке рівне 0 - для негативних прикладів, 1 - для позитивних прикладів. Ініціалізують ваги w1,i=1/2m, 1/2l, для уi=0, 1 відповідно, де m - кількість позитивних прикладів, l - кількість негативних прикладів, а поточний рівень помилки першого роду fpRate=1. Запускають цикл з умовою поки fpRate>FP, де t - це поточна ітерація, і - індекс прикладу, j - індекс Хаар-подібної ознаки. Нормалізують ваги прикладів навчальної w t,i вибірки: w t,i . Для кожної Хаар-подібної n w t,k k 1 54760 4 ознаки f j обчислюють її значення для всіх прикладів навчальної вибірки, визначають оптимальний поріг j , та напрямок знаку p j . Формують слабкий класифікатор (СлК) для кожної Хаар-подібної ознаки за формулою: 1 якщо p j f j ( x ) , h j ( x) pj j . 0,інакше Обчислюють помилку усіх СлК на навчальній вибірці за формулою: j w h ( x ) y i . У СК i i i i додають СлК h t з найменшою помилкою t . Оновлюють ваги прикладів за формулою: wt 1,i w t,i 1 ei t , де e i =0 якщо приклад x i розпі знаний правильно, t e i =1 в інакшому випадку, t . 1 t Формують СК: T 1, h( x ) tht ( x ) t 1 (1) 0, інакше 1 T t . 2t 1 t Використовуючи верифікаційний набір позитивних прикладів Vp підлаштовують поріг СК, для Де t log 1 , досягнення заданого рівня детекцій ТР. Обчислюють помилку першого роду fpRate СК на верифікаційному наборі негативних прикладів Vn . Переходять на наступну ітерацію циклу у випадку виконання умови fpRate>FP, в іншому випадку СК додають у КСК. Переходять до тренування наступного СК. Для формування набору негативних прикладів ТУ наступного СК виділяють з В nonface області зображень, приводять до розміру 24 на 24 пікселя формують з них негативні приклади і подають на вхід КСК, приклади, які КСК прийняв за позитивні додають у набір N. За допомогою оптичного пристрою, наприклад, відеокамери, зображення, на якому присутнє одне чи більше людських облич вводять у комп'ютер. Це зображення перетворюють у інтегральне зображення. За допомогою вікна пошуку, розмір якого спочатку дорівнює 24*24 пікселі, а потім збільшують на коефіцієнт Ms, при зміні масштабу, пересувають по зображенню уздовж його рядків з кроком Кr пікселів, виділяють область зображення, яку подають на вхід КСК. У СК з допомогою інтегрального зображення нормалізують виділені області та обчислюють значення прямокутних Хаарподібних ознак у СлК. Згідно формули (1) приймають рішення про перехід до наступного СК у каскаді у випадку h(x)=1, чи до відхилення поточної області зображення у випадку h(x)=0 і переходу до обробки наступної області зображення виділеної вікном пошуку. У випадку якщо всі СК каскаду приймуть рішення h(x)=1 область зображення признається за таку, на якій присутнє обличчя. 5 Після проходження вікна пошуку по всьому зображенню у всіх масштабах детектор обличчя виділяє на зображенні декілька детектованих областей. Застосовують правило кластеризації, в якому всю множину детектованих областей розбивають на множини, що не перетинаються. При кластеризації дві детектовані області відносять до одного кластеру, якщо вони перетинаються більше ніж на відсоток . Кластер є кандидатом для створення об'єднаної області, якщо множина детектованих областей у ньому більша порогу . Об'єднану область формують шляхом знаходження середнього арифметичного координат детектованих областей, що входять у кластер. Кожну з об'єднаних областей признають за область обличчя. Недоліком є те, що у відомому способі знаходження об'єктів на зображенні застосовані у якості СлК Хаар-подібні ознаки чутливі до змін освітлення, тому перед знаходженням обличчя потрібно виконувати спеціальну процедуру корекції освітлення зображення. Крім того етап навчання детектора є досить тривалим. В основу корисної моделі поставлена задача створення такого способу виявлення облич людей на зображенні, який забезпечить надійне та швидке (режим реального часу) виявлення обличчя, чи декількох облич у фронтальному ракурсі, в умовах змін освітлення та масштабу без використання дорогого спеціалізованого обладнання для визначення просторових координат обличчя. Поставлена задача досягається тим, що в способі виявлення облич людей на зображенні, в якому формують базу зображень облич фронтального вигляду та базу зображень, на яких відсутні обличчя, з яких формують навчальні та верифікаційні набори позитивних та негативних прикладів, тренують каскад сильних класифікаторів, додають до каскаду сильні класифікатори до тих пір, поки не буде досягнуто заданих значень помилки першого роду та рівня детекції для каскаду; тренують сильний класифікатор, додають слабкі класифікатори у сильний класифікатор до тих пір, поки не буде досягнуто заданих значень помилки першого роду та рівня детекції для сильного класифікатора, тренують слабкі класифікатори, додають у сильний класифікатор слабкий класифікатор, який на зваженому наборі навчальних прикладів показав найменшу помилку, формують сильний класифікатор, на верифікаційних наборах перевіряють досягнення помилки першого роду та рівня детекції для сильного класифікатора, негативний навчальний набір наступного класифікатора формують з прикладів, отриманих з бази зображень, на яких відсутні обличчя, які попередні сильні класифікатори каскаду прийняли за обличчя, вводять у комп'ютер зображення, за допомогою вікна пошуку у різних масштабах і положеннях виділяють області зображення, подають їх на вхід каскаду сильних класифікаторів, область зображення признають за детектовану область, якщо всі сильні класифікатори каскаду прийняли область зображення за обличчя, кластеризують детектовані області в об'єднані області, кожна з яких признається за область обличчя, причому значення порогу та парності ознак у слабких класифікаторах обчислю 54760 6 ють до навчання сильного класифікатора, для формування слабких класифікаторів використовують модифікованіХаар-подібні ознаки, кожна з яких характеризується значенням локального бінарного шаблону, обчислюють значення модифікованої Хаар-подібної ознаки шляхом підрахунку кількості пікселів, в яких значення локального бінарного шаблону застосованого до околу пікселя відповідають значенню локального бінарного шаблону, яким характеризується ознака, для обчислення значень модифікованої Хаар-подібної ознаки використовують масив значень локальних бінарних шаблонів, який утворений шляхом застосування локального бінарного шаблону до пікселів півтонового зображення, а також масив інтегральних значень локальних бінарних шаблонів, негативні та позитивні навчальні набори представляють собою масиви значень локальних бінарних шаблонів. На Фіг.1 представлені типи модифікованих Хаар-подібних ознак (МХО), на Фіг.2 показаний приклад обчислення значення локального бінарного шаблону CS-LBP з параметрами: кількість точок околу N=8, радіус околу R=1, поріг =0 після згортки з областю півтонового зображення. На Фіг.3 показаний приклад отримання масиву значень локальних бінарних шаблонів (масив ЛБШ) (розміром 3*3) з півтонового зображення (розміром 5*5 пікселів) використовуючи CS-LBP, на Фіг.4. показаний приклад обчислення масиву інтегральних значень локальних бінарних шаблонів (масив ІЛБШ) з масиву ЛБШ (розміром 3*3), при різних параметрах d, на Фіг.5 наведений алгоритм прийняття рішення КСК щодо присутності на області зображення обличчя. Спосіб здійснюється наступним чином. Спочатку формують базу зображень облич фронтального вигляду В face , та базу зображень, на яких відсутні обличчя В nonface . Зображення з В face нормалізують таким чином, щоб очі на зображеннях знаходилися в одних і тих же просторових координатах та формують з них навчальний Р та верифікаційний Vp набори позитивних прикладів. Виділяють з В nonface області зображень та формують з них навчальний N та верифікаційний Vn набори негативних прикладів. Зображення у наборах P, Vp , N, Vn приводять до розміру 24*24 пікселі. Визначають набір МХО, з такими параметрами: тип, значення CS-LBP, розміри та місцезнаходження на зображенні розміром 24 на 24 пікселі. Значення CS-LBP ознаки після застосування CSLBP до околу пікселя зображення з координатами (х,у) визначається наступним чином: (N / 2 ) 1 CS LBP( x, y ) s km km N/ 2 2m , де N m 0 кількість пікселів околу, k - значення інтенсивностей пікселів околу, 7 s km km 1 якщо k m , 54760 km N/ 2 N/ 2 , де 0,інакше поріг CS-LBP ознаки. Потім тренують каскад сильних класифікаторів {КСК), для чого встановлюють значення помилки першого роду FP_C, рівень детекції ТР_С яких при тренуванні має досягнути КСК. Додають до КСК СК до тих пір, поки не будуть досягнуті встановлені FP_C та ТР_С. З набору Р отримують набір масивів ЛБШ позитивних прикладів ІPLBP шляхом обчислення у пікселях зображень набору Р CS-LBP ознак. Таким чином масиви ЛБШ з набору ІPLBP будуть складатися зі значень CS-LBP ознак. З набору ІPLBP отримують набір масивів ІЛБШ позитивних прикладів ІP використовуючи формули: іd ( x, y ) id ( x, y 1) d ( x, y ) , (2) Id ( x, y ) Id ( x, y 1, y ) id ( x, y ) , (3) де l - масив ІЛБШ, i - допоміжний масив, d 1,...,16; d ( x, y ) 1 , якщо комірка масиву з набору IPLBP з координатами x, y дорівнює d, і 0 в інакшому випадку; x, y 1 24 ; ну,..., льові елементи масивів i та I (в яких х=0 або у=0) заповнюють нулями. З набору N формують набір масивів ЛБШ негативних прикладів INLBP З набору INLBP отримують набір масивів ІЛБШ негативних прикладів IN. Використовуючи набори ІP та IN отримують значення кожної МХО fi та визначають її оптимальний поріг θj, та напрямок знаку pj. Значення МХО обчислюють наступним чином. Відповідно до параметрів МХО використовуючи відповідний масив ІЛБШ І обчислюють кількість CS-LBP ознак у світлих та темних прямокутниках МХО. Значення МХО обчислюють за формулою: f(I)=Sw-SB, де Sw - кількість CS-LBP ознак у світлих прямокутниках МХО, SB - кількість CS-LBP ознак у темних прямокутниках МХО. Значення Sw та SB обчислюють за формулою: S=I(a2,b2)-I(a3,b3)-I(a1,b1)+I(a4,b4), (4) де (a1,b1), (a2,b2), (a3,b3), (a4,b4) - це координати чотирьох пікселів пов'язаних з відповідним прямокутником у МХО (сусідній зверху з правим верхнім пікселем прямокутника, правий нижній піксель прямокутника, сусідній зліва з лівим нижнім пікселем прямокутника, сусідній по діагоналі зверху зліва з лівим верхнім пікселем прямокутника). Встановлюють значення помилки першого роду FP, та рівня ТР для кожного СК. Кожен СК тренують до досягнення встановлених FP та ТР наступним чином. Формують навчальну вибірку з набору IPLBP позитивних прикладів та набору INLBP негативних прикладів вигляду (х1,у1), ..., (хn,уn), де х - масив ЛБШ, у - цільове значення, яке рівне 0 - для негативних прикладів, 1 - для позитивних прикладів. Ініціалізують ваги w1,i=1/2m, 1/2l, для уi=0, 1 відповідно, де m - кількість позитивних прикладів, l кількість негативних прикладів, а поточний рівень помилки першого роду fpRate=1. Запускають цикл з умовою поки fpRate>FP, де t - це поточна ітерація, i - індекс прикладу, j - індекс МХО. 8 Нормалізують ваги прикладів навчальної вибіw t,i рки: w t,i . n w t,k k 1 Формують СлК hj для кожної МХО використовуючи ІР та IN за формулою: 1 якщо p j f j , h j ( x) pj j 0, інакше Де f j - МХО, х - масив ЛБШ, j - поріг, p j напрямок знаку МХО. Обчислюють помилку усіх СлК на навчальній вибірці за формулою: w i h j (xi ) j i y i . У СК додають СлК h t з найменшою помилкою t . Оновлюють ваги прикладів за формулою: wt w t,i 1,i 1 ei t , де e i =0 якщо приклад x i розпі знаний правильно, t . Формують СК: t 1 e i =1 в інакшому випадку, t T d ( x, y ) 1, h( x ) tht ( x ) t 1 (5) 0, інакше 1 T t. 2t 1 t Використовуючи верифікаційний набір позитивних прикладів Vp підлаштовують поріг СК, для де t log 1 , досягнення заданого рівня детекцій ТР. Обчислюють помилку першого роду fpRate СК на верифікаційному наборі негативних прикладів Vn . Переходять на наступну ітерацію циклу у випадку виконання умови fpRate>FP, в іншому випадку СК додають у КСК. Переходять до тренування наступного СК. Для формування набору негативних прикладів N наступного СК виділяють з Вnonface області зображень, приводять до розміру 24 на 24 пікселя формують з них негативні приклади, перетворюють їх у масиви ІЛБШ і подають на вхід КСК, приклади, які КСК прийняв за позитивні додають у набір N. За допомогою оптичного пристрою, наприклад відеокамери, зображення на якому присутнє одне чи більше людських облич вводять у комп'ютер. Це зображення перетворюють у масив ЛБШ та з допомогою формул (2) та (3) створюють 16 масивів ІЛБШ. За допомогою вікна пошуку, розмір якого спочатку дорівнює 24*24 пікселі, а потім збільшують на коефіцієнт Ms, при зміні масштабу, пересувають по зображенню уздовж його рядків з кроком Кr пікселів, виділяють область зображення, відповідні їй частини масивів ІЛБШ подають на вхід КСК. У СК використовуючи отримані частини масивів ІЛБШ за формулою (4) обчислюють значення МХО у СлК. Згідно формули (5) приймають рішення про перехід до наступного СК у каскаді у випадку h(x)=1, чи до відхилення поточної області зображення у випадку h(x)=0 і переходу до обробки наступної області зображення виділеної вікном 9 пошуку. У випадку якщо всі СК каскаду приймуть рішення h(x)=1 область зображення признається за таку, на якій присутнє обличчя. Після проходження вікна пошуку по всьому зображенню у всіх масштабах детектор обличчя виділяє на зображенні декілька детектованих областей. Застосовують правило кластеризації, в якому всю множину детектованих областей розбивають на множини, що не перетинаються. При кластеризації дві детектовані області відносять до одного 54760 10 кластеру, якщо вони перетинаються більше ніж на відсоток . Кластер є кандидатом для створення об'єднаної області, якщо множина детектованих областей у ньому більша порогу . Об'єднану область формують шляхом знаходження середнього арифметичного координат детектованих областей, що входять у кластер. Кожну з об'єднаних областей признають за область обличчя. 11 Комп’ютерна верстка А. Рябко 54760 Підписне 12 Тираж 26 прим. Міністерство освіти і науки України Державний департамент інтелектуальної власності, вул. Урицького, 45, м. Київ, МСП, 03680, Україна ДП “Український інститут промислової власності”, вул. Глазунова, 1, м. Київ – 42, 01601
ДивитисяДодаткова інформація
Назва патенту англійськоюMethod for detecting human faces on the image
Автори англійськоюMaslii Roman Vasyliovych, Kulyk Anatolii Yaroslavovych, Biloshkurskyi Serhii Stepanovych
Назва патенту російськоюСпособ обнаружения лиц людей на изображении
Автори російськоюМаслий Роман Васильевич, Кулик Анатолий Ярославович, Белошкурский Сергей Степанович
МПК / Мітки
МПК: G06K 9/62
Мітки: виявлення, людей, зображенні, облич, спосіб
Код посилання
<a href="https://ua.patents.su/6-54760-sposib-viyavlennya-oblich-lyudejj-na-zobrazhenni.html" target="_blank" rel="follow" title="База патентів України">Спосіб виявлення облич людей на зображенні</a>