SlideShare a Scribd company logo
Videosorveglianza 
con RaspberryPi 
Se si muove qualcosa, mandami un DM! 
a cura di Francesco Tucci
Di cosa parleremo? 
1.Cos’è il RaspberryPi 
2.“Ingredienti” per il progetto 
3.Come funziona il sistema 
4.Dimostrazione pratica 
5.Domande & Risposte 
Se la connessione 
ci assiste...
RaspberryPi, cos’è? 
Un computer completo, grande quanto una 
carta di credito. 
● CPU in tecnologia ARM 700Mhz; 
● 512MB di RAM; 
● porta ethernet; 
● uscita HDMI e composito; 
● uscita audio; 
● 2 USB (4 nella nuova versione); 
● interfaccia per videocamera; 
● modulo di I/O digitale (GPIO); 
● alimentazione 5V (anche da USB di PC); 
● sistema operativo Linux (distro a scelta); 
● storage su scheda (micro)SD; 
● consumo elettrico bassissimo (circa 4W).
La lista della spesa per il progetto 
Raspberry Pi 
Modulo videocamera 
Un po’ di Python 
Libreria Python 
per Twitter 
Uno smartphone 
Account personale 
Account per il Raspberry 
Il cuore del sistema
Cos’è ? (molto in 
breve) 
Prende il controllo esclusivo della/e 
videocamera/e (integrata, USB e IP) ed in 
base a molti parametri configurabili, attiva dei 
trigger se rileva che una determinata quantità 
di pixel cambia da un frame al successivo. 
Funziona su ogni Linux (PC, Raspberry, …). 
Nota bene: Richiede parecchie ore di “tuning”
Cos’è ? (alcuni 
parametri) 
Dimensione immagine (+alta = +cpu) a 1024x768 cpu al 50% 
Rotazione immagine a step di 90° 
Framerate (oltre 6fps il Raspberry non ce la fa e i tweet vengono persi) 
Luminosità, saturazione, contrasto 
Quantità di movimento per attivare la segnalazione 
Zona dell’immagine da controllare e maschera 
Ignora l’accensione di una luce 
Pre/post memorizzazione immagini 
Output in immagini o in video (ma serve FFMPEG encoder) 
Evidenziazione del movimento, testo in sovraimperessione 
Stream video su http con/senza autenticazione 
Eventi su rilevazione, inizio e fine evento di movimento 
Interazione con DB
Perchè usare 
? 
● Sistema già collaudato e funzionante; 
● disponibile su ogni piattaforma; 
● sicuro, con gli account privati; 
● nessuna applicazione da sviluppare; 
● non serve avere regole particolari sul router 
di casa; 
● gratuito.
Come Funziona? 
Gestire il sistema 
Controllo DM DM di comando 
DM di risposta dopo esecuzione 
Controllo movimento 
Rilevazione 
movimento 
5’ 
DM di alert 
Citazioni con immagini del movimento
Operativamente 
Ogni 5 minuti… 
(limite delle API di Twitter) 
● Controllo i DM; 
● eseguo il comando; 
● mando la risposta. 
Con “motion” attivo… 
Se rilevo movimento ti 
avviso con un DM e ti 
menziono con le 
immagini che registro.
Comandi utilizzabili 
● motionstatus risponde con lo stato del 
sistema 
● motionon attiva il controllo 
● motionoff disattiva il controllo 
● click se disattivato, scatta 
una foto e la invia 
● cancellatutto rimuove tutti i tweet con le immagini 
(batch) 
● ippubblico voglio sapere che IP ha il 
RaspberryPi 
● [...] implementabili a piacere 
Se viene inviato un comando errato, risponde con la lista dei comandi 
utilizzabili.
Sicurezza del sistema 
● Tutte le attività sono registrate su LOG; 
● l’account Twitter del sistema è protetto; 
● quando il RaspberryPi si riavvia, il controllo del 
movimento parte in automatico e invia un DM per 
avvisare dell’evento; 
● ogni ora, con controllo disattivato, manda una 
menzione con la foto dell’ambiente; 
● E se si spegne? Io uso che ha un 
client per il Raspberry e mi avvisa sul cellulare (app 
per Android e iOS) se si spegne, disconnette e altri 
mille eventi possibili (ci vorrebbe un talk a parte)
Vediamo come funziona? 
Speriamo tutti ardentemente che Murphy stia 
seguendo un altro talk, magari in un’altra città...
Domande? 
Dubbi? 
Perplessità?
Grazie! 
Riferimenti: 
http://www.raspberrypi.org 
http://www.tweepy.org 
http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHom 
e 
http://twitter.com 
http://www.pulseway.com 
Francesco Tucci 
Twitter: @cesco_78 
mail: ft@francescotucci.com 
web: http://www.iltucci.com 
web: http://www.francescotucci.com 
Link al progetto dettagliato

