Table des matières:

Système de sécurité pour webcam Pizero Motion Detect : 3 étapes
Système de sécurité pour webcam Pizero Motion Detect : 3 étapes

Vidéo: Système de sécurité pour webcam Pizero Motion Detect : 3 étapes

Vidéo: Système de sécurité pour webcam Pizero Motion Detect : 3 étapes
Vidéo: WebCam USB et PiCaméra en streaming avec Raspberry Pi et MOTION (1/3) 2024, Novembre
Anonim
Système de sécurité pour webcam Pizero Motion Detect
Système de sécurité pour webcam Pizero Motion Detect

Ce système utilise un pizero, un dongle wifi et une ancienne webcam dans un étui d'allumettes personnalisé. Il enregistre des vidéos de détection de mouvement à 27 ips de tout mouvement important dans mon allée. Il télécharge ensuite les clips sur un compte dropbox. Peut également afficher les journaux et modifier la configuration via la boîte de dépôt.

Étape 1: Configuration des prérequis

Image
Image

Commencez par mettre à jour le système d'exploitation vers la dernière version comme décrit ici.

Configurez ensuite le wifi comme décrit ici.

Ensuite, vous devrez configurer OpenCv. Il y a de bonnes instructions sur la façon de le faire sur pyimagesearch. Si vous optez pour la version 3.0, attendez-vous à ce que cela prenne beaucoup de temps. L'une des étapes prend 9 heures à faire. Vous aurez également besoin des liaisons python qui sont expliquées sur cette page.

Lorsque tout est opérationnel, vous êtes prêt à télécharger le logiciel de détection de mouvement.

Étape 2: Configuration du logiciel de détection de mouvement

Accéder aux vidéos et à la configuration via Dropbox
Accéder aux vidéos et à la configuration via Dropbox

Le code se trouve sur bitbucket. Copiez ces fichiers en utilisant

git clone

ou si vous préférez les télécharger individuellement.

La partie principale de ce système est multiMotionDetect.py. Il utilise beaucoup de files d'attente et d'événements de multitraitement.

Tout d'abord, vous devez décider où vous souhaitez stocker les images vidéo MotionVideos et définir cette valeur dans le fichier globalConfig.json. Copiez ensuite les fichiers config.json.txt et maskedAreas.json.txt à la racine de ce dossier. Le config.json.txt a le paramètre suivant qui peut être modifié à distance.

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

}

FrameThreshold: est le nombre d'images significatives avant qu'un mouvement ne soit détecté.

staticThreshold: est le nombre d'images statiques avant de désactiver le tournage.

minArea: est la taille minimale de la zone pour être comptée comme significative.

postSeconds: C'est le nombre de secondes à partir de la fin du tournage pour que le mouvement passe dans la file d'attente. readCamNice: C'est la priorité à donner au

processus readCam. Celui-ci est compris entre -20 et +20 (plus le chiffre est bas, plus la priorité est élevée). Mais n'en faites pas trop ou vous ferez planter le système d'exploitation.

checkMotionNice: La priorité du processus de détection de mouvement.

writeCamNice: La priorité du processus d'écriture de la caméra.

maxqsize: C'est le nombre de secondes qui est ensuite multiplié par les images par seconde.

Je ne modifie principalement que le min_area pour tenir compte des conditions de vent.

Si vous préférez utiliser un simple logger plutôt que le socket logger (ci-dessous), changez l'import miaLogging en

importer la journalisation

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

et supprimez le récepteur de journal du fichier motionDetect et tout le reste devrait fonctionner correctement.

Si vous souhaitez exécuter la détection de mouvement automatiquement au démarrage.

Modifiez d'abord le script et vérifiez que le répertoire d'accueil pointe vers l'endroit où vous avez multiMotionDetect.py, puis copiez le fichier motionDetect dans /etc/init.d c'est-à-dire

cp motionDetect /etc/init.d/motionDetect

Devrait être déjà exécutable mais

chmod +x /etc/init.d/motionDetect

Enfin, enregistrez le script avec

sudo update-rc.d motionDetect par défaut

Vous pouvez également démarrer, arrêter et redémarrer le système avec

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

Par défaut, la journalisation du socket miaLogReceiver démarre en même temps. Les trois autres programmes sont indépendants mais utilisent le même socket logger (mais pourraient facilement être convertis). J'appelle tout cela en utilisant un script cron d'intervalles différents. Pour les instructions, regardez ici.

CheckRunning.py vérifie que multiMotionDetect.py est en cours d'exécution et redémarre sinon.

fileMaint.py fait le ménage sur les dossiers vidéo en les supprimant après le nombre de jours donné. Il supprime les sous-répertoires du dossier de vidéos animées défini dans le premier paragraphe. Il vérifie qu'ils commencent par "MV", alors assurez-vous que vous n'avez pas un autre répertoire d'importance commençant par les mêmes caractères dans ce dossier.

Étape 3: Accéder aux vidéos et à la configuration via Dropbox

Enfin, si vous souhaitez visualiser vos vidéos, journaux et fichiers de configuration à distance, vous devrez configurer Dropbox.

Obtenez d'abord un compte dropbox qui est gratuit. Configurez ensuite l'API pour python -https://www.dropbox.com/developers/documentation/… Cela inclut le téléchargement du SDK et l'enregistrement de l'application pour accéder à l'API.

Lorsque vous avez une clé, entrez-la dans le fichier globalConfig.json. Plus d'informations sur le système peuvent être trouvées sur mon blog dani cymru - cyber renegade Si vous trouvez quelque chose d'intéressant ou des questions, veuillez mettre un commentaire sur le blog.

Conseillé: