FI123982B - Kasvojen tunnistaminen digitaalisissa kuvissa - Google Patents

Kasvojen tunnistaminen digitaalisissa kuvissa Download PDF

Info

Publication number
FI123982B
FI123982B FI20096046A FI20096046A FI123982B FI 123982 B FI123982 B FI 123982B FI 20096046 A FI20096046 A FI 20096046A FI 20096046 A FI20096046 A FI 20096046A FI 123982 B FI123982 B FI 123982B
Authority
FI
Finland
Prior art keywords
face
neighborhood
pixels
coefficients
image
Prior art date
Application number
FI20096046A
Other languages
English (en)
Swedish (sv)
Other versions
FI20096046A (fi
FI20096046A0 (fi
Inventor
Matti Niskanen
Markus Turtinen
Jari Hannuksela
Original Assignee
Visidon Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visidon Oy filed Critical Visidon Oy
Priority to FI20096046A priority Critical patent/FI123982B/fi
Publication of FI20096046A0 publication Critical patent/FI20096046A0/fi
Priority to US13/500,035 priority patent/US8582836B2/en
Priority to CN201080048190.4A priority patent/CN102667810B/zh
Priority to PCT/FI2010/050765 priority patent/WO2011042601A1/en
Priority to EP20100821621 priority patent/EP2486514A4/en
Publication of FI20096046A publication Critical patent/FI20096046A/fi
Application granted granted Critical
Publication of FI123982B publication Critical patent/FI123982B/fi

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/467Encoded features or binary features, e.g. local binary patterns [LBP]

Description

Kasvojen tunnistaminen digitaalisissa kuvissa
Ala
Keksintö liittyy yleisesti kasvojen tunnistamiseen digitaalisessa kuvassa.
Tausta 5 Kasvojen ilmaiseminen on haastava tehtävä useasta syystä. Varsinaisen kasvon ilmaisun, joka tarkoittaa että löydetään että kuvassa on kasvot, lisäksi voidaan haluta tunnistaa kasvot siten, että tunnistettu kasvo voidaan liittää tiettyyn henkilöllisyyteen (tiettyy henkilöön). Tällaista kasvojen tunnistamista käytetään useissa eri sovelluksissa, joista muutamia esimerkkejä on turvallisuus 10 järjestelmät, biometrinen tunnistaminen, henkilöllisyyden todennus, metatiedon generointi kuvajoukolle ja kasvojen samankaltaisuuden mittaaminen.
Kasvojen tunnistamista voidaan pitää objektien ilmaisun erityistapauksena. Kasvojen tunnistaminen on kuitenkin huomattavasti haasteellisempaa kuin yksinkertainen objektien ilmaisu, sillä kasvon 15 ominaispiirteet ovat yksityiskohtaisempia kuin yksinkertaisen objektin, kuten esimerkiksi kuution. Lisäksi kasvojen ulkonäkö muuttuu ajan suhteen ja kasvot myös ovat myös muodoltaan muuttuvia. Niiden tunnistaminen on siten hankalampaa kuin keinotekoisten objektien tunnistaminen. Vierekkäisillä pikseleiliä on siten erilainen riippuvuus toisistaan kuin yleisessä objektien 20 ilmaisussa. Lisäksi, yleinen objektien ilmaisu ei vaadi objektien identiteetin tulkintaa.
Kasvojen tunnistamisessa kasvoja kuvaavat piirteet irrotetaan tyypillisesti kuvasta ja niitä verrataan ennalta määrättyyn piirretietokantaan. Nykyiset kasvojen tunnistamisteknologiat käyttävät esimerkiksi local binary pattern 25 (LBP) tekniikkaa, jossa informaatio saadaan vertaamalla yhtä kuvan paikkaa (yksi pikseli) yhteen naapuripikseliin. Tässä lähestymistavassa sellaisenaan on C\| <- heikkouksia liittyen huonoon naapuruston rakenteen huomioon ottamiseen ja ^ erottelevien piirteiden puutteeseen, joka johtaa huonoon tarkkuuteen. LBP:n Y lisäksi muita lähestymistapoja, kuten local phase quantization (LPQ) - tekniikkaa 30 tai dekorreloitua LPQ - tekniikkaa on sovellettu kasvojen tunnistamiseen. Näiden x ratkaisujen käyttäminen kasvojen tunnistamiseen sisältää kuitenkin heikkouksia liittyen esimerkiksi liialliseen piirteiden ja datan määrään, jotka johtavat hitaaseen ^ käsittelyyn LBP:hen verrattuna. Lisäksi LPQ ei tuota yhtä tarkkoja tuloksia kuin LBP.
o
Lisäksi nämä menetelmät sellaisenaan kärsivät esimerkiksi epätasaisen o 35 valaistuksen ja kasvojen vaihtuvan tarkastelukulman aiheuttamista ongelmista.
Näin ollen tarvitaan uusi ratkaisu kasvojen tunnistamiseen.
2
Keksinnön lyhyt selostus
Keksinnön tavoite on tarjota parannettu menetelmä kasvojen tunnistamiseen.
Esillä olevan keksinnön eräänä puolena esitetään menetelmä, joka on 5 ilmaistu patenttivaatimuksessa 1.
Esillä olevan keksinnön eräänä puolena esitetään laite, joka on ilmaistu patenttivaatimuksissa 8 ja 10.
Esillä olevan keksinnön eräänä puolena esitetään tietokoneohjelmatuote, joka on ilmaistu patenttivaatimuksessa 11.
10 Keksinnön eri suoritusmuodot ovat kuvattuina epäitsenäisissä vaatimuksissa.
Kuvioiden lyhyt selostus
Keksintöä selostetaan nyt lähemmin edullisten suoritusmuotojen 15 yhteydessä viitaten oheisiin piirroksiin, joista:
Kuvio 1 esittää digitaalisen kuvan;
Kuviot 2A ja 2B esittävät kasvokuvan normalisoinnin erään suoritusmuodon mukaisesti;
Kuviot 3A ja 3D esittävät naapuruston muodostelmia; 20 Kuvio 4A esittää painotettujen pikseliarvojen kombinaatiota erään suoritusmuodon mukaisesti;
Kuvio 4B esittää painotettujen pikseliarvojen kombinaatiota erään suoritusmuodon mukaisesti;
Kuvio 5 esittää kasvojen tunnistuslaitteen erään suoritusmuodon 25 mukaisesti; ja
Kuvio 6 esittää menetelmän kasvojen tunnistamiseen digitaalisesta kuvasta.
Suoritusmuotojen kuvaus o 30 Seuraavat suoritusmuodot ovat esimerkinomaisia. Vaikkakin kuvaus voi A viitata "erääseen", "yhteen" tai "joihinkin" suoritusmuotoihin useissa kohdissa 1 tekstiä, tämä ei välttämättä tarkoita, että kukin viittaus on tehty samoihin c\j ' ° suoritusmuotoihin tai että tietty piirre soveltuisi ainoastaan yhteen £ suoritusmuotoon. Eri suoritusmuotojen yksittäiset piirteet voidaan yhdistää 35 tuottamaan muita suoritusmuotoja.
o Kasvojen tunnistaminen prosessoidaan korkean prosessointikyvyn § omaavissa laiteissa, kuten tietokoneissa. Kuitenkin tänä päivänä asiakkaiden ^ vaatimukset digitaalikameroille ja matkapuhelimille ovat kasvamassa ja tämän vuoksi on toivottavaa, että teknologiaa kasvojen tunnistamiseen voidaan soveltaa 40 myös rajallisen prosessointikyvyn laitteissa, kuten matkapuhelimissa. Keksinnön 3 mukaista ratkaisua kasvojen tunnistamiseen voidaan soveltaa laitteissa, joilla on alhaiset prosessointikyvyt.
Kuvio 1 esittää digitaalisen kuvan 100. Kuva voidaan rakentaa useista pikseleistä 102A-102C (tästä eteenpäin 102). Digitaalinen kuva 100 voi käsittää 5 tuhansia pikseleitä 102. Digitaalinen kuva 100 voidaan konstruoida esimerkiksi 1920x1080 pikselistä, kuten huipputeknisissä teräväpiirtokuvissa, jossa arvot viittaavat pikselien 102 lukumäärään horisontaali- ja vertikaalitasoissa, tässä järjestyksessä. Toisin sanoen, pikselien 102 lukumäärä digitaalisessa kuvassa 100 voi määrittää digitaalisen kuvan 100 resoluution. Mitä suurempi pikselien 102 10 lukumäärä on, sitä tarkempi digitaalisen kuvan 10 Oresoluutio on.
Digitaalinen kuva 100 voi lisäksi käsittää objektin, kuten ihmiskasvot. Objekti voi luonnollisesti olla myös muu kuin ihmiskasvo. Objekti voi siis olla mikä tahansa objekti, joka on näkyvissä digitaalisesta kuvasta 100. Selkeyden vuoksi oletetaan että objekti kuvassa on kasvo 104.
15 Erään suoritusmuodon mukaan, henkilön kasvot 104 tunnistetaan digitaalisesta kuvasta 100, joka koostuu useista kuvapikseleistä 102. Tunnistaminen tarkoittaa, että henkilön identiteetti voidaan saada selville tai varmistettua henkilön kasvokuvan 104 perusteella. Tätä tietoa voidaan käyttää useissa sovelluksissa mukaan lukien turvallisuusjärjestelmät.
20 Lisäksi kasvot 104 voidaan ilmaista digitaalisesta kuvasta 100 käyttäen tarkoituksenmukaista saatavilla olevaa objektin ilmaisumenetelmää. Kasvo 104 voi käsittää tiettyjä kasvopiirteitä 106. Esimerkinomainen kasvopiirre 106 voi olla silmä, nenä, suu, korva, hius, etäisyys silmien välillä, jne. Yleisesti ottaen kasvopiirre 106 voi olla mikä tahansa pikselikombinaatio, joka edustaa objektia 25 104. Kasvopiirre 106 ei siis välttämättä ole mikään kasvon 104 konkreettinen osa kuten silmä, mutta kasvopiirre 106 voi esiintyä jos tietyt pikselit omaavat tietyt ominaisuudet. Nämä ominaisuudet voivat olla opittuja ennen kasvojen tunnistusprosessia.
Kasvopiirre 106 voi sijaita tietyssä kohtaa kasvoa 104. Esimerkiksi jos ^ 30 ilmaistava kasvopiirre 106 on silmä, niin silloin kasvopiirre 106 voi ympäröidä ^ pikseliä 108. Lisäksi objektin havainnointialue ja kuvan resoluutio voidaan ^ määrittää etsittävän kasvon koon perusteella.
g Erään suoritusmuodon mukaan kuva 100 jaetaan vähintään yhteen i alilohkoon 110A-110P. Kuvio 1 esittää esimerkkinä toimivan digitaalisen kuvan 100
CC
35 jaon alilohkoihin 110A-110P (tästä eteenpäin 110). Kukin alilohko 110 voidaan ^ käsitellä erikseen kasvojen tunnistusprosessissa, kuten jäljempänä kuvataan, o
Alilohkot 110 eivät välttämättä ole saman kokoisia vaikka siten onkin esitetty o kuviossa 1. Yksi alilohko 110A voi olla suurempi kuin alilohko 110B. Lisäksi
C\J
alilohkojen 110 muodot voidaan valita itsenäisesti. Toisin sanottuna, yksi alilohko 40 110A voi olla suorakaiteen muotoinen, ja toinen alilohko 110B voi olla eri 4 muotoinen, kuten soikio, kolmio, ympyrä jne. Lisäksi alilohkot 110 voivat sisältää pikseleitä, jotka eivät sijaitse samassa fyysisessä kokonaisuudessa. Toisin sanoen, alilohkot 110B ja HOP voi olla konfiguroitu yhdeksi alilohkoksi kahden erillisen alilohkon sijaan vaikka alilohkojen 110B ja 100P pikselit 102 eivät sijaitsekaan 5 vierekkäin kuvassa 100. Jako alilohkoihin voi vaihdella sen mukaan, missä kasvo sijaitsee kuvassa, siten että kukin lohko sisältää tietyn osan (tiettyjä osia) kasvosta.
Käytännössä jako alilohkoihin 110 voidaan suorittaa normalisoidulle kuvalle, jossa kasvot on kiinnitetty tiettyyn paikkaan. Näin kukin alilohko koostuu tietystä (tietyistä) tunnetusta kasvon osasta.
10 Alilohkojen 110 määrä voi olla esimerkiksi sata, siten että kuva 100 jaetaan 10 kertaa 10 alilohkoon 110 horisontaalisessa ja vertikaalisessa tasossa, tässä järjestyksessä. On myös kuitenkin mahdollista, että on vain yksi alilohko 110, missä tapauksessa kuva 100 on itsessään alilohko 110.
Kuva 100 voidaan muuntaa harmaasävykuvaksi. Harmaasävykuvassa 15 kunkin pikselin arvo on yksi otos edustaen tietoa pikselin intensiteetistä. Harmaasävykuvat muodostuvat useista harmaan eri asteista, vaihdellen heikoimman intensiteetin mustasta vahvimpaan valkoiseen. Erään suoritusmuodon mukaisesti kuvaa ei kuitenkaan tarvitse muuttaa harmaasävykuvaksi ennen tunnistamista. Tunnistaminen voidaan suorittaa myös digitaaliselle värikuvalle yhtä 20 lailla, tai värikanavat voidaan yhdistää jollain toisella tapaa, jolloin niistä johdetaan yksi tai useampia esityksiä kuvan sisällöstä.
Kuvio 2 esittää kasvokuvan normalisoinnin erään suoritusmuodon mukaisesti. On selvää, että kasvo 200 kuvassa ei aina ole symmetrinen kasvojen 200 keskiviivan 202 suhteen. Toisin sanoen kasvojen 200 kohdistaminen, 25 kallistaminen ja sijainti kuvassa voi vaihdella eri kuvien välillä.
Syöte kasvojen tunnistusprosessiin voi olla kuva, josta kasvot on ilmaistu, toisin sanottuna on määritelty että kuvassa oleva objekti on kasvo. Syöte voi olla kuten esitetty kuviossa 2A. Kuvio 2A näyttää alkuperäisen kasvokuvan, jossa kasvo 200 on kallistunut keskiviivan 202 suhteen. Tästä syystä kasvopuolisko ^ 30 204A ei ole symmetrinen kasvopuoliskon 204B suhteen.
^ Erään suoritusmuodon mukaan vähintään yksi kasvopiirre 206A ja ^ 206B, kuten silmä, on ilmaistu kuvasta ja vähintään yhden kasvopiirteen 206A ja g 206B paikka säädetään ennalta määrättyyn kohtaan. Tämä on näytetty kuviossa 2B, x jossa silmät 206A ja 206B on säädetty ennalta määrättyihin paikkoihin kuvassa.
CC
“ 35 Ennalta määrätty paikka voi olla määrätty vähintään yhden pikselin perusteella.
^ Toisin sanottuna säätö kiinnittää tyypilliset piirteet kasvosta 200 tiettyyn paikkaan 0 £ kuvan koordinaatistossa. Tarkoituksena on tuottaa mahdollisimman tasalaatuinen 01 o kuva aiheuttamatta vääristymiä piirteisiin, jotka erottelevat kasvot toisista C\1 kasvoista. Lisäksi säätämisen seurauksena tietyn kasvon koko on sama riippumatta 40 siitä, mikä sen koko tai sijainti oli alkuperäisessä kuvassa.
5
Eräässä suoritusmuodossa silmät 206A ja 206B on kiinnitetty ennalta määrättyihin paikkoihin määrittelemällä ensin karkea vertikaalinen keskikohta kasvokuvasta. Keskikohta rajoittaa silmien 206A ja 206B sijaintia. Kuvan vertikaalinen keskikohta voidaan määrittää tarkastelemalla kasvojen yläosaa 5 alkuperäisessä (kääntyneessä) kasvokuvassa. Kuten aikaisemmin esitettiin, kuvan pikselit voi kuvata intensiteettiarvoja. Vastaavasti, tarkasteltavan alueen pikseleiden intensiteettiarvojen keskiarvoja keskihajonta selvitetään, ja selvityksen tuloksen perusteella saadaan karkea vertikaalinen keskikohta. Tämän perustuu siihen, että tyypillisesti keskimääräinen intensiteetti nenän alueella on suuri ja 10 keskihajonta pieni. Toisin sanoen valaistus on tasaista nenän alueella. Muualla kasvojen alueella valaistus on epätasaisempaa. Nenä ilmaisee epäsuorasti karkean vertikaalisen keskikohdan kasvoille.
Karkean keskiviivan löytämisen jälkeen silmiä 206Aja 206B etsitään. Jos on useita pikseleitä, joissa silmä 206A tai 206B sijaitsee, otetaan arvojen 15 keskiarvo. Tämä tehdään, koska usein silmä koostuu useista kuvan pikseleistä.
Seuraavana silmien 206A ja 206B ilmaisun jälkeen, silmät 206Aja 206B siirretään ennalta määrättyihin paikkoihin. Luonnollisesti muut kasvon piirteet, kuten huulet, nenä, korvat jne. siirtyvät myös. Liikutus (säätö) suoritetaan interpoloimalla alkuperäisiä pikseleitä kohdekoordinaatistoon, jossa silmät 206Aja 20 206B ovat ennalta määrätyissä paikoissa. Kohdekoordinaatiston koko voidaan valita. Se voi olla esimerkiksi 150 x 130 pikseliä. Tuloskuva on näytetty kuviossa 2B.
Erään suoritusmuodon mukaan normalisointiproseduuri sisältää lisäksi ainakin yhden alilohkon ainakin yhden pikselin intensiteettiarvon muokkausta siten että tuotetaan ainakin yksi valaistuksesta riippumaton pikseliarvo. Kuten sanottu, 25 normalisointi voidaan suorittaa erikseen kullekin kuvan 100 alilohkolle 110, kuten kuviossa 1.
Erään suoritusmuodon mukaan, normalisointiproseduuri sisältää lisäksi ilmaistun kasvon 200 kasvopuoliskon 204A sovittamisen toisen puoliskon 204B kanssa, käyttäen hyväksi kasvon 200 symmetrisyysominaisuutta. Käytännössä, yksi 30 puolisko 204A havaitusta kasvosta 200 sovitetaan toiseen puoliskoon 204B. Tämä ^ voi tarkoittaa korvien paikan säätämistä, huulien horisontaalista säätämistä, jne.
^ Tämä mahdollistaa yksityiskohtaisemman paikan säätämisen verrattuna g mainittuun pelkästään silmien 206A ja 206B paikan perusteella tehtävään säätöön, x kun tiedetään onko toinen kasvopuolisko 204A havaitusta kasvosta 200 tr 35 korkeammalla kuin toinen puolisko 204B, tai onko keskiviiva 202 liikkunut tms.
^ Lisäksi tunnettuja kasvopiirteitä voidaan etsiä kuvasta ennalta o g määrätyistä paikoista, eli sieltä missä niiden oletetaan olevan. Kasvopiirteiden o paikkatieto mahdollistaa vielä pidemmälle viedyn kuvan normalisoinnin ottamalla
CVJ
huomioon kasvon 200 3-ulotteiset piirteet.
6
Peräkkäisen normalisoinnin etuna on, että tarkka kasvokuva saadaan rajatulla laskentamäärällä. Ennustamalla sijainti vähintään yhdelle kasvopiirteelle, kuten silmälle 206A ja 206B, hakualue saadaan kooltaan huomattavasti pienemmäksi verrattuna koko kuvaan, mikä johtaa nopeaan ja tarkkaan hakuun.
5 Viitaten kuvioon 3, kullekin tarkasteltavalle pikselille 108 vähintään yhdessä alilohkossa voidaan valita naapurusto 300, joka on tunnetun kokoinen ja muotoinen. Kuviossa 3A naapurusto 300 muodostuu yhdeksästä pikselistä, eli tarkastelun alla olevalla pikselillä 108 on kahdeksan naapuria. Toisin sanoen naapuruston koko on kahdeksan pikseliä. Naapurusto kuviossa 3A on suhteellisen 10 säännöllinen ja yleisesti nähty kuvankäsittelyssä. Keksinnön erään suoritusmuodon mukaisesti naapuruston ei kuitenkaan tarvitse olla säännöllisen kokoinen. Naapurusto 300 voi siis olla mielivaltaisen kokoinen ja muotoinen. Tämä näytetään kuvioilla 3B-3D, joissa naapurustolla 300 on monia esimerkinomaisia muotoja ja kokoja. Yhteistä kaikille kuvioissa 3A-3D kuvatuille naapurustoille 300 on se, että ne 15 edustavat naaourustoa tarkkailun alla olevalle pikselille 108. Pikselin 108 ei tarvitse olla osana naapurustoa 300, kuten esitetty kuviossa 3C vasemmalle kallistetuin diagonaalisin viivoin. Yleisesti ottaen naapuruston 300 koko ja muoto eivät ole rajoitettuja millään muotoa, ja naapurusto voidaan valita sen mukaan millaista objektipiirrettä etsitään. Lisäksi, se voidaan oppia ennen kasvojen 20 tunnistusprosessia.
Kullakin naapuruston 300 pikseleistä voi olla yksi arvo, joka edustaa informaatiota pikselin intensiteetistä. Toisin sanoen, pikseliarvo voi olla yksi näyte, joka edustaa pikselin intensiteettiarvoa. Eli pikseliarvo voi olla skalaari, joka edustaa pikselin intensiteettiä. Pikseliarvot kustakin naapurustosta voidaan lukea 25 lukulaitteella tai vastaavalla. Arvot voidaan lukea datatallenteesta tai kuvatiedostosta. Vaihtoehtoisesti pikseliarvot voidaan lukea visuaalisesti tutkimalla kuvaa, kun lukulaite on varustettu sensorilla, joka pystyy visuaalisesti tutkimaan kuvaa.
Erään suoritusmuodon mukaan voidaan lisäksi valita ainakin yksi ^ 30 joukko kertoimia dekorreloidusta local binary pattern (LBP) matriisista siten, että
O
^ ainakin yhtä kerroinjoukkoa käytetään painottamaan naapuruston pikseliarvoja.
Y Kertoimia käytetään siten, että kutakin naapuruston pikseliarvoa painotetaan g ainakin yhdellä kertoimella. Eli naapuruston G pikselien lukumäärä ja
x kerroinjoukon A=[ai, a2, ..., an] kertoimien lukumäärä, missä n on naapuruston G
CC
35 pikselien lukumäärä, voivat olla samat. Samalla tavalla naapuruston G pikseliarvot ^ voidaan esittää [glf g2,..., gn]· o
Ainakin yhden kerroinjoukon valinta voidaan toteuttaa siten, että o naapuruston paikallinen rakenne otetaan huomioon, ei ainoastaan naapuruston
CVJ
kokoaja muotoa, vaan myös naapuruston pikseliarvot. Eli sen lisäksi, että valitaan 40 naapuruston koko ja muoto etsittävän piirteen koon ja muodon perusteella, 7 kerroin ai voidaan valita siten, että se ottaa vastaavan gi:n ja naapuruston pikseliarvot [g2, gn] huomioon. Eli kertoimet A voidaan valita siten että kerroinjoukko A korostaa tiettyjä piirteitä. Tyypillisesti kukin kerroinjoukko A ilmaisee tiettyä muotoa tai tiettyä taajuuskaistaa naapurustossa. Kertoimet [alr a2, 5 ..., an] voivat näyttää mielivaltaisilta, mutta oikein valittuna kombinaatio [ai, a2,..., an] voi muodostaa voimakkaan kuvaajan. Paikallisen informaation etu on siinä, että se on robusti ja piittaamaton objektin luminanssin vaihtelulle.
Erään suoritusmuodon mukaan, ainakin yksi kerroinjoukko [Ai, ..., >4n] valitaan dekorreloidusta LBP matriisista. Local Binary Pattern (LBP) - tekniikassa, 10 tarkasteltavan pikselin arvoa verrataan kaikkien ympäröivien pikseleiden arvoihin ja vertailutulokset asetetaan riveiksi tai sarakkeiksi matriisiin muodostaen matriisin. Vastaavasti, kerroinjoukkojen arvot ovat rajoittuneet vain muutamaan mahdolliseen, ja ovat pääosin nollia, eli ne ovat muotoa [10000000 -1],[0 10 0 0 00 0-1], jne.
15 Tässä naapurusto johon LBP:tä sovelletaan ei ole kiinteä, vaan voi vaihdella kuten selitetty alla, viitaten kuvioon 3. LBP:n kanssa käytetään tyypillisesti kolme kertaa kolme pikselin kokoista naapurustoa. Naapurusto ei ole kuitenkaan välttämättä kiinnitetty kolme kertaa kolme naapurustoon, mutta kokoja muoto voi olla ennalta määrätty. Esimerkiksi, muoto voi olla kuten esitetty kuviossa 3B ja 3D. 20 Lisäksi, valittujen naapuripikseleiden etäisyys pikselistä 108 voi vaihdella. Toisin sanottuna naapuripikselien ei tarvitse olla rajakkain pikselin 108 kanssa.
Koska vierekkäiset pikselit tyypillisesti riippuvat toisistaan, saatava kerroinjoukko voi olla hyvin riippuvainen toisistaan. Seurauksena kerroinjoukko LBP matriisista sellaisenaan ei välttämättä tuota riittävää määrää informaatiota 25 luotettavan kasvopiirteen haun suorittamiseksi.
Siten, keksinnön erään suoritusmuodon mukaisesti, siinä tapauksessa, että on useita kerroinjoukkoja, kerroinjoukot voivat olla korreloimattomia. Eli kerroinjoukot voivat olla riippumattomia toisistaan. Tällä tavalla kukin kerroinjoukoista [AI, A2, ..., Am] voi ottaa koko naapuruston huomioon 30 vähentämällä nollakertoimien lukumäärä kerroinjoukoissa. Tämä johtaa ^ erottelukykyisempien kasvopiirteiden löytymiseen kuvasta. Toisin sanoen, ^ riippumattomien kerroinjoukkojen käyttö voi mahdollistaa tarkemman kasvojen £] tunnistamisen samalla määrällä kasvopiirteitä kuin tunnetun tekniikan ratkaisuissa, x tai saman ilmaisutarkkuuden pienemmällä määrällä kasvopiirteitä kuin tunnetun
CC
“ 35 tekniikan ratkaisuissa. Esimerkiksi ainakin yksi objektipiirre, jossa on pienin määrä ^ käyttökelpoista informaatiota ja mikä on saatu korreloimattomilla o g (riippumattomilla) kerroinjoukoilla A, voidaan hylätä käytettävien kasvopiirteiden o joukosta, siten säästäen muistikapasiteettia ja nopeuttaen kasvontunnistusprosessia.
8
Riippumattomien kerroinjoukkojen [Ai, A2, ..., Am\ saamiseksi, LBP matriisi voidaan valkaista, jotta saadaan korreloimattomia matriisielementtejä. Kuten aiemmin selitetty, local binary pattern -tekniikka voi tuottaa kerroinjoukkoja, jotka ovat yksinkertaisia ja riippuvaisia toisistaan ja täten eivät välttämättä tarjoa 5 riittävästi dataa, jotta saataisiin tarpeellinen määrä erottelukykyisiä piirteitä kasvojen tunnistamiseksi tehokkaasti ja tarkasti. Valkaisemalla matriisi kerroinjoukot voidaan saada riippumattomiksi (korreloimattomiksi) toisistaan. Tämän johdosta voidaan valita ainakin yksi kerroinjoukko valkaistusta matriisista. Valittua ainakin yhtä kerroinjoukkoa voidaan soveltaa kasvojen tunnistamiseen 10 painottamalla naapurustoa. Valkaistava matriisi voidaan kuitenkin hankkia myös muilla keinoin kuin local binary pattern -tekniikan tekniikalla. Matriisi voidaan esimerkiksi oppia ennen kasvojen tunnistusprosessia siten että matriisi voi korostaa tiettyjä kasvopiirteitä.
Erään suoritusmuodon mukaan, LBP matriisi voidaan valkaista 15 (dekorreloida) käyttämällä Markovin mallia matriisiin. Markovin mallin mukaisesti pikseliarvojen välinen riippuvuus liittyy niiden keskinäisiin etäisyyksiin.
Vaihtoehtoisesti, toisen suoritusmallin mukaan, LBP matriisi voidaan dekorreloida käyttäen dekorrelointikertoimia, jossa dekorrelointikertoimet kullekin ainakin yhdelle alilohkolle opitaan analysoimalla joukkoa kasvokuvia. Toisin 20 sanoen, dekorrelointikertoimet voidaan saada käyttämällä tietoa pikseliarvojen G riippuvuudesta naapuruston sisällä tietyissä kasvokuvissa tai kasvomalleissa. Esimerkiksi pikseliarvojen riippuvuus tietyllä alueella voidaan selvittää ja sen tiedon perusteella voidaan luoda dekorrelointikertoimet. Esimerkiksi pikselien välinen riippuvuus nenän alueella voidaan määritellä analysoimalla useaa nenän 25 sisältämää kuvaa. Kun riippuvuus on tunnettu, mitä tahansa tunnettua tekniikkaa voidaan käyttää dekorreloimaan tunnetut riippuvuudet (korrelaatio), jotta tuotetaan dekorreloivat kertoimet. Dekorrelointikertoimia käytetään sitten muuntamaan LBP matriisi siten että tuotetaan riippumattomat, dekorreloidut LBP matriisin elementit. Pikseliarvojen välistä riippuvuutta voidaan selvittää myös ^ 30 etäisille pikseleille, ei vain vierekkäin oleville. Lisäksi, pikseliarvojen välinen ^ riippuvuus voidaan selvittää myös useiden pikseleiden kesken, ei vain kahden ^ pikselin välillä. Dekorrelointikertoimet voivat olla itsenäisiä kullekin alilohkolle 110 g kuviossa 1. Dekorrelointikertoimet ollaan voitu oppia kullekin alilohkolle erikseen, x Esimerkiksi, dekorrelointikertoimet nenän sisältämille alilohkoille voivat olla erejä
IX
“ 35 kuin dekorrelointikertoimet alilohkoille, joissa on otsa, posket, korvat jne. Eräässä ^ keksinnön suoritusmuodossa, tietoa tietyn alilohkon pikseliarvojen riippuvuudesta o joukossa kasvokuvia voidaan käyttää määrittämään dekorrelointikertoimet sille o alilohkolle.
C\J
Oppiminen voidaan suorittaa siten että dekorrelointikertoimien 40 määrittäminen suoritetaan joukolle digitaalisia kasvokuvia ja joukolle eri 9 resoluutioisia versioita kustakin kuvasta. Esimerkiksi, kuva samasta kasvosta voidaan käsitellä useasti eri resoluutioisena ja eri ympäristötekijöiden, kuten valaistuksen, alaisena. Näin dekorrelointikertoimet voidaan määritellä eri resoluutioille ja kuville eri ympäristötekijöiden vaikutusten alaisena.
5 Erään suoritusmuodon mukaan, piirrearvo kullekin tarkasteltavalle pikselille määräytyy vähintään yhden naapuruston painotettujen pikseliarvojen yhdistelmän perusteella. Oletetaan, että naapurusto G koostuu yhdeksästä pikselistä kolme kertaa kolme -muodostelmassa, ensimmäinen kerroinjoukko Ai=[Qi,i, ai,2, ...,Oi,9]=[l 0 0,5 0 -1 1 0 0 0] ja pikseliarvot G ovat annettu [gi, g2,..., 10 g9] = [5 6 8 79 4 6 0 0]. Kuvio 4A kuvaa Ai:n, G:n ja kuinka painotettujen pikseliarvojen kombinointi suoritetaan. Kuten voidaan nähdä kuviosta 4A, pikseliarvot G voidaan kertoa Ai:llä, jotta saadaan painotetut pikseliarvot W=[wi,i, 1/1/12, ... ,1/1/1,9]. Lisäksi painotettujen pikseliarvojen l/l/i=[wi,i, wli2, ..., wi,g] kombinaatio voi olla summa painotetuista pikseliarvoista l/l/i=[wi,i, i/i/i,2,..., wi,9].. 15 Painotettujen pikseliarvojen Wi=[wi,i, Wi,2, ..., wi,9] kombinaatio ei kuitenkaan ole rajoitettu summaamiseen, eli kaavaan Σ?=ι wi,i , vaan kombinaatio voi olla mikä tahansa painotettujen pikseliarvojen Wi=[wlilt wli2, ..., wi,9] aritmeettinen operaatio.
Erään suoritusmuodon mukaan, vertailutulos ennalta määrätyn 20 kynnyksen T ja painotettujen pikseliarvojen yhdistelmän välillä määritetään, jotta saataisiin ainakin yksi informaatiobitti b kullekkin tarkasteltavalle pikselille, missä ainakin yksi informaatiobitti b edustaa tietyn kasvopiirteen olemassaoloa tarkasteltavassa pikselissä, kuten esitetty Kuviossa 4A. Tarkasteltava pikseli voi tässä esimerkissä olla keskipikseli 420 naapurustossa G. Esimerkiksi, kun 25 painotettujen pikseliarvojen yhdistelmän tulos on suurempi kuin kynnys T, arvo ensimmäiselle informaatiobitille bi voi olla 1. Vastaavasti, kun painotettujen pikseliarvojen yhdistelmän tulos on yhtäsuuri tai pienempi kuin kynnys T, arvo ensimmäiselle informaatiobitille bi voi olla 0. Kynnys T voi edustaa kynnystä intensiteetille ja se voidaan määritää ennen kasvojen tunnistamista esimerkiksi ^ 30 oppimalla.
^ Näin ollen kukin naapurusto G voi tarjota yhden informaatiobitin ^ kullekin kerroinjoukolle. Käyttämällä useaa kerroinjoukkoa [Ai, A2, ..., Am] voidaan ^ saada usea informaatiobitti samalle naapurustolle (samalle tarkasteltavalle x pikselille 420), eli vektori B informaatiobiteistä [b2, b2, ..., bm]. Yhtä kerroinjoukkoa
CC
“ 35 voidaan käyttää yhden kasvopiirteen etsimiseen. Toinen kerroinjoukko voidaan ^ valita auttamaan toisen kasvopiirteen etsinnässä tai saman kasvopiirteen o <0 etsinnässä eri ympäristötekijöiden kuten luminanssin vallitessa.
o Tämä kuvataan kuviossa 4B, jossa naapurusto G on painotettu c\j kertomalla G usealla kerroinjoukolla [Ai, A2, ..., Am] johtaen useaan painotettujen 40 pikseliarvojen joukkoon [l/l/i, W2, ..., Wm], Kukin A, koostuu kolme kertaa kolme - 10 matriisista, joka sisältää kertoimet [Oii, en,2, 0,,9]. Samanlaiset merkinnät soveltuvat myös painotettuun kerroinjoukkoon Wi. Kuten aiemmin selitetty, naapuruston kokoja muoto ei ole rajoittunut kolme kertaa kolme naapurustoon, vaan voidaan valita minkä tahansa muotoiseksi ja kokoiseksi. Vastaavasti 5 kerroinmatriisin A koko ja muoto on seurausta naapuruston koosta ja muodosta. Kutakin painotetun kerroinjoukon kombinaatiota voidaan verrata kynnysarvoon T. Kukin vertailutulos voi tuottaa yhden informaatiobitin b, joka edustaa tietyn kasvopiirteen olemassaoloa tarkastelun alla olevassa pikselissä 420, kuten näytetään kuviossa 4B. Toisin sanoen, naapuruston ja siten tarkastelun alla olevan 10 pikselin binaarinen esitys voidaan antaa usealla binaariarvolla. Esimerkiksi jos kerroinjoukkojen lukumäärä on m, sitten informaatiobittien vektori B on [bi, 62, —, bm]. Toisin sanoen, m:n bitin informaatio voidaan tarjota tarkastelun alla olevan pikselin naapurustolle G. Siten, jos m=8, G voidaan esittää 28=256:n eri binaarikombinaatiolla. Kukin binaarikombinaatio edustaa tarkasteltavan pikselin 15 naapuruston eri rakenteita ja tarkasteltavan pikselin naapuruston eri kasvopiirteitä. Esimerkiksi binaarijoukko [11001011]2 vastaa desimaalilukua 203i0.Tätä arvoa voidaan pitää tarkasteltavan pisteen piirrearvona.
Kynnysarvo T voi olla opittu ennen kasvon tunnistamista. Kynnysarvo T voidaan olla määritelty esimerkiksi käyttämällä erityistä kuvaa kasvoista siten, että 20 kun verrataan kynnysarvoa T ja joukkoa painotettuja pikseliarvoja, vertailutuloksena saadaan luotettava tieto tietyn kasvopiirteen olemassa olosta kuvassa.
Yleisesti ottaen hyvin tunnettuja oppimisalgoritmeja, kuten AdaBoost algoritmi, voidaan käyttää sopivien arvojen saamiseksi kaikille parametreille, 25 joiden arvot täytyy määrittää ennen kasvojen tunnistamista.
Käyttämällä dekorreloituja kertoimia [A\, A2, ..., An] (jotka on saatu LBP matriisista käyttämällä Markovin mallia tai oppimismenetelmää), tarkkuus paranee korreloivien piirteiden käyttöön verrattuna. Lisäksi menetelmän joustavuus paranee. Toisin sanoen painotettujen pikeliarvojen kombinaatioiden 30 määrää voidaan vähentää siten, ettei samalla jouduta heikentämään
O
^ kasvontunnistuksen tarkkuutta. Tämä voidaan saavuttaa esimerkiksi pudottamalla ^ yksi kerroinyhdistelmä käytöstä pois siten että aiemmin kuvatun kahdeksan g kerroinjoukon sijaan käytetäänkin seitsemää kerroinjoukkoa. Käytöstä poistettu x yhdistelmä voi olla se, joka tuottaisi vähiten merkitsevän informaatiobitin b%.
35 Vastaavasti vaadittava datamäärä vähenee puoleen, eli 28=256:sta 27=128:aan ^ mahdolliseen yhdistelmään, mutta kukin naapuruston pikseli voi silti vaikuttaa o g tarkasteltavan pikselin piirrearvoon. Siitä huolimatta, saatua seitsemän o informaatiobitin yhdistelmää voidaan verrata täyteen kahdeksan bitin
CVJ
yhdistelmään ilman huomattavaa heikennystä tarkkuudessa. Erään keksinnön 40 suoritusmuodon mukaan, kasvojen tunnistamista mahdollisesti edellyttävä aiempi 11 opettamisprosessi suoritetaan täydellä tarkkuudella, kun taas varsinainen kasvojen tunnistaminen suoritetaan pienemmällä määrällä informaatiobittejä.
Niinpä, keksinnön suoritusmuodon mukaan, voidaan käyttää kerroinjoukkoja [Ai, A2, ..., Am\ joka on pienempi kuin tarkasteltavan pikselin 5 naapuruston pikselien määrä. Esimerkiksi, kuviossa 3A havaitulla pikselillä 108 on kahdeksan naapuria. Keksinnön suoritusmuodon mukaan, seitsemän tai vähemmän kerroinjoukkoa käytetään määrittämään informaatiobitit b.
Tuloksena kullekin tarkasteltavalle pikselille saadaan vähintään yksi piirrearvo. Keksinnön suoritusmuodon mukaan tieto kasvon samanlaisuudesta 10 saadaan vertaamalla määrättyä vähintään yhtä piirrearvoa vähintään yhtä kasvoa vastaaviin piirrearvoihin. Eli yksinkertaisimmillaan, määritettyä vähintään yhtä piirrearvoa verrataan toisessa kuvassa olevan toisen kasvon piirrearvoihin. Tiettyä kasvopiirrettä voidaan verrata vertailukasvon vastaavaan kasvopiirteeseen, tai kaikkia kasvopiirteitä (joita piirrearvot edustavat) voidaan verrata kerralla. Tämä 15 tuottaa tiedon siitä, kuinka samankaltaisia kasvot ovat. Tässä keksinnön suoritusmuodossa, kuvassa olevan henkilön varsinaista identiteettiä ei välttämättä paljasteta.
Toisessa keksinnön suoritusmuodossa kuvassa olevan henkilön identiteetti määritetään vertaamalla määrättyä vähintään yhtä piirrearvoa ennalta 20 määrättyyn tietokantaan, jossa on vähintään yhtä identiteettiä vastaavia piirrearvoja. Toisin sanottuna käytetään tietokantaa jossa on tietoa vähintään yhden henkilön piirrearvoista. Identiteetit tietokannassa voivat olla tiedossa ja vertailutulos voi paljastaa kuuluuko kasvontunnistusprosessin kohteena olevassa kuvassa oleva kasvo yhdelle tietokannassa olevalle identiteetille. Päätös voidaan 25 saada käyttämällä ennalta määrättyä kynnysarvoa ennaltamäärätylle virhemarginaalille. Vähintään yhden määrätyn piirrearvon vertailu ennalta määrättyyn piirrearvoja sisältävään tietokantaan voidaan suorittaa erikseen kullekin tietokannan identiteetille, tai vertailua voidaan suorittaa rinnakkain.
Lisäksi, keksinnön toisen suoritusmuodon mukaan, piirrearvoista ^ 30 muodostetaan histogrammi. Histogrammissa voi olla arvoja 0:n ja 256:n välillä (jos ^ käytetään kahdeksaa kerroinsarjaa A). Histogrammien arvot voivat siten edustaa Y vähintään yhtä kasvopiirrettä. Piirrehistogrammi voidaan rakentaa erikseen g kullekin alilohkolle. Toisin sanottuna kasvontunnistusprosessi voidaan tehdä x erikseen kullekin kuvan alilohkolle kuten selitetty edellä. Yksi tai useampi
CC
“ 35 alilohkoista lutu histogrammi voidaan liittää, ja kasvojen samankaltaisuus tai kuvan ^ henkilön identiteetti voidaan saada vertaamalla yhdistettyjä histogrammeja o ainakin yhtä kasvoa vastaavaan piirrehistogrammiin. Histogrammien o samankaltaisuus voidaan määrittää käyttämällä Euclidista etäisyyttä
(M
histogrammien välillä, Chi-square etäisyyttä, keskinäistä informaatiomittaa, 40 intersektioetäisyyttä jne.
12
Lisäksi, keksinnön suoritusmuodon mukaan kasvon samankaltaisuuden määrittäminen tehdään käyttämällä erejä keinotekoisesti muunnettuja versioita kuvasta. Eri versio voi tarkoittaa esimerkiksi eri resoluutioita, maskien käyttämistä kuvan manipulointiin tai kuvan suodattamista erilaisilla alipäästösuodattimilla 5 ennen kasvojen tunnistusprosessia, jne. Tuloksena kasvojen tunnistuksen luotettavuus voi parantua. Suodatus parantaa kasvojen tunnistamista sumentuneista kuvista. Käyttämällä eri versioita kuvasta tunnistamiseen, kasvopiirteistä saadaan erottelevampi kuvaus.
Lisäksi keksinnön suoritusmuodon mukaan, kasvon tunnistuksen 10 tarkkuutta voidaan edelleen parantaa määrittämällä kasvojen samankaltaisuutta digitaalisesta kuvasekvenssistä. Näin samasta kasvosta saadaan useita eri kuvaversioita (eri valaistus, kuvauskulma, jne.) ja kasvontunnistusprosessi voidaan suorittaa kullekin kuvalle. Kasvontunnistuksen tuloksen saamiseksi voidaan käyttää kutakin digitaaliselle kuvasekvenssille saatua yksittäistä tulosta. Sekventiaalisen 15 kasvontunnistusprosessin nopeuttamiseksi voidaan kustakin kasvosta tunnistettava kasvo etsiä edellisen kasvojen ilmaisukohdan ympäristöstä.
Erittäin yleinen arkkitehtuuri kasvontunnistuslaitteesta 500 keksinnön suoritusmuodon mukaan on esitetty kuviossa 5. Kuvio 5 näyttää vain ne elementit ja toiminnalliset kokonaisuudet joita tarvitaan kasvojen tunnistamisen 20 ymmärtämiseksi keksinnön suoritusmuodon makaan. Muut komponentit on jätetty pois yksinkertaisuuden vuoksi. Elementtien ja toiminnallisten kokonaisuuksien toteutus voi poiketa kuviossa 5 esitetystä. Kuviossa 5 näytetyt yhteydet ovat loogisia yhteyksiä, ja todelliset fyysiset yhteydet voivat olla Merejä. Alan ammattilaiselle on selvää että kasvojen tunnistuslaite 500 voi koostua myös muista 25 toiminnoista ja rakenteista.
Laite 500 kasvojen tunnistamiseksi ja kasvojen samankaltaisuuden mittaamiseksi voi käsittää prosessorin 502. Prosessori 502 voi olla implementoitu erilliselle digitaaliselle signaaliprosessorille, joka on varustettu soveltuvalla ohjelmistolla, joka on sulautettu tietokoneluettavaan mediaan, tai erilliselle ^ 30 logiikkapiirille, kuten sovelluskohtaiselle mikropiirille (ASIC). Prosessori 502 voi ^ käsittää rajapinnan, kuten tietokoneportin, kommunikaation tarjoamisen vuoksi.
^ Lisäksi laite 500 voi käsittää muistin 504 tallentamaan ennalta i g määrättyjä parametreja, yhdistelmätuloksia, histogrammeja, jne. Muisti voi x kuitenkin olla myös integroituna prosessoriin 502, joten muistia 504 ei välttämättä 35 tarvita.
^ Prosessori 502 voi olla konfiguroitu suorittamaan toimintoja liittyen o <£ kuvioihin 1-4 ja 6.
o Keksinnön erään suoritusmuodon mukaan, prosessori 502 sisältyy c\j matkapuhelimeen, tai toiseen rajoitetun laskentakapasiteetin omaavaan 40 laitteeseen.
13
Kuvio 6 on menetelmä kasvojen tunnistamiseksi digitaalisesta kuvasta. Menetelmä alkaa vaiheessa 600. Vaiheessa 602 suoritetaan kasvojen ilmaisu digitaalisesta kuvasta. Vaihe 604 käsittää kuvan jakamisen ainakin yhteen alilohkoon. Alilohkojen määrä voi olla esimerkiksi yksi tai sata. Seuraavana, 5 vaiheessa 606, suoritetaan naapuruston valinta ainakin yhdessä alilohkossa olevalle ainakin yhdelle tarkastelun kohteena olevalle pikselille, naapuruston ollessa tunnetun kokoinen ja muotoinen. Vaihe 608 käsittää ainakin yhden kerroinjoukon valitsemisen dekorreloidusta local binary pattern matriisista, missä ainakin yhtä kerroinjoukkoa käytetään painottamaan naapuruston pikseliarvoja. 10 Vaihe 610 määrittää piirrearvot kullekin tarkastelun kohteena olevalle pikselille perustuen ainakin yhteen naapuruston painotettujen pikseliarvojen yhdistelmään. Lopuksi vaiheessa 612 saadaan tietoa kasvojen samankaltaisuudesta vertaamalla määrättyä ainakin yhtä piirrearvoa ainakin yhtä kasvoa vastaaviin piirrearvoihin. Menetelmä loppuu vaiheessa 614.
15 Tässä kuvatut tekniikat ja menetelmät voidaan toteutta eri tavoilla.
Esimerkiksi nämä tekniikat voidaan toteuttaa laitteistolla (yksi tai useampi laite), laiteohjelmistolla (yksi tai useampi laite), ohjelmistolla (yksi tai useampi moduuli), tai niiden yhdistelmillä. Laitteistolla toteutettuna laite kuviossa 5 voidaan toteuttaa yhdellä tai useammalla sovelluskohtaisella mikropiirillä (ASIC), 20 digitaalisilla signaaliprosessoreilla (DSP), digitaalisilla signaalinkäsittelylaitteilla (DSPD), ohjelmoitavilla logiikkalaitteillaaaaaaa (PLD), FPGArlla (field programmable gate array), prosessoreilla, kontrollereilla, mikrokontrollereilla, mikroprosessoreilla, muilla kuvattujen toimintojen suorittamiseen suunnitelluilla elektronisilla yksiköillä, tai näiden yhdistelmillä. Laiteohjelmistolle tai ohjelmistolle toteutus 25 voidaan suorittaa vähintään yhden piirisarjan moduulin kautta (ts. proseduurit, funktiot jne.), joka suorittaa tässä kuvatut toiminnot. Ohjelmisto voi olla tallennettuna muistiyksikköön ja voidaan suorittaa prosessorilla. Muisti voi olla toteutettu prosessorille tai prosessorista ulkoisesti. Jälkimmäisessä tapauksessa se voi olla liitetty prosessoriin yhteyden pitoa varten erilaisilla tavoilla, kuten alalla 30 tiedetään. Lisäksi, tässä kuvatut järjestelmän komponentit voi olla
O
^ uudelleenjärjestely ja/tai täydennetty lisäkomponenteilla erilaisten sitä kuvaavien Y näkökantojen helpottamiseksi, jne. Ne eivät ole myöskään rajoittuneet tarkalleen g annetuissa kuvioissa näytettyihin konfiguraatioihin, kuten alan asiantuntijat x ymmärtävät.
CC
35 Siten keksinnön erään suoritusmuodon mukaan, kuvioiden 1-4 ja 6 ^ tehtäviä suorittava laite sisältää keinoja kasvojen ilmaisuun digitaalisesta kuvasta, o g keinoja kuvan jakamiseksi ainakin yhteen alilohkoon, keinoja tunnetun kokoisen ja o muotoisen naapuruston valitsemiseksi kullekin tarkasteltavalle pikselille ainakin
CVJ
yhdessä alilohkossa. Lisäksi laite sisältää keinoja ainakin yhden kerroinjoukon 40 valitsemiseksi dekorreloidusta local binary pattern matriisista, jossa ainakin yhtä 14 kerroinjoukkoa käytetään määräämään piirrearvo kullekin tarkasteltavana olevalle pikselille, keinoja piirrearvon määrittämiseksi kullekin tarkasteltavalle pikseliIle ainakin yhden naapuruston painotettujen pikseliarvojen kombinaation perusteella, ja keinoja saada tietoa kasvojen samankaltaisuudesta vertaamalla määrättyä 5 ainakin yhtä piirrevektoria ainakin yhtä kasvoa vastaaviin piirrearvoihin.
Keksinnön suoritusmuodot voidaan toteuttaa tietokoneohjelmina kuvion 5 laitteistossa keksinnön eräiden suoritusmuotojen mukaan. Tietokoneohjelma käsittää käskyt suorittaa tietokoneprosessi kasvojen tunnistamisen parantamiseen. Laitteistoon toteutettu tietokoneohjelma voi 10 toteuttaa tehtävät liittyen kuvioihin 1-4 ja 6, olematta kuitenkaan rajoitettu niihin.
Tietokoneohjelma voi olla talletettu tietokoneohjelman jakelumedialle, joka on luettavissa tietokoneella tai prosessorilla. Tietokoneohjelman media voi olla esimerkiksi sähköinen, magneettinen, optinen, infrapuna-, tai puolijohdejärjestelmä, -laite tai -siirtomedia, olematta kuitenkaan rajoittunut 15 niihin. Tietokoneohjelmamedia voi sisältää ainakin yhden seuraavista: tietokoneluettavan median, ohjelman tallennusmedian, tallennusmedian, tietokoneluettavan muistin, satunnaishakumuistin, tyhjennettävän ohjelmoitavan lukumuistin, tietokoneluettavan ohjelmiston jakelupaketin, tietokoneluettavan signaalin, tietokoneluettavan telekommunikaatiosignaalin, tietokoneluettavan 20 printatun materian, ja tietokoneluettavan pakatun ohjelmistopaketin.
Vaikkakin keksintö on kuvattu yllä viitaten esimerkkiin mukana olevan kuvion mukaisesti, on selvää, että keksintö ei ole rajoittunut niihin vaan sitä voidaan modifioida usealla tavalla mukana olevien vaatimusten puitteissa. Lisäksi on selvää alan ammattilaiselle, että kuvattuja suoritusmuotoja voidaan, mutta ei 25 välttämättä tarvitse, yhdistää toisten suoritusmuotojen kanssa useilla tavoilla.
C\J
δ
CvJ
c\j o
X
X
Q.
CO
o
CO
o o o
CvJ

Claims (11)

1. Menetelmä henkilön kasvojen tunnistamiseksi (104) digitaalisesta kuvasta (100), joka koostuu useasta pikselistä (102), käsittää: kasvojen (104) ilmaisun digitaalisesta kuvasta (100), 5 tunnettu siitä, että menetelmä edelleen käsittää: kuvan (100) jakamisen vähintään yhteen alilohkoon; naapuruston (300) valitsemisen kullekin tarkastelun kohteena olevalle pikselille (108) vähintään yhdestä alilohkosta (110), missä kukin naapurusto (300) on tunnetun kokoinen ja muotoinen; 10 dekorreloidaan naapurustoon (300) sovellettava local binary pattern matriisi, jossa dekorrelaatio tehdään korreloimattoman local binary pattern matriisin hankkimiseksi ja jossa korreloimaton local binary pattern matriisi käsittää korreloimattomia matriisielementtejä; valitaan ainakin yksi kerroinjoukko dekorreloidusta local binary pattern 15 matriisista, siten että ainakin yhtä kerroinjoukkoa käytetään painottamaan naapuruston (300) pikseliarvoja; määritetään piirrearvo kullekin tarkastelun kohteena olevalle pikselille (108) perustuen ainakin yhteen kunkin naapuruston (300) painotettujen pikseliarvojen kombinaatioon; ja 20 saadaan tietoa kasvojen samankaltaisuudesta vertaamalla määritettyä vähintään yhtä piirrearvoa ainakin yhtä kasvoa vastaaviin piirrearvoihin.
2. Patenttivaatimuksen 1 mukainen menetelmä, joka edelleen käsittää: muodostetaan piirrearvoista histogrammi kullekin vähintään yhdelle 25 alilohkolle (110), yhdistetään muodostetut yksi tai useampi histogrammi, ja saadaan tietoa kasvojen samankaltaisuudesta tai määritetään kuvassa (104) olevan henkilön identiteetti vertaamalla histogrammia ainakin yhtä kasvoa vastaavaan piirrearvohistogrammiin. ^ 30
3. Minkä tahansa patenttivaatimusten 1-2 mukainen menetelmä, joka O ^ lisäksi käsittää yhden seuraavista: Y ilmaistaan ainakin yksi kasvopiirre (206A, 206B) ja säädetään ainakin g yhden kasvopiirteen (206A, 206B) paikka ennalta määrättyyn paikkaan, x manipuloidaan ainakin yhtä pikseliarvoa ainakin yhdessä alilohkossa (110) niin, CC 35 että generoidaan ainakin yksi valaistukselle epäherkkä pikseliarvo, ja sovitetaan ^ yhtä ilmaistun kasvon (200) puoliskoa (204A) toiseen puoliskoon (204B) soveltaen o g kasvojen (200) symmetrisyyttä. o o c\i
4. Mikä tahansa patenttivaatimusten 1-3 mukainen menetelmä, joka 40 lisäksi käsittää: käytetään sellaista määrää piirrejoukkoja, joka on vähemmän kuin tarkasteltavan pikselib (108) naapurustoa (300) naapuroivien pikseleiden määrä.
5. Mikä tahansa patenttivaatimusten 1-4 mukainen menetelmä, joka 5 lisäksi käsittää: dekorreloidaan local binary pattern matriisi käyttäen Markovin mallia.
6. Mikä tahansa patenttivaatimusten 1-4 mukainen menetelmä, joka lisäksi käsittää: 10 dekorreloidaan local binary pattern matriisi käyttäen dekorrelointikertoimia, jossa dekorrelointikertoimet kullekin vähintään yhdelle alilohkolle on opittu kasvoja esittävien kuvien joukon analysoinnin perusteella.
7. Mikä tahansa patenttivaatimusten 1-6 mukainen menetelmä, joka 15 lisäksi käsittää: kasvojen samankaltaisuuden määrittämien käyttäen useita keinotekoisesti muokattuja versioita samasta kuvasta.
8. Laite (500) henkilön kasvojen tunnistamiseksi (104) digitaalisesta 20 kuvasta (100), joka koostuu useasta pikselistä (102), käsittää prosessorin (502), joka on järjestettävissä: kasvojen (104) ilmaisemiseen digitaalisesta kuvasta (100), tunnettu siitä, että prosessori (502) on edelleen järjestettävissä: 25 kuvan (100) jakamisen vähintään yhteen alilohkoon; naapuruston (300) valitsemiseen kullekin tarkastelun kohteena olevalle pikselille (108) vähintään yhdestä alilohkosta (110), missä kukin naapurusto (300) on tunnetun kokoinen ja muotoinen; dekorreloimaan naapurustoon (300) sovellettava local binary pattern ^ 30 matriisi, jossa dekorrelaatio tehdään korreloimattoman local binary pattern ^ matriisin hankkimiseksi ja jossa korreloimaton local binary pattern matriisi käsittää ^ korreloimattomia matriisielementtejä; g valitsemaan ainakin yksi kerroinjoukko dekorreloidusta local binary x pattern matriisista, siten että ainakin yhtä kerroinjoukkoa käytetään painottamaan cr “ 35 naapuruston (300) pikseliarvoja; ^ määrittämään piirrearvo kullekin tarkastelun kohteena olevalle o pikselille (108) perustuen ainakin yhteen kunkin naapuruston (300) painotettujen o pikseliarvojen kombinaatioonpa C\J saamaan tietoa kasvojen samankaltaisuudesta vertaamalla määritettyä 40 vähintään yhtä piirrearvoa ainakin yhtä kasvoa vastaaviin piirrearvoihin.
9. Patenttivaatimuksen 8 mukainen laite (500), jossa prosessori (502) on matkapuhelimessa.
10. Laite (500) kasvojen (104) tunnistamiseksi digitaalisesta kuvasta (100), joka koostuu useista pikseleistä (102), missä laite on konfiguroitu minkä tahansa patenttivaatimuksen 1-7 mukaisesti.
11. Tietokoneohjelmatuote sulautettuna tietokoneluettavaan 10 tallennusmediaan ja käsittäen ohjelmakoodin, joka prosessorilla ajettuna suorittaa minkä tahansa patenttivaatimuksen 1-7 mukaisen menetelmän. c\j δ c\j i C\l O X cc CL CO o CO O) o o CM
FI20096046A 2009-10-09 2009-10-09 Kasvojen tunnistaminen digitaalisissa kuvissa FI123982B (fi)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FI20096046A FI123982B (fi) 2009-10-09 2009-10-09 Kasvojen tunnistaminen digitaalisissa kuvissa
US13/500,035 US8582836B2 (en) 2009-10-09 2010-10-04 Face recognition in digital images by applying a selected set of coefficients from a decorrelated local binary pattern matrix
CN201080048190.4A CN102667810B (zh) 2009-10-09 2010-10-04 数字图像中的面部识别
PCT/FI2010/050765 WO2011042601A1 (en) 2009-10-09 2010-10-04 Face recognition in digital images
EP20100821621 EP2486514A4 (en) 2009-10-09 2010-10-04 RECOGNITION OF FACES IN DIGITAL IMAGES

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20096046A FI123982B (fi) 2009-10-09 2009-10-09 Kasvojen tunnistaminen digitaalisissa kuvissa
FI20096046 2009-10-09

Publications (3)

Publication Number Publication Date
FI20096046A0 FI20096046A0 (fi) 2009-10-09
FI20096046A FI20096046A (fi) 2011-04-10
FI123982B true FI123982B (fi) 2014-01-15

Family

ID=41263463

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20096046A FI123982B (fi) 2009-10-09 2009-10-09 Kasvojen tunnistaminen digitaalisissa kuvissa

Country Status (5)

Country Link
US (1) US8582836B2 (fi)
EP (1) EP2486514A4 (fi)
CN (1) CN102667810B (fi)
FI (1) FI123982B (fi)
WO (1) WO2011042601A1 (fi)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012068948A (ja) * 2010-09-24 2012-04-05 Renesas Electronics Corp 顔属性推定装置およびその方法
JP5913940B2 (ja) * 2011-12-01 2016-05-11 キヤノン株式会社 画像認識装置、画像認識装置の制御方法、およびプログラム
JP5891409B2 (ja) * 2012-01-12 2016-03-23 パナソニックIpマネジメント株式会社 特徴抽出装置、特徴抽出方法、および特徴抽出プログラム
CN102737245B (zh) * 2012-06-06 2014-06-11 清华大学 三维场景物体边界检测方法及装置
US8457367B1 (en) 2012-06-26 2013-06-04 Google Inc. Facial recognition
US8411909B1 (en) 2012-06-26 2013-04-02 Google Inc. Facial recognition
US8542879B1 (en) 2012-06-26 2013-09-24 Google Inc. Facial recognition
US9183429B2 (en) * 2012-08-15 2015-11-10 Qualcomm Incorporated Method and apparatus for facial recognition
US8843759B2 (en) * 2012-08-28 2014-09-23 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for media-based authentication
US11017213B1 (en) 2012-09-07 2021-05-25 Stone Lock Global, Inc. Methods and apparatus for biometric verification
US11275929B2 (en) 2012-09-07 2022-03-15 Stone Lock Global, Inc. Methods and apparatus for privacy protection during biometric verification
US11017211B1 (en) 2012-09-07 2021-05-25 Stone Lock Global, Inc. Methods and apparatus for biometric verification
US11017214B1 (en) 2012-09-07 2021-05-25 Stone Lock Global, Inc. Methods and apparatus for biometric verification
US11017212B2 (en) 2012-09-07 2021-05-25 Stone Lock Global, Inc. Methods and apparatus for biometric verification
US11301670B2 (en) 2012-09-07 2022-04-12 Stone Lock Global, Inc. Methods and apparatus for collision detection in biometric verification
US11163984B2 (en) 2012-09-07 2021-11-02 Stone Lock Global, Inc. Methods and apparatus for constructing biometrical templates using facial profiles of users
US11163983B2 (en) 2012-09-07 2021-11-02 Stone Lock Global, Inc. Methods and apparatus for aligning sampling points of facial profiles of users
US8856541B1 (en) 2013-01-10 2014-10-07 Google Inc. Liveness detection
CN103970782B (zh) * 2013-01-31 2017-11-28 联想(北京)有限公司 电子设备以及存储数据的方法
US9898661B2 (en) * 2013-01-31 2018-02-20 Beijing Lenovo Software Ltd. Electronic apparatus and method for storing data
CN103208012B (zh) * 2013-05-08 2016-12-28 重庆邮电大学 一种光照人脸识别方法
US9336454B2 (en) * 2013-05-31 2016-05-10 Texas Instruments Incorporated Vector processor calculation of local binary patterns
US9113036B2 (en) 2013-07-17 2015-08-18 Ebay Inc. Methods, systems, and apparatus for providing video communications
US9514354B2 (en) 2013-12-18 2016-12-06 International Business Machines Corporation Facial analysis by synthesis and biometric matching
JP6312485B2 (ja) * 2014-03-25 2018-04-18 キヤノン株式会社 情報処理装置、認証装置およびそれらの方法
US9444999B2 (en) * 2014-08-05 2016-09-13 Omnivision Technologies, Inc. Feature detection in image capture
US9830528B2 (en) * 2015-12-09 2017-11-28 Axis Ab Rotation invariant object feature recognition
CN105608448B (zh) * 2016-02-22 2019-08-09 海信集团有限公司 一种基于脸部关键点的lbp特征提取方法和装置
US10497014B2 (en) * 2016-04-22 2019-12-03 Inreality Limited Retail store digital shelf for recommending products utilizing facial recognition in a peer to peer network
CN106314356A (zh) * 2016-08-22 2017-01-11 乐视控股(北京)有限公司 车辆的控制方法、控制装置及车辆
WO2018117704A1 (en) * 2016-12-23 2018-06-28 Samsung Electronics Co., Ltd. Electronic apparatus and operation method thereof
CN107729902B (zh) * 2017-07-28 2021-01-22 湘潭大学 用于图像识别的图像微观结构模式特征提取方法
US10956719B2 (en) * 2018-11-30 2021-03-23 Qualcomm Incorporated Depth image based face anti-spoofing
CN110163811A (zh) * 2019-04-10 2019-08-23 浙江工业大学 一种人脸图像阴阳脸现象消除方法
CN110516687B (zh) * 2019-08-07 2022-02-08 北京工业大学 一种基于图像融合和改进ResNet的图像识别方法
USD976904S1 (en) 2020-12-18 2023-01-31 Stone Lock Global, Inc. Biometric scanner

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6542545B1 (en) * 1999-10-01 2003-04-01 Mitsubishi Electric Reseach Laboratories, Inc. Estimating rate-distortion characteristics of binary shape data
JP4210137B2 (ja) 2002-03-04 2009-01-14 三星電子株式会社 2次icaを利用した顔認識法及びその装置
KR100745981B1 (ko) 2006-01-13 2007-08-06 삼성전자주식회사 보상적 특징에 기반한 확장형 얼굴 인식 방법 및 장치
KR100866792B1 (ko) 2007-01-10 2008-11-04 삼성전자주식회사 확장 국부 이진 패턴을 이용한 얼굴 기술자 생성 방법 및장치와 이를 이용한 얼굴 인식 방법 및 장치
US8131066B2 (en) * 2008-04-04 2012-03-06 Microsoft Corporation Image classification
FI121901B (fi) * 2008-10-17 2011-05-31 Visidon Oy Objektien ilmaiseminen ja seuraaminen digitaalisissa kuvissa

Also Published As

Publication number Publication date
CN102667810B (zh) 2015-02-11
WO2011042601A1 (en) 2011-04-14
FI20096046A (fi) 2011-04-10
US20120213422A1 (en) 2012-08-23
EP2486514A1 (en) 2012-08-15
US8582836B2 (en) 2013-11-12
CN102667810A (zh) 2012-09-12
EP2486514A4 (en) 2013-04-24
FI20096046A0 (fi) 2009-10-09

Similar Documents

Publication Publication Date Title
FI123982B (fi) Kasvojen tunnistaminen digitaalisissa kuvissa
FI121901B (fi) Objektien ilmaiseminen ja seuraaminen digitaalisissa kuvissa
Peng et al. Face presentation attack detection using guided scale texture
Bi et al. Fast copy-move forgery detection using local bidirectional coherency error refinement
US9727775B2 (en) Method and system of curved object recognition using image matching for image processing
US20230021661A1 (en) Forgery detection of face image
Wang et al. Background-driven salient object detection
Shu et al. Face spoofing detection based on chromatic ED-LBP texture feature
Johnson et al. Sparse codes as alpha matte
US9305603B2 (en) Method and apparatus for indexing a video stream
CN111784675A (zh) 物品纹理信息处理的方法、装置、存储介质及电子设备
Drożdż et al. FPGA implementation of multi-scale face detection using HOG features and SVM classifier
CN102713974B (zh) 学习装置、识别装置、学习识别系统和学习识别装置
CN110163095B (zh) 回环检测方法、回环检测装置及终端设备
CN112651333A (zh) 静默活体检测方法、装置、终端设备和存储介质
Kınlı et al. Modeling the lighting in scenes as style for auto white-balance correction
KR101539058B1 (ko) 이미지 분류 및 검색 장치 및 그 방법
CN116188956A (zh) 一种深度伪造人脸图像检测的方法及相关设备
Shu et al. Face anti-spoofing based on weighted neighborhood pixel difference pattern
Wu et al. RGB-D salient object detection via feature fusion and multi-scale enhancement
Wang et al. Rethinking low-level features for interest point detection and description
Al-Rawashdeh et al. Creating color image features using local contrast method
CN107766863B (zh) 图像表征方法和服务器
CN112733574B (zh) 一种人脸识别的方法、装置及计算机可读存储介质
Aytekin et al. Deep multi-resolution color constancy

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 123982

Country of ref document: FI

Kind code of ref document: B