Realtime gezichtsherkenning voor web

18 sep 2017 | < 6 min. | 267

Kunnen jullie voor ons een online actie ontwikkelen met Snapchat filters?

We krijgen met enige regelmaat dit verzoek. En ja, uiteraard kunnen we dat bouwen 😀. We hebben twee jaar geleden zelfs al een proof of concept gebouwd. Maar is de techniek nu ook al zo ver dat alle moderne browsers het ondersteunen? In dit artikel gaan we daar op in en laten we een voorbeeld zien.


voorbeeld van een proof of concept voor realtime gezichtsherkening voor web toepassingen.

Hoe werkt realtime gezichtsherkenning voor web?
Er zijn meerdere javascript libraries die gebruikt kunnen worden voor realtime gezichtsherkenning voor afbeeldingen en video. De basis is meestal wel hetzelfde. Wij gebruiken clmtrackr. Deze library maakt gebruik van het Constrained Local Model (CLM) en regularized landmark mean-shift (RLMS) . De javascript library volgt het gezicht en geeft vervolgens de coordinaten van een vaste set punten op het gezicht terug als array.

gezichtsmodel nummering

Creatieve online toepassingen
Op basis van deze output kun je vervolgens elke denkbare online toepassing bedenken waarbij gezichtsherkenning wordt gebruikt. Zoals:
Kunnen we er al mee aan de slag?
We laten klanten met deze vraag altijd onze demo voor gezichtsherkenning zien. Deze demo werkt overtuigend. Maar vervolgens moeten we de klant een beetje teleur stellen. De demo werkt perfect op Chrome, Edge, Firefox en de allernieuwste Safari 11. Maar niet in IE11 en oudere versies van Safari. Dat alles vanwege de getUserMedia API, die vrij recent is opgenomen als standaard. De groep browsers die het niet ondersteunen, vertegenwoordigen een niet te verwaarlozen groep. Zeker als je de iPhone en Android gebruikers mee rekent die enkele updates achterlopen.

Dus?
De techniek is al vrij volwassen en het werkt prima voor online acties. Alleen moeten we nog minimaal een jaartje geduld hebben, willen we 90% van alle bezoekers kunnen bedienen. Wij zijn er in ieder geval klaar voor. En mocht je interesse hebben in een demo, neem dan contact met ons op:

Contact

Delen: