Taula de continguts:
- Subministraments
- Pas 1: Pas 1: Decapitar
- Pas 2: Pas 2: afegiu Smart
- Pas 3: Pas 3: ompliu-la
- Pas 4: Pas 4: configureu el Pi
- Pas 5: Pas 5: Moure el cap
- Pas 6: Pas 6: fer-ho
- Pas 7: Pas 7: Transmet el vídeo des del Pi
- Pas 8: Pas 8: Detecció del cos
- Pas 9: pas 9: enviament de notificacions de zombis
- Pas 10: Què Hoot
Vídeo: Detecció de zombis Mussol de seguretat intel·ligent (aprenentatge profund): 10 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
Hola a tothom, benvinguts a T3chFlicks! En aquest tutorial de Halloween, us mostrarem com posem un toc fantasmagòric a un clàssic mundà de la llar: la càmera de seguretat.
Com ?! Hem creat un mussol de visió nocturna que utilitza el processament d’imatges per fer un seguiment de la gent. Ah, i ho fa, com la cosa real!
Ens ha emocionat molt aquest projecte i l’hem estat esperant des que va sortir el nou Raspberry Pi 4. Té 4 GB de memòria RAM, que obre la porta a moltes possibilitats realment emocionants, inclòs fer processament d’imatges amb models d’aprenentatge profund en temps real.
Si voleu estar pendents d’apropar-vos als zombis per Halloween o simplement comprovar el vostre jardí la resta de l’any, aquest és el vostre. La seguretat no ha de ser avorrida per ser efectiva.
Subministraments
Per a aquesta compilació, necessitareu:
- Raspberry Pi 4 (4 GB Ram) Amazon
- Càmera de visió nocturna Amazon
- Micro Servo Amazon
- Fals Owl Amazon
- Pega Amazon
- Pinta Amazon
- Cargols Amazon
- Altaveu USB Amazon
- Alimentació portàtil gran (5v +) Amazon
- Impressora 3D Amazon
Pas 1: Pas 1: Decapitar
a. Estireu el cap del mussol (de vegades només heu de ser brutals) tirant-lo fort del cap on s’enganxa a la molla.
b. El cap del mussol es connecta amb el cos mitjançant un cilindre que s’assenta damunt d’una gran molla. Traieu aquest cilindre traient el cargol.
c. El cilindre que acabeu de treure està format per dues parts, una copa de plàstic i un coixinet que hi ha dins. Traieu el coixinet del cilindre amb un tornavís (o una eina similar).
d. Amb el cargol que connectava el cilindre amb el moll, fixeu el servo al cilindre.
e. Traieu la molla descargolant els tres cargols que la fixen al cos.
f. Feu un forat a la part superior del cos del mussol que sigui prou gran per adaptar-se a alguns cables i al cable de la càmera. Per fer-ho, hem utilitzat una combinació poc elegant d’un trepant i un tornavís.
Pas 2: Pas 2: afegiu Smart
a. Imprimiu en 3D la funda de la càmera i pinteu-la perquè coincideixi amb el mussol: hem utilitzat algunes pintures acríliques barates. Pintar no és un pas vital, però millora dramàticament l’aspecte general.
b. Amb el cap del mussol cap per avall, cargoleu la part superior de la caixa de la càmera a l’interior del cap, on sobresurt el bec.
c. Introduïu la càmera a la funda i connecteu el cable de la càmera.
d. Enganxeu el servo al tauler superior de la molla.
e. Connecteu cables llargs als servo pins (5V, Gnd, senyal)
f. Introduïu el cable i els cables de la càmera del servo a través de la molla i pel forat que heu fet a la part superior del cos perquè quedin dins del cos buit del mussol.
Pas 3: Pas 3: ompliu-la
a. Traieu el tap de la part inferior del mussol i augmenteu la mida d’aquest forat tallant el plàstic. Continueu augmentant la mida fins que el Raspberry Pi i l’altaveu puguin encabir-se al cos del mussol.
b. Un cop el forat sigui prou gran perquè tots els components hi cabin, traieu el cable de la càmera que heu alimentat per la part superior del mussol de la base i connecteu-lo al Raspberry Pi.
c. De la mateixa manera, estireu els servocables i connecteu-los al Raspberry Pi:
- + 5v al servo => + 5V al Pi
- Gnd servo => gnd Pi
- Servo de senyal => pin 12 Pi
d. Connecteu l’altaveu USB al Pi.
e. Inseriu la targeta SD al Pi.
f. Power Pi mitjançant font d'alimentació portàtil.
g. Introduïu el Pi, la font d'alimentació i l'altaveu al mussol a través del forat de la base.
Pas 4: Pas 4: configureu el Pi
TOT EL CODI ES POT TROBAR A
a. Descarregueu Raspian i pengeu-lo a la vostra targeta SD mitjançant Balena Etcher.
b. Per accedir al vostre pi de forma remota
- Afegiu un fitxer anomenat ssh a la vostra targeta sd d'arrencada
-
Afegiu un fitxer anomenat wpa_supplicant.conf i poseu les vostres credencials de wifi
ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdev update_config = 1
network = {ssid = "MySSID" psk = "MyPassword"}
c. Inseriu la targeta SD al pi i proveu-hi l'accés mitjançant ssh.
Pas 5: Pas 5: Moure el cap
Tutorial de codi per moure el cap (controlar un servo amb un raspberry pi)
Per controlar un servo que s’executa al Pi, crearem un script que controli els pins GPIO als quals està connectat el servo.
a. Connecteu el servo al Pi:
- + 5v al servo => + 5V al Pi
- Gnd servo => gnd a Pi
- Servo de senyal => pin 12 a Pi
b. Primer heu de configurar els pins gpio per utilitzar PWM al pin de senyal del servo.
c. A continuació, és tan senzill com seleccionar el cicle de treball (explicat aquí) del pin de senyal per moure el servo de 90 graus amb un cicle de treball de 7,5 a 0 graus quan el cicle de treball és de 2,5 i a 180 graus amb un cicle de treball de 12.5
importar RPi. GPIO com a GPIO
temps d'importació GPIO.setmode (GPIO. BOARD) GPIO.setwarnings (False) GPIO.setup (12, GPIO. OUT) p = GPIO. PWM (12, 50) p.start (7.5) try: while True: p. ChangeDutyCycle (7.5) # 90 graus time.sleep (1) p. ChangeDutyCycle (2.5) # 0 graus time.sleep (1) p. ChangeDutyCycle (12.5) # 180 graus time.sleep (1) excepte KeyboardInterrupt: p.stop () GPIO.cleanup ()
Pas 6: Pas 6: fer-ho
Tutorial de codis per fer sonar el mussol (reproduint àudio amb un raspberry pi)
a. Connecteu l’altaveu USB.
b. Baixeu-vos un so: vam triar un crit fantasmagòric.
c. Reprodueix el so executant aquesta ordre: omxplayer -o alsa: hw: 1, 0 owl_sound.mp3
[d. Si això no funciona, comproveu quina sortida utilitza el vostre Pi i quin volum utilitzeu amb l’ordre alsamixer: us rebrà la pantalla del mesclador on podreu canviar el volum i seleccionar el dispositiu multimèdia. Per augmentar el volum del so, feu l'ordre com aquest omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500 Per reproduir aquest so mitjançant Python, consulteu el nostre script de prova.]
subprocés d’importació
command = "omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500" player = subprocess. Popen (command.split (''), stdin = subprocess. PIPE, stdout = subprocess. PIPE, stderr = subprocess. PIPE)
Pas 7: Pas 7: Transmet el vídeo des del Pi
Tutorial de codi per crear un flux de càmera de raspberry pi
a. Executeu python app.py i visualitzeu-lo a la vostra xarxa local a https://raspberrypi.local: 5000
b. Aquest codi ha estat pres i adaptat lleugerament de Miguel Grinberg https://blog.miguelgrinberg.com/post/flask-video- … explica molt bé com es fa i els seus tutorials són fantàstics. El concepte bàsic és que utilitzem fils i generadors per millorar la velocitat de transmissió.
Pas 8: Pas 8: Detecció del cos
Codi per a la detecció del cos (ImageNetSSD en un flux de vídeo amb raspberry pi)
a. Com que fem servir el Raspberry Pi 4, vam pensar que era millor provar-hi alguns models d’aprenentatge profund en lloc del mètode bàsic HaarCascade al que ens hem limitat fins ara.
b. Vam fer una ullada a alguns dels models pre-entrenats que hi havia, com ara YOLOv3, que té un aspecte fantàstic. YOLOv3 minúsculs pesos, que haurien estat perfectes per al Pi, però no ho vam poder fer funcionar:(c. En lloc d’això, vam optar pel model MobileSSD que podem executar mitjançant el mòdul OpenCVs DNN (deep neural net), tal com vam aprendre d’aquest codi: https://heartbeat.fritz.ai/real-time-object-detection-on-raspberry -pi-using-opencv-dnn-98827255fa60 i de l'heroi dels tutorials de processament d'imatges, Adrian Rosebrock: https://www.pyimagesearch.com/2017/09/11/object-detection-with-deep-learning-and- opencv /
d. No obstant això, a mesura que intentem transmetre aquest contingut i executar models en tots els fotogrames, es tradueix en un vídeo fragmentat i retardat. Vam tornar a aprendre d’Adrian Rosebrock https://www.pyimagesearch.com/2017/10/16/raspberry-pi-deep-learning-object-detection-with-opencv/ i vam utilitzar el mòdul de processament múltiple Python per posar les nostres imatges en cues on es poden processar sense bloquejar tant el flux de la càmera.
e. Proveu d'executar el codi vosaltres mateixos:)
Pas 9: pas 9: enviament de notificacions de zombis
Codi per enviar una notificació (python al telèfon)
a. Vam decidir utilitzar el servei de notificació
b. Podeu obtenir un compte gratuït i descarregar l’aplicació i configurar-vos ràpidament fent notificacions mòbils. Vam crear les notificacions mitjançant un script python com aquest.
sol·licituds d’importació
payload = {"app_key": "APP_KEY", "app_secret": "APP_SECRET", "target_type": "app", "content": "Owl ha detectat un zombi." } r = requests.post ("https://api.push.co/1/push", dades = càrrega útil)
És molt senzill i podeu personalitzar el nom de la notificació.
Pas 10: Què Hoot
Esperem que us hagi agradat el nostre projecte Smart Security Owl. Aquesta ha estat una marca molt divertida i em sento molt més segur sabent que la nostra casa està protegida pel nostre mussol de confiança.
Si creieu que això seria un fabulós complement de Halloween a la vostra llar intel·ligent, voteu-nos al concurs Instructables Halloween i, com és habitual, recordeu que m’agrada, comenteu i subscriviu-vos.
Inscriviu-vos a la nostra llista de correu!
Recomanat:
Llum LED d'escriptori intel·ligent - Il·luminació intel·ligent amb Arduino - Espai de treball Neopixels: 10 passos (amb imatges)
Llum LED d'escriptori intel·ligent | Il·luminació intel·ligent amb Arduino | Espai de treball de Neopixels: ara passem molt de temps a casa estudiant i treballant virtualment, per què no fer que el nostre espai de treball sigui més gran amb un sistema d’il·luminació personalitzat i intel·ligent basat en els LEDs Arduino i Ws2812b. Aquí us mostro com construir el vostre Smart Llum LED d'escriptori que
Converteix un telèfon intel·ligent no utilitzat en una pantalla intel·ligent: 6 passos (amb imatges)
Converteix un telèfon intel·ligent no utilitzat en una pantalla intel·ligent: el tutorial de Deze es troba a Engels, per a la versió del clàssic espanyol. Teniu un telèfon intel·ligent (antic) sense utilitzar? Convertiu-lo en una pantalla intel·ligent amb Fulls de càlcul de Google i paper i llapis seguint aquest senzill tutorial pas a pas. Quan hagis acabat
Làmpada LED intel·ligent controlada per telèfon intel·ligent Bluetooth: 7 passos
Làmpada LED intel·ligent controlada per telèfon intel·ligent Bluetooth: sempre somio amb controlar els meus aparells d’il·luminació. Aleshores algú va fabricar una increïble llum LED de colors. Fa poc em vaig trobar amb una làmpada LED de Joseph Casha a Youtube. Inspirant-me en ell, vaig decidir afegir diverses funcions mantenint la comoditat
Rellotge despertador intel·ligent: un despertador intel·ligent fabricat amb Raspberry Pi: 10 passos (amb imatges)
Rellotge despertador intel·ligent: un rellotge despertador intel·ligent fet amb Raspberry Pi: Heu volgut mai un rellotge intel·ligent? Si és així, aquesta és la solució per a vosaltres. He creat Smart Alarm Clock (Rellotge despertador intel·ligent), aquest és un rellotge que permet canviar l’hora de l’alarma segons el lloc web. Quan l’alarma s’activi, hi haurà un so (brunzidor) i 2 llums
Com controlar l'interruptor intel·ligent bàsic Sonoff basat en ESP8266 amb un telèfon intel·ligent: 4 passos (amb imatges)
Com controlar el commutador intel·ligent bàsic de Sonoff basat en ESP8266 amb un telèfon intel·ligent: Sonoff és una línia de dispositius per a Smart Home desenvolupada per ITEAD. Un dels dispositius més flexibles i econòmics d’aquesta línia és Sonoff Basic. És un commutador habilitat per Wi-Fi basat en un gran xip, ESP8266. En aquest article es descriu com configurar el Cl