Raspberry Pi Camera

Raspberry Pi Camera

Vuoi provare a utilizzare il tuo Raspberr Pi per scattare delle immagini, magari come sistema di sorveglianza o solo per diletto? Vediamo in questo articolo come utilizzare questo accessorio.

Dopo aver acquistato il mio Raspberry Pi 4, ho subito ordinato la Raspberry Pi Camera 1.3 già completa di supporto in plastica trasparente. Avevo bisogno di provare a realizzare alcune delle idee che avevo per il Raspberry una delle quali, monitorare una stanza o richiedere delle immagini on-demand.

Per fare questo ho collegato la camera al Raspberry Pi e ho iniziato subito a sperimentare. Vediamo intanto di cosa abbiamo bisogno e quali sono gli step minimi per utilizzare questo componente.



Naturalmente avremo bisogno di un Raspberry Pi, di una Camera e del bus per il collegamento. Una volta collegata la Camera possiamo accedere al nostro Raspberry Pi ed entrare nella configurazione via terminale:

sudo raspi-config

Andremo quindi in Interfacing Options.

Abilitiamo la camera, successivamente dovremo riavviare Raspberry con

sudo reboot

Un altro modo per abilitarla, via interfaccia grafica è accedendo al menu Preferences => Raspberry Pi Configuration, andremo sul tab Interfaces e abiliteremo Camera. Appena confermato ci verrà chiesto di riavviare.

La nostra camera è collegata ed abilitata, siamo pronti ad utilizzarla.



E adesso come la usiamo? Semplice come prima prova suggerisco Node-RED, molto semplice e veloce, tra poco di farò vedere come creare il flow e testarlo. Ma prima dobbiamo aggiungere alle nostre palette di Node-RED node-red-contrib-camerapi che ci consentirà di utilizzare la camera del nostro Raspberry Pi.

Come suggerito nella documentazione del nodo installato dovremo eseguire i seguenti comandi per installare la parte python necessaria all’utilizzo della camera:

sudo apt-get update
sudo apt-get install python-picamera python3-picamera

Creiamo quindi il nostro nuovo flow, inseriamo 2 nodi: un Inject che ci servirà da trigger, il nodo dedicato alla camera.

Configuriamo il nostro nodo per catturare l’immagine, ad esempio cambiando la risoluzione o rotazione dell’immagine, possiamo anche specificare il nome del file e il path, altrimenti il nome sarà autogenerato e il path di default sarà /home/pi/Pictures.

Deployamo il nostro nuovo flow (che trovate su github) e testiamo subito la nostra camera dando l’input da inject. Dopo pochi secondi vedremo che il file immagine viene generato.

Ora siamo in grado di leggere l’immagine e farne quello che vogliamo, io ad esempio uso questo flow all’interno di un bot telegram per avere immagini on-demand della stanza dove il Raspberry Pi è in funzione.

Un altro modo per testare la nostra camera è ovviamente utilizzare python.

Con il seguente script (che trovate su github) potrete aprire la vostra camera e generare l’immagine andando a salvare il frame corrente esattamente come in Node-RED.

from picamera import PiCamera
from time import sleep
camera=PiCamera()
camera.start_preview()
sleep(2)
camera.capture('/home/pi/Desktop/test.jpg')
camera.stop_preview()

Sta quindi a voi decidere in che modo utilizzare questo accessorio semplice ma utile al tempo stesso, potrete ad esempio sbizzarrirvi nel Machine Learning con Pythone OpenCV o TensorFlow, o sfruttarla in Node-RED nei vostri flow!

 

Nessun commento

Aggiungi il tuo commento