Cómo instalar OpenCV en Raspberry Pi 3

27 feb 2021 3 min di lettura
Cómo instalar OpenCV en Raspberry Pi 3
Indice dei contenuti

Introducción

OpenCV (Open Source Computer Vision Library) es una biblioteca de visión artificial de código abierto y tiene accesos directos para C ++, Python y Java. Se utiliza para una amplia gama de aplicaciones que incluyen análisis de imágenes médicas, procesamiento de imágenes de Street View, video de vigilancia, detección y reconocimiento de rostros, seguimiento de objetos en movimiento, extracción de modelos 3D y mucho más.

OpenCV puede aprovechar el procesamiento de múltiples núcleos y cuenta con aceleración de GPU para operación en tiempo real.

En este tutorial, explicaremos cómo instalar OpenCV en Raspberry Pi 3.

Prerrequisitos

Suponemos que Raspbian está instalado en su Raspberry Pi.

Instale OpenCV desde los repositorios de Raspbian

El módulo OpenCV Python está disponible en el repositorio estándar de Raspbian.

Para instalar el módulo OpenCV Python, ejecute los siguientes comandos:

sudo apt update
sudo apt install python3-opencv

El comando anterior instalará todos los paquetes necesarios para ejecutar OpenCV.

Para verificar la instalación, importe el cv2 e imprima la versión OpenCV:

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

Si desea instalar OpenCV con enlaces de Python 2, instale el paquete python-opencv

Instalar OpenCV desde la fuente

La forma recomendada de instalar OpenCV es compilar la biblioteca desde la fuente. De esta manera, tendrá un control completo sobre las opciones de compilación y OpenCV se optimizará para su sistema.

Comience aumentando el espacio de intercambio para evitar bloquear la compilación debido a problemas de memoria:

sudo nano /etc/dphys-swapfile

Cambie el valor predeterminado del parámetro CONF_SWAPSIZE 100 a 1024:

CONF_SWAPSIZE=1024

Guarde el archivo y ejecute el siguiente comando para que los cambios surtan efecto:

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

Ahora podemos empezar a construir OpenCV. Primero, actualice el índice del paquete e instale las herramientas de compilación y las dependencias necesarias:

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

Cree el directorio de compilación, ingrese el directorio y clone los repositorios OpenCV y OpenCV desde Github::

mkdir ~/opencv_build && cd ~/opencv_build
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

En el momento de escribir este artículo, la versión predeterminada en los repositorios de GitHub es la versión 4.1.1. Si desea instalar una versión anterior de OpenCV, vaya a los opencv y opencv_contrib y ejecute git checkout <opencv-version>.

Después de clonar los repositorios, cree un directorio de compilación temporal y modifíquelo:

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

Configure la configuración de compilación de 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..

La salida se verá así:

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

Ejecute make para iniciar el proceso de compilación:

make -j4

El proceso llevará algún tiempo, alrededor de 1 a 2 horas, según el modelo de Raspberry Pi. Si la compilación falla en algún momento, debido a recursos no disponibles, ejecute el make nuevamente y el proceso continuará desde donde lo dejó.

Cuando termine, verá un mensaje de salida similar al siguiente:

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

El último paso es instalar los archivos OpenCV compilados:

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

Para comprobar si OpenCV se ha instalado correctamente, escriba los siguientes comandos y debería ver la versión de OpenCV:

Biblioteca C ++:

pkg-config --modversion opencv4
4.1.1

Biblioteca de Python:

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

Eliminar los archivos de origen

Si no tiene mucho espacio libre en su tarjeta SD, elimine los archivos de origen:

rm -rf ~/opencv_build

El uso excesivo del espacio de intercambio podría dañar la tarjeta SD. Devuelva el espacio de intercambio a su tamaño original:

sudo nano /etc/dphys-swapfile

Cambie el valor del parámetro CONF_SWAPSIZE 100:

CONF_SWAPSIZE=100

Guarde el archivo y active los cambios:

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

Conclusión

Le mostramos cómo instalar OpenCV en su placa Raspberry Pi. La construcción de OpenCV desde la fuente le brinda más flexibilidad y debería ser su primera opción al instalar OpenCV.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.