Installazione di Open CV su Raspberry PI eLocal - Installazione di Open CV su Raspberry PI

eLocal Group Centro Soluzioni
Installazione di Open CV su Raspberry PI






Introduzione

OpenCV (Open Source Computer Vision Library) è la libreria di visione artificiale open source e ha collegamenti per C ++, Python e Java. È utilizzato per una vasta gamma di applicazioni tra cui analisi ed elaborazioni di immagini, video di sorveglianza, rilevamento e riconoscimento di volti, tracciamento di oggetti in movimento e tanto altro

OpenCV può sfruttare l'elaborazione multi-core e presenta l'accelerazione GPU per il funzionamento in tempo reale.

Come si può installare OpenCV su Raspberry per essere utilizzata nelle applicazioni Python?

Prerequisiti

Partiamo dal presupposto che Raspbian sia installato sul tuo Raspberry Pi.

Installare OpenCV dai repository Raspbian

Il modulo OpenCV Python è disponibile dal repository Raspbian standard.

Per installare il modulo OpenCV Python, eseguire i seguenti comandi:

sudo apt update

sudo apt install python3-opencv

Il comando sopra installerà tutti i pacchetti necessari per eseguire OpenCV.

Per verificare l'installazione, importare il modulo cv2 e stampare la versione OpenCV:


python3 -c "import cv2; print(cv2.__version__)"

3.2.0

Se si desidera installare OpenCV con i collegamenti Python 2, installare il pacchetto python-opencv.

Installare OpenCV da sorgente (source)

Il modo raccomandato per installare OpenCV è quello di creare la libreria dal sorgente. In questo modo avrai il controllo completo sulle opzioni di generazione e OpenCV sarà ottimizzato per il tuo sistema.


Inizia aumentando lo spazio di swap per evitare blocchi della compilazione dovuti a problemi di memoria:

sudo nano /etc/dphys-swapfile

Cambia il valore predefinito del parametro CONF_SWAPSIZE da 100 a 1024:

CONF_SWAPSIZE=1024

Salvare il file ed eseguire il comando seguente per rendere effettive le modifiche:

sudo /etc/init.d/dphys-swapfile restart

Ora possiamo iniziare a costruire OpenCV. Innanzitutto, aggiorna l'indice dei pacchetti e installa gli strumenti di compilazione e le dipendenze richieste:


sudo apt update

sudo apt install build-essential cmake git pkg-config libgtk-3-dev "libcanberra-gtk*"

sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev

sudo apt install libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev opencl-headers

sudo apt install python3-dev python3-numpy libtbb2 libtbb-dev libdc1394-22-dev


Crea la directory di build, entra nella directory e clona i repository di OpenCV e OpenCV da Github::

mkdir ~/opencv_build && cd ~/opencv_build

git clone https://github.com/opencv/opencv.git

git clone https://github.com/opencv/opencv_contrib.git


Al momento della scrittura, la versione predefinita nei repository GitHub è la versione 4.1.1. Se si desidera installare una versione precedente di OpenCV, accedere a entrambe le directory opencv e opencv_contrib ed eseguire git checkout .

Dopo aver clonato i repository, creare una directory di build temporanea e modificarla:


mkdir -p ~/opencv_build/opencv/build && cd ~/opencv_build/opencv/build



Imposta la configurazione build di OpenCV con cmake:

cmake -D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local
-D INSTALL_C_EXAMPLES=OFF
-D INSTALL_PYTHON_EXAMPLES=OFF
-D OPENCV_GENERATE_PKGCONFIG=ON
-D ENABLE_NEON=ON
-D OPENCV_EXTRA_EXE_LINKER_FLAGS=-latomic
-D ENABLE_VFPV3=ON
-D BUILD_TESTS=OFF
-D OPENCV_ENABLE_NONFREE=ON
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules
-D BUILD_EXAMPLES=OFF ..


L'output sarà simile al seguente:

...
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/opencv_build/opencv/build

Esegui make per avviare il processo di compilazione:

make -j4

Il processo richiederà del tempo, circa 1-2 ore, a seconda del modello Raspberry Pi. Se la compilazione non riesce a un certo punto, a causa di risorse non disponibili, eseguire nuovamente il comando make e il processo continuerà da dove si è interrotto.

Al termine, vedrai un messaggio di output simile al seguente:

...
[100%] Linking CXX shared module ../../lib/python3/cv2.cpython-35m-arm-linux-gnueabihf.so
[100%] Built target opencv_python3

Il passaggio finale consiste nell'installare i file OpenCV compilati:

sudo make install

...
-- Installing: /usr/local/bin/opencv_version
-- Set runtime path of "/usr/local/bin/opencv_version" to "/usr/local/lib"

Per verificare se OpenCV è stato installato correttamente, digita i seguenti comandi e dovresti vedere la versione di OpenCV:

Libreria C ++:

pkg-config --modversion opencv4

4.1.1

Libreria Python:

python3 -c "import cv2; print(cv2.__version__)"

4.1.1-pre

Eliminare i file source

Se non hai molto spazio libero sulla scheda SD, elimina i source file:

rm -rf ~/opencv_build

L'uso eccessivo dello spazio swap potrebbe danneggiare la scheda SD. Riporta lo spazio di swap alle dimensioni originali:

sudo nano /etc/dphys-swapfile

Modifica il valore del parametro CONF_SWAPSIZE in 100:

CONF_SWAPSIZE=100

Salvare il file e attivare le modifiche:

sudo /etc/init.d/dphys-swapfile restart

Conclusione

Ti abbiamo mostrato come installare OpenCV sulla tua scheda Raspberry Pi. Costruire OpenCV dal sorgente ti dà maggiore flessibilità e dovrebbe essere la tua prima opzione quando installi OpenCV.





Ultimo accesso a questo articolo il 25/04/2024


Simone Gardella simone.gardella@elocal.it Guarda il profilo social


Potrebbero interessarti anche queste soluzioni



Torna alle soluzioni