More Related Content

Similar to Linux day 2014 - Talk su videosorveglianza con Raspberry Pi

Codemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi Cluster
Codemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi ClusterCodemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi Cluster
Codemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi Cluster
Matteo Baccan
 
Lotus Foundations Start 1.0 Italian Version
Lotus Foundations Start 1.0 Italian VersionLotus Foundations Start 1.0 Italian Version
Lotus Foundations Start 1.0 Italian Version
Enzo Stanzione
 
Vavn244 ok
Vavn244 okVavn244 ok
Vavn244 okGpsLazio
 
Vgrd 820 td
Vgrd 820 tdVgrd 820 td
Vgrd 820 tdGpsLazio
 
Vsnc m300 ok
Vsnc m300 okVsnc m300 ok
Vsnc m300 okGpsLazio
 
Vavn284 ok
Vavn284 okVavn284 ok
Vavn284 okGpsLazio
 
Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)
Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)
Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)
Gabriele Guizzardi
 
Guida shinelco 3500
Guida shinelco 3500Guida shinelco 3500
Guida shinelco 3500Marco NuvoLi
 
Vgrd 1620 td
Vgrd 1620 tdVgrd 1620 td
Vgrd 1620 tdGpsLazio
 
Uefi: l'eterna lotta tra il bene e il male
Uefi: l'eterna lotta tra il bene e il maleUefi: l'eterna lotta tra il bene e il male
Uefi: l'eterna lotta tra il bene e il male
Marcello Missiroli
 
Vudvr8 cc(new)
Vudvr8 cc(new)Vudvr8 cc(new)
Vudvr8 cc(new)GpsLazio
 
introduzione_a_pfSense
introduzione_a_pfSenseintroduzione_a_pfSense
introduzione_a_pfSense
Massimo Giaimo
 
Windows 10 IoT
Windows 10 IoTWindows 10 IoT
Windows 10 IoT
Nicolò Carandini
 
Vudvr8 mp4
Vudvr8 mp4Vudvr8 mp4
Vudvr8 mp4GpsLazio
 
Introduzione a RaspBerry PI
Introduzione a RaspBerry PIIntroduzione a RaspBerry PI
Introduzione a RaspBerry PI
Paolo Aliverti
 
Vudvr16 mp4
Vudvr16 mp4Vudvr16 mp4
Vudvr16 mp4GpsLazio
 

Similar to Linux day 2014 - Talk su videosorveglianza con Raspberry Pi (20)

Codemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi Cluster
Codemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi ClusterCodemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi Cluster
Codemotion 2014 : ottimizzare JAVA e PHP su un’architettura Raspberry Pi Cluster
 
Lotus Foundations Start 1.0 Italian Version
Lotus Foundations Start 1.0 Italian VersionLotus Foundations Start 1.0 Italian Version
Lotus Foundations Start 1.0 Italian Version
 
Vavn244 ok
Vavn244 okVavn244 ok
Vavn244 ok
 
Vgrd 820 td
Vgrd 820 tdVgrd 820 td
Vgrd 820 td
 
Vsnc m300 ok
Vsnc m300 okVsnc m300 ok
Vsnc m300 ok
 
Vavn284 ok
Vavn284 okVavn284 ok
Vavn284 ok
 
Vavn284 v
Vavn284 vVavn284 v
Vavn284 v
 
Vudvr8 cc
Vudvr8 ccVudvr8 cc
Vudvr8 cc
 
Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)
Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)
Raspberry pi per tutti (workshop presso Warehouse Coworking Pesaro)
 
Vavn244 v
Vavn244 vVavn244 v
Vavn244 v
 
Guida shinelco 3500
Guida shinelco 3500Guida shinelco 3500
Guida shinelco 3500
 
Vgrd 1620 td
Vgrd 1620 tdVgrd 1620 td
Vgrd 1620 td
 
Uefi: l'eterna lotta tra il bene e il male
Uefi: l'eterna lotta tra il bene e il maleUefi: l'eterna lotta tra il bene e il male
Uefi: l'eterna lotta tra il bene e il male
 
Vudvr8 cc(new)
Vudvr8 cc(new)Vudvr8 cc(new)
Vudvr8 cc(new)
 
introduzione_a_pfSense
introduzione_a_pfSenseintroduzione_a_pfSense
introduzione_a_pfSense
 
Windows 10 IoT
Windows 10 IoTWindows 10 IoT
Windows 10 IoT
 
Vudvr8 mp4
Vudvr8 mp4Vudvr8 mp4
Vudvr8 mp4
 
Introduzione a RaspBerry PI
Introduzione a RaspBerry PIIntroduzione a RaspBerry PI
Introduzione a RaspBerry PI
 
Vavn314
Vavn314Vavn314
Vavn314
 
Vudvr16 mp4
Vudvr16 mp4Vudvr16 mp4
Vudvr16 mp4
 

Linux day 2014 - Talk su videosorveglianza con Raspberry Pi

  • 1. Videosorveglianza con RaspberryPi Se si muove qualcosa, mandami un DM! a cura di Francesco Tucci
  • 2. Di cosa parleremo? 1.Cos’è il RaspberryPi 2.“Ingredienti” per il progetto 3.Come funziona il sistema 4.Dimostrazione pratica 5.Domande & Risposte Se la connessione ci assiste...
  • 3. RaspberryPi, cos’è? Un computer completo, grande quanto una carta di credito. ● CPU in tecnologia ARM 700Mhz; ● 512MB di RAM; ● porta ethernet; ● uscita HDMI e composito; ● uscita audio; ● 2 USB (4 nella nuova versione); ● interfaccia per videocamera; ● modulo di I/O digitale (GPIO); ● alimentazione 5V (anche da USB di PC); ● sistema operativo Linux (distro a scelta); ● storage su scheda (micro)SD; ● consumo elettrico bassissimo (circa 4W).
  • 4. La lista della spesa per il progetto Raspberry Pi Modulo videocamera Un po’ di Python Libreria Python per Twitter Uno smartphone Account personale Account per il Raspberry Il cuore del sistema
  • 5. Cos’è ? (molto in breve) Prende il controllo esclusivo della/e videocamera/e (integrata, USB e IP) ed in base a molti parametri configurabili, attiva dei trigger se rileva che una determinata quantità di pixel cambia da un frame al successivo. Funziona su ogni Linux (PC, Raspberry, …). Nota bene: Richiede parecchie ore di “tuning”
  • 6. Cos’è ? (alcuni parametri) Dimensione immagine (+alta = +cpu) a 1024x768 cpu al 50% Rotazione immagine a step di 90° Framerate (oltre 6fps il Raspberry non ce la fa e i tweet vengono persi) Luminosità, saturazione, contrasto Quantità di movimento per attivare la segnalazione Zona dell’immagine da controllare e maschera Ignora l’accensione di una luce Pre/post memorizzazione immagini Output in immagini o in video (ma serve FFMPEG encoder) Evidenziazione del movimento, testo in sovraimperessione Stream video su http con/senza autenticazione Eventi su rilevazione, inizio e fine evento di movimento Interazione con DB
  • 7. Perchè usare ? ● Sistema già collaudato e funzionante; ● disponibile su ogni piattaforma; ● sicuro, con gli account privati; ● nessuna applicazione da sviluppare; ● non serve avere regole particolari sul router di casa; ● gratuito.
  • 8. Come Funziona? Gestire il sistema Controllo DM DM di comando DM di risposta dopo esecuzione Controllo movimento Rilevazione movimento 5’ DM di alert Citazioni con immagini del movimento
  • 9. Operativamente Ogni 5 minuti… (limite delle API di Twitter) ● Controllo i DM; ● eseguo il comando; ● mando la risposta. Con “motion” attivo… Se rilevo movimento ti avviso con un DM e ti menziono con le immagini che registro.
  • 10. Comandi utilizzabili ● motionstatus risponde con lo stato del sistema ● motionon attiva il controllo ● motionoff disattiva il controllo ● click se disattivato, scatta una foto e la invia ● cancellatutto rimuove tutti i tweet con le immagini (batch) ● ippubblico voglio sapere che IP ha il RaspberryPi ● [...] implementabili a piacere Se viene inviato un comando errato, risponde con la lista dei comandi utilizzabili.
  • 11. Sicurezza del sistema ● Tutte le attività sono registrate su LOG; ● l’account Twitter del sistema è protetto; ● quando il RaspberryPi si riavvia, il controllo del movimento parte in automatico e invia un DM per avvisare dell’evento; ● ogni ora, con controllo disattivato, manda una menzione con la foto dell’ambiente; ● E se si spegne? Io uso che ha un client per il Raspberry e mi avvisa sul cellulare (app per Android e iOS) se si spegne, disconnette e altri mille eventi possibili (ci vorrebbe un talk a parte)
  • 12. Vediamo come funziona? Speriamo tutti ardentemente che Murphy stia seguendo un altro talk, magari in un’altra città...
  • 14. Grazie! Riferimenti: http://www.raspberrypi.org http://www.tweepy.org http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHom e http://twitter.com http://www.pulseway.com Francesco Tucci Twitter: @cesco_78 mail: ft@francescotucci.com web: http://www.iltucci.com web: http://www.francescotucci.com Link al progetto dettagliato