Innholdsfortegnelse:

Pizero Motion Detect Webcam Security System: 3 trinn
Pizero Motion Detect Webcam Security System: 3 trinn

Video: Pizero Motion Detect Webcam Security System: 3 trinn

Video: Pizero Motion Detect Webcam Security System: 3 trinn
Video: Turn a RaspberryPi into a Security Camera with Motion Detection! // 4K TUTORIAL 2024, Juli
Anonim
Pizero Motion Detect Webcam Security System
Pizero Motion Detect Webcam Security System

Dette systemet bruker en pizero, wifi dongle og et gammelt webkamera i en tilpasset fyrstikkeske. Den registrerer videoer for bevegelsesdeteksjon ved 27 fps av enhver betydelig bevegelse på oppkjørselen min. Den laster deretter opp klippene til en dropbox -konto. Kan også se loggene og endre konfigurasjonen via dropbox.

Trinn 1: Konfigurere forutsetningene

Image
Image

Oppdater først operativsystemet til den nyeste versjonen som beskrevet her.

Sett deretter opp wifi som beskrevet her.

Da må du konfigurere OpenCv. Det er gode instruksjoner om hvordan du gjør dette på pyimagesearch. Hvis du går for versjon 3.0, forvent at det vil ta lang tid. Ett av trinnene tar 9 timer å gjøre. Du trenger også pythonbindinger som er forklart på den siden.

Når du har alt dette i gang, er du klar til å laste ned programvare for bevegelsesdeteksjon.

Trinn 2: Sette opp bevegelsesdetekteringsprogramvaren

Få tilgang til videoene og konfigurasjonen via Dropbox
Få tilgang til videoene og konfigurasjonen via Dropbox

Koden finnes på bitbucket. Kopier disse filene ved å bruke

git -klon

eller hvis du foretrekker å laste dem ned individuelt.

Hoveddelen av dette systemet er multiMotionDetect.py. Den bruker mange av multiprosesseringskøene og hendelsene.

Først av alt må du bestemme hvor du vil at videobildene skal lagres MotionVideos og angi denne verdien i filen globalConfig.json. Kopier deretter config.json.txt og maskedAreas.json.txt til roten til denne mappen. Config.json.txt har følgende innstilling som kan redigeres eksternt.

}

FrameThreshold: er antall betydelige rammer før bevegelse oppdages.

staticThreshold: er antall statiske rammer før vi slår av filmingen.

minArea: er minimumsstørrelsen på området for å bli regnet som signifikant.

postSeconds: Dette er antall sekunder fra filmens slutt for bevegelsen å gå gjennom køen. readCamNice: Dette er hvor mye prioritet som skal gis til

readCam -prosess. Dette er mellom -20 og +20 (jo lavere tall jo høyere prioritet). Men ikke overdriv, da krasjer du operativsystemet.

checkMotionNice: Prioriteten for bevegelsesdetekteringsprosessen.

writeCamNice: Prioriteten til kameraets skriveprosess.

maxqsize: Dette er antall sekunder som deretter multipliseres med bildene per sekund.

Jeg endrer stort sett bare min_området for å ta hensyn til vindforholdene.

Hvis du heller vil bruke en enkel logger i stedet for socket -loggeren (nedenfor), endrer du import miaLogging til

import logging

logging.basicConfig (filnavn = 'eksempel.log', nivå = logging. DEBUG)

og fjern loggmottakeren fra motionDetect -filen, og alt annet skal fungere fint.

Hvis du vil kjøre bevegelsesdetektoren automatisk ved oppstart.

Rediger først skriptet og kontroller at homedir peker dit du har multiMotionDetect.py, og kopier deretter motionDetect -filen til /etc/init.d ie

cp motionDetect /etc/init.d/motionDetect

Bør være kjørbar allerede, men

chmod +x /etc/init.d/motionDetect

Registrer til slutt manuset med

sudo update-rc.d motionDetect standard

Du kan også starte, stoppe og starte systemet på nytt med

sudo /etc/init.d/motionDetect start | stop | restart

Som standard starter miaLogReceiver -sokkelloggingen samtidig. De tre andre programmene er uavhengige, men bruker samme socket -logger (men kan lett konverteres). Jeg kaller alle disse ved å bruke et cron -skript med forskjellige intervaller. For instruksjoner, se her.

CheckRunning.py sjekker at multiMotionDetect.py kjører og starter på nytt hvis ikke.

fileMaint.py gjør rengjøring på videomappene og fjerner disse etter et gitt antall dager. Den fjerner underkataloger i bevegelsesvideomappen som er angitt i første avsnitt. Den sjekker at de starter med "MV", så sørg for at du ikke har en annen katalog av betydning som starter med de samme tegnene i den mappen.

Trinn 3: Få tilgang til videoene og konfigurasjonen via Dropbox

Til slutt, hvis du vil se videoene, loggene og konfigurasjonsfilene eksternt, må du konfigurere dropbox.

Få først en dropbox -konto som er gratis. Sett deretter opp API for python -https://www.dropbox.com/developers/documentation/… Dette inkluderer nedlasting av sdk og registrering av appen for å få tilgang til API.

Når du har en nøkkel, skriver du inn den i filen globalConfig.json. Mer informasjon om systemet finner du på bloggen min dani cymru - cyber renegade Hvis du finner noe av interesse eller spørsmål, vennligst legg en kommentar på bloggen.

Anbefalt: