Кратки водич за препознавање видео-видео записа компаније ББЦ Р&Д

Често су то задаци које људи раде без размишљања и захтевају неке од најсложенијих обрада иза сцене. Кушање хране, ћаскање с пријатељима, слушање музике и, заиста, препознавање људи. Када гледате епизоду Еастендера, видите различите глумце у различитим подешавањима, из различитих углова и при различитом осветљењу, али моментално ваш мозак подноси ове варијације да бисте знали да су на сцени Дот Цоттон и Пхил Митцхелл. Будући да не размишљамо о обради која је укључена, изненађени смо што су ови задаци много сложенији него што смо првобитно мислили када их покушамо применити у машинском учењу.

Погледајте следеће слике принца Харрија и Меган Маркле на улици. Овде можемо видети Харрија и Меган из различитих углова - спреда, са стране и са леђа - али лако их препознајемо по њиховим карактеристикама: боји коже, боји косе и тако даље. Такође узимамо у обзир одређене социјалне знакове. Публика их гледа, они су добро обучени, у центру су сваког снимка и очигледан је континуитет снимака с исте сцене. Овде имамо много слојева људске интуиције о којима често не размишљамо док откривамо културне и физичке показатеље.

Природно препознајемо Харрија и Меган, упркос различитим угловима на овим снимцима

Па како научити рачунар да научи да све то ради? Иако не можемо да нађемо алгоритам за размишљање као човек, можемо га натерати да ради оно што машинско учење најбоље ради: откривање образаца у великим, означеним сетовима података. То укључује прикупљање слика, обуку алгоритма, обраду видео записа и препознавање људи у њима. Коначни резултат је листа особа препознатих у видео снимку, заједно са временом и локацијом у кадровима који се појављују.

Већ радимо на стварању ове технологије на ББЦ-у. Наш систем, назван ФацеРец, развија Тим за истраживање интернета и услуге будућих услуга у оквиру ББЦ-јевог истраживања и развоја (уштедећемо неке притиске на тастере и једноставно их називамо тимом података). Направљен је коришћењем комбинације интерног кода и екстерног софтвера отвореног кода - посебно, Сеетафаце, Ц ++ механизма за препознавање лица.

ФацеРец ради тако што обрађује видео кроз низ алгоритамских корака, сваки решава одређени део целокупног проблема. Даћемо вам преглед како све то функционише.

1. Откривање снимака

За свако лице које се може препознати у видео снимку, прво морамо да га разделимо на његове саставне снимке (снимак је дефинисан као низ кадрова који се покрећу непрекидно). Да бисте то учинили, ФацеРец користи библиотеку за обраду медија ФФмпег, која користи функцију за враћање свих почетних и крајњих времена снимка унутар одређеног видео записа.

2. Откривање лица

Следећи корак је провера сваког оквира да бисте видели да ли садржи људска лица. Ово је тежак проблем - да ли бисмо требали покушати открити свако лице на фудбалској утакмици? Да ли се на мајици рачуна лице? Да ли фотографије на предњој страни новина?

Избегавајући сваки снимак, ФацеРец узима кадрове из снимка и пушта их у СеетаФаце, који затим враћа ограничене оквире тамо где мисли да су лица. СеетаФацеов механизам за откривање лица препознаје да ли лице „броји“ довољно да га укључи у свој излаз. Имајте на уму да СеетаФаце не каже ко мисли да су откривени људи, већ само да верује да је открио лице на одређеној локацији у оквиру.

3. Креирајте трагове лица

Сада када смо сакупили све кадрове који садрже лица, следећи задатак је да спојимо та откривена лица како бисмо створили праћење лица. Траг лица је континуирани ток ограничавајућих кутија око лица док се креће унутар кадра.

ФацеРец узима сваки оквир за ограничавање лица и покушава га пресликати на следећи оквир логичког ограничавања у следећем оквиру. То није увек сасвим очигледно, јер лица могу бити привремено затамњена или гранична поља могу прелазити једно у друго док се једна особа креће иза друге.

Ограничене кутије прате лице кроз снимак

Под хаубом се овај проблем решава применом Длиба и методе Луцас-Канаде. Ово ствара праћења лица која су дефинисана временским тачкама, списком оквира и оквирима за ограничавање лица.

4. Направите вектове лица за нумере

Алгоритми машинског учења често раде претварањем улазног материјала у математичке векторе. Затим науче који делови овог „векторског простора“ припадају одређеним категоријама или улазним типовима. У погледу лица, научили би да вектори који представљају лице принца Харрија имају одређено подручје, док су Меган вектори склони другом делу. Такође бисте очекивали да ће вектори лица принца Вилијама бити ближи Харрију него Мегану, пошто су повезани и деле сличне карактеристике.

Да би створио векторе за откривена лица, ФацеРец користи СеетаФаце-ову библиотеку за идентификацију лица. ФацеРец уноси изрезане фотографије откривених лица унутар својих ограничавајућих оквира од средине тачке лица. Враћа назад 2024-димензионални вектор који представља обележја тог лица.

5. Препознајте лица људи у векторима праћења лица

Сада имамо фактор вектора за сваки откривени траг лица. Следећи корак је претварање ових вектора у стварна имена препознатих лица, као и означавање лица која не препознајемо (и зато их не можемо означити).

Прво питање овде је: само кога препознајемо? Сигурно не можемо да направимо модел да препознамо све који су икада живели - а нити бисмо то желели. Па кога ми сматрамо довољно важним за овај систем препознавања лица?

Реално, ово треба да спроведу новинари ББЦ Невс и људи о којима најчешће извештавају. Такође морамо бити свесни да непознати људи свакодневно извештавају вести, а када то учине, можда нећемо имати претходне слике о њима. Имајући у виду та ограничења, тим за податке се током тренинга ФацеРец фокусирао углавном на познате личности, међународне лидере, америчке политичаре у Парламенту и Дом лордова.

Да би препознали ове људе, требало је да прикупе податке о обуци о свакој особи - односно, доста етикетисаних фотографија те особе које садрже само ту особу. Тим за прикупљање података прикупио је хиљаде фотографија, а затим изградио сопствени систем за једноставно прегледавање и означавање појединачних фотографија. Несексуална истина машинског учења је да је прикупљање квалитетних, обележених података често најскупљи, мукотрпан, а опет важан део изградње добро делујућег АИ система.

Након прикупљања фотографија, Дата тим их је затим убацио у класификатор машинског учења који се зове машина за вектор подршке за креирање обучених модела. Када се храни са вектора лица из компаније СеетаФаце, ови модели предвиђају име особе на оригиналној слици лица или кажу да ли су уопште препознали лице.

ИРФС је створио два модела:

  1. Модел архиве: Познати људи од 20. века па надаље, изабрани од људи из Архива ББЦ. Овај модел је садржао отприлике 1.000 људи.
  2. Модел вести: Још увек у развоју, ово ће се проширити и обухватиће преко 2.000 чланова британског парламента и регионалних скупштина, Дома лордова и глобалних лидера. Слике са тренинга су добијене из ББЦ Невс-а, Фацтуал-а и Драме.

Ови обучени модели се затим користе за предвиђање људи у видео записима.

6. Трагови лица кластера

Сада када су све трагове лица означене, последњи корак је прикупљање свих песама исте особе.

Да бисмо то учинили, све векторске видео векторе снимили смо у један векторски простор који ћемо назвати лицем простора ради забаве. За визуализацију простора лица можемо користити алат назван Тенсорбоард, део библиотеке машинског учења Тенсорфлов.

Гледајући овај простор лица, надамо се да су вектори исте особе довољно близу и довољно удаљени од других људи да их можемо аутоматски груписати. То је познато у машинском учењу као проблем кластера.

Ниже можемо видети векторе који су пројектовани у овај простор за лице о видеу о Харрију и Мегану. И видимо да је већина Меган стаза састављена заједно, што их чини лако закупити. То је један начин на који знамо да креирани вектори лица раде добро.

Визуализација лица помоћу ТенсорБоарда

Они који су упознати са удруживањем видеће потешкоће у нашем проблему удруживања лица. За сваки ће видеозапис постојати различит број кластера различитих величина - са мноштвом вектора који ће се појавити једном и који уопште не припадају групи.

Уместо да падне кроз мрачну рупу покушавајући да савршено реши овај проблем, дата тим је одлучио да се укључи са неколико хеуристика. ФацеРец проблем дели на две одвојене категорије: лица људи које препознаје и лица људи које то не чини. За препозната лица она једноставно групира све записе лица који имају исту предвиђену етикету (име). За непрепозната лица користи технику која се назива хијерархијско групирање преко вектора лица да би их груписала, али не и давала им ознаке.

7. Изнесите информације

Последњи корак за ФацеРец је пуњење свих информација прикупљених током различитих корака. Ово долази у облику датотеке ЈСОН која садржи:

Листа нумера у видеу. За сваку нумеру има:

  • Предвидјена особа за ту стазу
  • Повјерење у предвиђање
  • Пратите УУИД
  • Лице-вектор за ту нумеру
  • Листа оквира у том запису

На листи оквира, информације о сваком кадру укључују:

  • Вектор лица за тај оквир ако је детектиран
  • Координате оквира за лице за лице
  • Вријеме у кадру се појављује кадра

Шта можемо учинити са овим подацима? Можете погледати наш следећи блог да бисте видели наше идеје.

Упаковати

То је стварно о томе. Надамо се да смо вам помогли да схватите многе делове који иду у систем за препознавање видео записа. А можда смо вас и више освештали о свим тешким дизањема и нејасноћама које ваш мозак решава стотине пута дневно приликом препознавања својих пријатеља и вољених особа.

Након разумевања унутрашњег рада система ФацеРец, задатак Невс Невс-а је био да види где ова технологија може да дода пословну вредност у ББЦ-у. Како да покажемо способности ФацеРец-а интуитивним демо? У које би производне системе могао да видимо ФацеРец? Чије би токове рада могао да реши? И што је најважније, шта људи осећају када користе препознавање лица? Говоримо о изазовима увођења нове технологије у велику организацију и питањима са којима смо се суочили приликом израде прототипа препознавања лица у „Препознавање лица - од какве користи имају Невсроомс?“.