giovedì 21 Novembre 2024
Home / Fotocamere / PiCam – Installazione di OpenCV

PiCam – Installazione di OpenCV

Inoltrandoci sempre di più nella giungla della Picam: proseguiamo quindi il nostro corso.

Oggi tratteremo l’installazione di OpenCV sul nostro Raspberry Pi; Per chi non lo conoscesse, OpenCV è una libreria di visione artificiale in tempo reale molto potente, opensurce e si, gira anche sulla nostra schedina. E’ un programma molto pesante, molto esoso di risorse e per questo vi consiglierei di installarlo su di un Raspberry “libero” o che comunque non abbia altre operazioni da fare, meglio ancora se Raspberry Pi 3, non per farvi spendere inutilmente dei soldi, ma perché è più comodo avere il modello più performante proprio in virtù delle operazioni molto complicate (rapportate a un Raspberry Pi) che il software deve compiere.

1ec3cc

Tra le varie cose che OpenCv ci permette di fare, abbiamo il riconoscimento facciale, a cui potremmo abbinare un sistema che “se le ricordi” e le confronti con un archivio…

face_detection

O, un altro esempio potrebbe essere l’implementazione di un sistema visuale su un robot. In questo video, un maker portoghese ha creato un piccolo robot che segue una linea sul pavimento

istantanea_2016-11-17_17-21-30

Insomma, i progetti possibili sono tantissimi e con la fantasia se ne possono inventare di altri. Noi impareremo ad usare questo potente strumento nella lezione 4, ora installiamolo!

 

Pre-Installazione

Prima di partire per la vacanza in camper sarebbe buona regola fare un controllo totale del mezzo, quindi, visto che non ho un camper, e che tanto meno sono in vacanza…
sudo apt-get update

sudo apt-get update

sudo rpi-update

Installazione

Installiamo adesso i pacchetti necessari per la compilazione del sorgente di OpenCV
sudo apt-get install build-essential cmake pkg-config
Installiamo ora le librerie richieste, riguardanti le immagini
sudo apt-get install libjpeg8-dev libtiff4-dev libjasper-dev libpng12-dev
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev

Okay, ora dobbiamo installare la libreria GTK
sudo apt-get install libgtk2.0-dev
Considerando che le immagini dovranno essere gestite praticamente in tempo reale e con una frequenza più che modesta, installiamo anche le librerie relative al controllo I/O delle immagini
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
Per ottimizzare un po’ tutta la macchina digitiamo
sudo apt-get install libatlas-base-dev gfortran
Ora, scarichiamo e installiamo pip, il “gestore librerie” di Python con
wget https://bootstrap.pypa.io/get-pip.py

sudo python get-pip.py
Installiamo virtualenv e rimuoviamo la cache
sudo pip install virtualenv virtualenvwrapper
sudo rm -rf ~/.cache/pip
Andiamo ora a modificare il profilo con
nano ~/.profile

Ricarichiamo tutto con
source ~/.profile
Creiamo adesso l’ambiente virtuale computer vision
mkvirtualenv cv
Installiamo l’ultima versione di python-dev
sudo apt-get install python2.7-dev
Per una migliore gestione degli array d’immagine installiamo NumPy con il comando seguente (circa 15 minuti richiesti – una pausa ce la meritiamo)
pip install numpy
Vi siete ripresi un pochino? Bene, ora finalmente scarichiamo il sorgente di OpenCV, lo scompattiamo e poi entriamo nella directory
cd && wget -O opencv-2.4.10.zip http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.10/opencv-2.4.10.zip/download

unzip opencv-2.4.10.zip

cd opencv-2.4.10
Settiamo la build
mkdir build

cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON ..
Compiliamo ora e.. andiamo a letto 🙂 (tempo richiesto circa 5 ore – la pazienza è virtù dei forti )
make
Svegliati? Riposato bene? Possiamo, finalmente, installare OpenCV
sudo make install

sudo ldconfig
Andiamo a creare i link per il corretto funzionamento
cd ~/.virtualenvs/cv/lib/python2.7/site-packages/

ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so

ln -s /usr/local/lib/python2.7/site-packages/cv.py cv.py

Sono consapevole del fatto che sia una faccenda piuttosto ostica, spero comunque di avervi dato un aiuto concreto.

A proposito di Gab Tos

Vedi Anche

MagPi144-doppiapagina

MagPi in Italiano! Elettronica di Base

Estratto, tradotto in italiano, di The MagPi N°144 la rivista ufficiale della Fondazione Raspberry Pi.

Powered by themekiller.com