I dette blogginnlegget skal vi ta en enkel og grei titt på prinsippene og prosessene bak hvordan datamaskiner gjenkjenner menneskelige ansikter.
Hvilke prinsipper ligger til grunn for ansiktsgjenkjenning?
Du har sannsynligvis spilt et spill minst én gang som barn der du måtte lage et menneskeansikt. I dette spillet velger du først en ansiktsform, deretter velger du frisyre, øyne, nese og munn én etter én og plasserer dem på ansiktet. Ved å veksle mellom forskjellige frisyrer, øyne, neser og munner kan du lage ansiktet du ønsker. Måten datamaskiner gjenkjenner og sammenligner ansikter på er ikke mye forskjellig fra dette. Datamaskiner identifiserer og lagrer ansiktstrekk. Når et nytt bilde av et ansikt legges inn, sammenligner de det med de lagrede trekkene for å bestemme hvem personen er.
Et nylig eksempel på ansiktsgjenkjenningsteknologi som er lett tilgjengelig er ansiktsgjenkjenningsapplikasjonen (App). Disse appene forhåndsekstraherer og lagrer viktige trekk – som ansiktskonturer, øyne, neser og munner – fra bilder av kjendiser. Senere, når en persons ansikt blir tatt med kameraet, trekker appen ut ansiktstrekk på samme måte og sammenligner dem med de lagrede ansiktstrekkene til kjendiser for å identifisere og vise personen som passer best.
Hvordan gjenkjenner en datamaskin et ansikt?
La oss nå undersøke datamaskinens ansiktsgjenkjenningsprosess. Ansiktsgjenkjenning består av fire hovedtrinn: input, ansiktsgjenkjenning, funksjonsutvinning og sammenligning.
I inndatafasen overføres et enkelt bilde fra et bilde eller en video til datamaskinen via en inndataenhet. Generelt sett, jo høyere oppløsningen til inndataenheten og jo høyere antall bilder per sekund (FPS), desto mer nøyaktig kan ansikter gjenkjennes. Dette prinsippet ligner på hvordan en person med godt syn mer nøyaktig kan gjenkjenne ansiktet til noen som står langt unna.
I ansiktsgjenkjenningsfasen sjekker systemet først om et ansikt er tilstede i bildet eller videoen som er lagt inn. For å gjøre dette identifiserer det ansiktets omriss og viktige trekk som øyne, nese og munn. Selv om ulike ansiktsgjenkjenningsteknikker er i bruk for tiden, vil vi her fokusere på den representative Haar-lignende deteksjonsmetoden.
Haar-lignende deteksjonsmetoden bruker Haar-bølger. En bølge er et enkelt rektangulært mønster bestående av svarte og hvite områder. Disse svart-hvite områdene brukes til å identifisere områder i et bilde der det oppstår forskjeller i lysstyrke. Ved å bruke bølger i forskjellige størrelser og former over hele inndatabildet eller videoen, og deretter bare beholde stedene der lysstyrkeforskjellen mellom de svarte og hvite områdene er betydelig, kan systemet effektivt oppdage ansiktsomrisset og viktige ansiktstrekk som øyne, nese, munn og øyenbryn. Videre tillater denne prosessen også utvinning av posisjonsinformasjon om ansiktstrekk.
For eksempel, når man henter ut informasjon om øynene, plasseres de svarte områdene i bølgen slik at de korresponderer med relativt mørke områder – som pupillen – mens de hvite områdene korresponderer med lyse områder, som huden. Ved å utnytte disse lysstyrkeforskjellene kan øynenes posisjon og form oppdages effektivt.
Hvordan blir ansiktstrekk ekstrahert?
Når ansiktsgjenkjenningsfasen er fullført, avgjør systemet om det skal gå videre til funksjonsutvinningsfasen.
I fasen for ansiktsutvinning ekstraheres ansiktstrekk for å fullt utnytte ansiktskomponentene som ble identifisert under ansiktsgjenkjenningsfasen. I motsetning til ansiktsgjenkjenningsfasen involverer denne prosessen et forbehandlingstrinn. Siden rotasjonsvinkelen, størrelsen og lysintensiteten til ansiktene varierer med hvert fotografi eller video, utføres en normaliseringsprosess for å standardisere dem så mye som mulig. I tillegg kan fargefotografier eller videoer konverteres til svart-hvitt-bilder etter behov.
For eksempel konverteres det originale bildet til gråtoner, deretter beskjæres bare ansiktsområdet og endres til en ensartet størrelse, og histogramutjevning utføres for å korrigere lysstyrken. Ved å bruke posisjonsinformasjonen til ansiktskomponentene som er innhentet under ansiktsgjenkjenningsfasen, hentes ansiktstrekk ut fra bildene eller videoene som har gjennomgått denne forbehandlingen.
Hvordan brukes de ekstraherte ansiktstrekkene?
I sammenligningsfasen lagres informasjonen om disse ekstraherte ansiktskomponentene enten i en database (DB) eller sammenlignes med eksisterende ansiktsdata for å identifisere den beste matchen.
Vi har nå undersøkt prosessen med datamaskinbasert ansiktsgjenkjenning. For bare noen få tiår siden virket ideen om en datamaskin som skiller mellom mennesker som en teknologi fjernt fra virkeligheten. Men med den raske utviklingen av maskinvare, programvare og kunstig intelligens-teknologier, er ansiktsgjenkjenning nå mye brukt på ulike felt – inkludert smarttelefoner og bærbare datamaskiner, samt adgangskontroll, finansielle tjenester og flyplasssikkerhet. I dag er teknologien som gjør det mulig for datamaskiner å gjenkjenne menneskelige ansikter ikke lenger en fremtidshistorie, men har blitt en teknologi som er naturlig integrert i hverdagen vår.