- Предуслови
- Како препознавање лица функционише са ОпенЦВ-ом
- Откривање лица помоћу каскадних класификатора у ОпенЦВ
Препознавање лица постаје све популарније и већина нас га већ користи, а да тога ни не слути. Било да је реч о једноставном предлогу за Фацебоок ознаку или Снапцхат филтеру или напредном надзору аеродромске безбедности, препознавање лица већ је учинило своју магију. Кина је у школама почела да користи препознавање лица за праћење присуства и понашања ученика. Малопродајне продавнице су почеле да користе препознавање лица како би категоризовале своје купце и изоловале људе који су имали истину превара. Са пуно више промена у току, нема сумње да ће се ова технологија свуда видети у блиској будућности.
У овом упутству научићемо како можемо да изградимо сопствени систем за препознавање лица помоћу ОпенЦВ библиотеке на Распберри Пи. Предност инсталирања овог система на преносни Распберри Пи је у томе што га можете инсталирати било где да бисте радили као надзорни систем. Као и сви системи за препознавање лица, и овај водич ће укључивати две питхон скрипте, једна је програм Траинер који ће анализирати скуп фотографија одређене особе и створити скуп података (ИМЛ датотека). Други програм је програм Препознавањекоја открива лице, а затим користи ову ИМЛ датотеку за препознавање лица и помињање имена особе. Оба програма о којима ћемо овде разговарати су за Распберри Пи (Линук), али ће такође радити на Виндовс рачунарима са врло малим променама. Већ имамо серију водича за почетнике за почетак рада са ОпенЦВ-ом, све водиче за ОпенЦВ можете погледати овде.
Предуслови
Као што је раније речено, користићемо ОпенЦВ библиотеку за откривање и препознавање лица. Зато обавезно инсталирајте ОпенЦВ Либрари на Пи пре него што наставите са овим упутством. Такође напајајте свој Пи 2А адаптером и повежите га са монитором екрана преко ХДМИ кабла, јер нећемо моћи да добијемо видео излаз путем ССХ.
Такође нећу објашњавати како тачно ОпенЦВ ради, ако сте заинтересовани за учење обраде слика, погледајте ове ОпенЦВ основе и напредне водиче за обраду слика. Такође можете научити о контурама, откривању блоб-ова итд. У овом упутству за сегментацију слика.
Како препознавање лица функционише са ОпенЦВ-ом
Пре него што започнемо, важно је схватити да су препознавање лица и препознавање лица две различите ствари. У откривању лица открива се само лице особе, софтвер неће имати представу ко је та особа. У препознавању лица софтвер неће препознати само лице већ ће препознати и особу. Сада би требало да буде јасно да морамо да извршимо откривање лица пре него што извршимо препознавање лица. Не бих могао да објасним како тачно ОпенЦВ открива лице или било који други предмет. Дакле, ако сте знатижељни да знате да можете пратити овај водич за откривање предмета.
Видео феед са веб камере није ништа друго него дугачак низ фотографија које се ажурирају једна за другом. Свака од ових слика је само колекција пиксела различитих вредности састављених на свом положају. Па како програм може да препозна лице са ових пиксела и даље препозна особу у њему? Иза њега стоји много алгоритама и покушај њиховог објашњавања је изван делокруга овог чланка, али пошто користимо ОпенЦВ библиотеку, врло је једноставно извршити препознавање лица без дубљег уласка у концепте
Откривање лица помоћу каскадних класификатора у ОпенЦВ
Само ако смо у стању да откријемо лице, моћи ћемо га препознати или упамтити. Да би открио објекат као што је лице, ОпенЦВ користи нешто што се назива Класификатори. Ови класификатори су унапред обучени скуп података (КСМЛ датотека) који се може користити за откривање одређеног објекта у нашем случају лица. Овде можете сазнати више о класификаторима препознавања лица. Поред откривања лица, класификатори могу открити и друге предмете као што су нос, очи, регистарска таблица возила, осмех итд. Листа класификатора случајева може се преузети из ЗИП датотеке испод
Класификатори за откривање објеката у Питхону
Алтернативно, ОпенЦВ вам такође омогућава да креирате сопствени класификатор који се може користити за откривање било ког другог објекта на слици тренирањем вашег каскадног класификатора. У овом упутству ћемо користити класификатор назван „хаарцасцаде_фронталфаце_дефаулт.кмл“ који ће открити лице са предње позиције. Видећемо