Sommario:

Pizero Motion Detect Sistema di sicurezza per webcam: 3 passaggi
Pizero Motion Detect Sistema di sicurezza per webcam: 3 passaggi

Video: Pizero Motion Detect Sistema di sicurezza per webcam: 3 passaggi

Video: Pizero Motion Detect Sistema di sicurezza per webcam: 3 passaggi
Video: Sistema Sorveglianza (Motion Detection) Raspberry Pi [PIR Infrarossi e Camera] 2024, Dicembre
Anonim
Pizero Motion Detect Sistema di sicurezza per webcam
Pizero Motion Detect Sistema di sicurezza per webcam

Questo sistema utilizza un pizero, un dongle wifi e una vecchia webcam in una scatola di fiammiferi personalizzata. Registra video di rilevamento del movimento a 27 fps di qualsiasi movimento significativo sul mio vialetto. Quindi carica le clip su un account Dropbox. Inoltre può visualizzare i registri e modificare la configurazione tramite dropbox.

Passaggio 1: impostazione dei prerequisiti

Image
Image

Innanzitutto aggiorna il sistema operativo all'ultima versione come descritto qui.

Quindi imposta il wifi come descritto qui.

Quindi dovrai configurare OpenCv. Ci sono buone istruzioni su come farlo su pyimagesearch. Se stai per la versione 3.0, aspettati che richieda molto tempo. Uno dei passaggi richiede 9 ore per essere eseguito. Avrai anche bisogno dei collegamenti Python che sono spiegati in quella pagina.

Quando hai tutto pronto e funzionante, sei pronto per scaricare il software di rilevamento del movimento.

Passaggio 2: configurazione del software di rilevamento del movimento

Accesso ai video e configurazione tramite Dropbox
Accesso ai video e configurazione tramite Dropbox

Il codice può essere trovato su bitbucket. Copia questi file usando

git clone

o se preferisci scaricali singolarmente.

La parte principale di questo sistema è multiMotionDetect.py. Utilizza molte code ed eventi di multiprocessing.

Prima di tutto devi decidere dove vuoi che le immagini video vengano archiviate MotionVideos e impostare questo valore nel file globalConfig.json. Quindi copia config.json.txt e maskedAreas.json.txt nella radice di questa cartella. Il config.json.txt ha la seguente impostazione che può essere modificata in remoto.

{ "frameThreshold": "4", "staticThreshold": "100", "min_area":"650", "postSeconds":"7", "readCamNice":"-6", "checkMotionNice":"5", "writeCamNice": "5", "maxqsize": "6"

}

FrameThreshold: è il numero di frame significativi prima che venga rilevato il movimento.

staticThreshold: è il numero di fotogrammi statici prima della disattivazione delle riprese.

minArea: è la dimensione minima dell'area per essere considerata significativa.

postSeconds: questo è il numero di secondi dalla fine delle riprese per il movimento per passare attraverso la coda. readCamNice: Ecco quanta priorità dare al

processo readCam. Questo è compreso tra -20 e +20 (più bassa è la cifra, maggiore è la priorità). Ma non esagerare o bloccherai il sistema operativo.

checkMotionNice: la priorità per il processo di rilevamento del movimento.

writeCamNice: La priorità del processo di scrittura della telecamera.

maxqsize: questo è il numero di secondi che viene poi moltiplicato per i fotogrammi al secondo.

Per lo più cambio solo min_area per tenere conto delle condizioni del vento.

Se preferisci usare un semplice logger piuttosto che il socket logger (sotto) cambia l'importazione miaLogging in

importazione registrazione

logging.basicConfig(filename='example.log', level=logging. DEBUG)

e rimuovere il ricevitore di registro dal file motionDetect e tutto il resto dovrebbe funzionare correttamente.

Se vuoi eseguire il rilevamento del movimento automaticamente all'avvio.

Prima modifica lo script e controlla che homedir punti al punto in cui hai multiMotionDetect.py, quindi copia il file motionDetect in /etc/init.d ie

cp motionDetect /etc/init.d/motionDetect

Dovrebbe essere già eseguibile ma

chmod +x /etc/init.d/motionDetect

Infine registra lo script con

sudo update-rc.d motionDetect defaults

Puoi anche avviare, arrestare e riavviare il sistema con

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

Per impostazione predefinita, la registrazione del socket miaLogReceiver verrà avviata contemporaneamente. Gli altri tre programmi sono indipendenti ma utilizzano lo stesso socket logger (ma potrebbero essere facilmente convertiti). Li chiamo tutti usando uno script cron di intervalli diversi. Per le istruzioni guarda qui.

CheckRunning.py controlla che multiMotionDetect.py sia in esecuzione e in caso contrario esegue un riavvio.

fileMaint.py esegue la pulizia delle cartelle video rimuovendole dopo un determinato numero di giorni. Rimuove le sottodirectory della cartella video in movimento impostata nel primo paragrafo. Controlla che inizino con "MV", quindi assicurati di non avere un'altra directory importante che inizi con gli stessi caratteri all'interno di quella cartella.

Passaggio 3: accesso ai video e configurazione tramite Dropbox

Infine, se desideri visualizzare i tuoi video, registri e file di configurazione in remoto, dovrai configurare Dropbox.

Per prima cosa ottieni un account Dropbox gratuito. Quindi imposta l'API per python -https://www.dropbox.com/developers/documentation/… Ciò include il download dell'SDK e la registrazione dell'app per accedere all'API.

Quando hai una chiave, inseriscila nel file globalConfig.json. Maggiori informazioni sul sistema possono essere trovate sul mio blog dani cymru - cyber renegade Se trovi qualcosa di interessante o qualsiasi domanda per favore metti un commento sul blog.

Consigliato: