PIR met gezicht herkenning

Een video zegt meer dan duizend woorden

Het werkt. Een Raspberry 4 uitgerust met een cameraatje (no-ir) en een relaisbordje. Zoals je hoort wordt een relais geschakeld wanneer de camera/Raspberry een voor hem bekend persoon ziet. In bovenstaande situatie kom ik zelf in beeld van de Raspberry en ziet hij mij. Nu alleen nog even een zone/ingang van je alarmcentrale met de relais verbinden en je alarminstallatie zal af gaan wanneer er een specifiek persoon je ruimte betreedt. Of juist niet, net hoe je het aansluit en/of programmeert.

Dit kun je echter niet zo aan de muur hangen en moet in een kastje. Omdat het om een prototype gaat mag dit een vormloos en ruime kast zijn, als het de componenten maar bij elkaar houdt, beschermt en functioneel is.

We hadden bedacht dat het wel leuk zou zijn als het wat terug kan zeggen bij herkenning. Da’s niet zo heel ingewikkeld. Je laat gewoon met Python, de programmeertaal voor het geheel, een .wav -filetje afspelen (eenmalig per dag, anders wordt het vervelend). Hierop vooruitlopend hebben we alvast een speakertje ingebouwd en aangesloten op de audio/video-poort van de Raspberry. Het geluid blijkt echter van een te laag volume te zijn zodat er nog een klein analoog versterkertje ingebouwd moet worden t.z.t. . De leds krijgen vast ook nog een functie en het kan er maar alvast in zitten. We kozen voor oker-geel en helder-wit gewoon omdat we nog niet eerder met deze kleur leds gespeeld hadden.

Even alle uitgangen testen met een testprogrammaatje en dan kan de kast dicht.

Voor nu geldt dat het hele systeem werkt. Python programma welke in de eerste video aan het werk was zit er weer in doet zijn werk. Behalve dat het één van de twee relais schakelt, schakelt het ook de oker-gele led. Bij herkenning gaat dus ook de led aan. Dit is een goede indicator om het systeem vanuit alle hoeken letterlijk te testen zonder terug te hoeven lopen naar je pc om te checken op herkenning. De witte led gaat aan bij het zien van een voor het systeem onbekend persoon.

Het blijkt dat het herkent tussen de 10 en 70 centimeter. Dit is in de praktijk niet bruikbaar. Dit zou tussen de één en vier meter moeten zijn. In het Pythonprogramma wordt het beeld voor herkenning eerst met een factor vier (dus 16 keer) kleiner gemaakt omdat het programma dan gegevens sneller verwerkt. Deze verkleining hebben we uit gezet en dan komt het meer in de buurt. Echter… het systeem wordt te traag. Toen ik na de test terug liep naar mijn pc zag ik mijzelf op dat scherm nog terug lopen! Te traag dus.

Hier staan we op dit moment. De oplossing zou kunnen zijn om de bundel welke de cam bestrijkt te verkleinen zodat toch een kleiner beeld ontstaat maar welke niet ten koste gaat van de resolutie. Op deze manier blijft er toch voldoende beeldmateriaal over om een herkenning op los te laten. Wordt vervolgt…

28 augustus

De oplossing is om met de Picam te werken (standaard) in plaats van OpenCV. Dit blijkt voor de Raspberry toch net even wat sneller. Misschien ook logisch omdat dit hier speciaal voor ontworpen is. We zijn nu zover dat gezichten worden herkend tot vier meter afstand, acceptabel voor dit project. Het versterkertje is besteld en wordt snel ingebouwd en dan kan de kast dicht en opgehangen worden om opgenomen te worden in het alarmsysteem. Het blijft benaderbaar via wifi/vnc om de software te verbeteren.

19 september

Inmiddels zijn we weer een paar stappen verder en daarmee nadert dit project zijn voltooiing. Qua hardware liepen we eerder tegen het feit aan dat de audio te zacht was. Dit is nu opgelost door een klein versterkertje te gebruiken en nu geeft het voldoende volume. Tijdens het testen en programmeren liepen we ook nog tegen het feit aan dat de Raspberry er ineens mee stopte uit zichzelf. Niet gek, want de cpu bereikte het kookpunt en mogelijk daar zelfs overheen. Ook dit is opgelost middels een luchtgekoeld koelblok. Hij wordt nu gewoon warm en dat is het. Acceptabel.

We kunnen nu de foto’s van meerdere personen toevoegen en bij herkenning wordt de naam uitgesproken van diegene. De geel/oranje led gaat aan net als relais 1. Bij het zien van een onbekend persoon wordt “Onbekend persoon voor mij” uitgesproken, de witte led gaat even aan net als relais 2.

    Geef een reactie

    Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *