Configurar OpenCV en Raspberry Pi 4
Raspberry Pi es una secuencia de pequeñas computadoras de placa única (SBC) desarrollada por la Fundación Raspberry Pi en el Reino Unido (UK). Originalmente fue desarrollado para alentar a los niños en la escuela a aprender habilidades informáticas básicas.
Es ampliamente utilizado en muchas áreas debido a su bajo costo, diseño abierto y modularidad.
Tipos y especificaciones de Raspberry Pi
Hay tres series principales y varias actualizaciones de Raspberry Pi; ellos son:
- Raspberry Pi: este SBC cuenta con un sistema Broadcom en un chip (SoC) con una CPU (unidad central de procesamiento) compatible con ARM integrada y una GPU (unidad de procesamiento de gráficos) integrada en el chip
- Raspberry Pi Zero: presenta una competencia reducida de entrada/salida (E/S) y E/S de uso general (GPIO).
- Raspberry Pi Pico: cuenta con un SoC RP2040 con una CPU integrada compatible con ARM (unidad central de procesamiento).
Dado que nuestro tema está relacionado con OpenCV, utilizaremos la última Raspberry Pi, que es Raspberry Pi 4 Model B.
El Raspberry Pi 4 Modelo B contiene un procesador ARM Cortex-A72 de 64 bits que funciona con Wi-Fi 802.11ac de 1,5 GHz, Bluetooth 5, 2 puertos USB 2.0, 2 puertos USB 3.0, Gigabit Ethernet y dos puertos HDMI.
Solía haber capacidades de memoria de la versión de 1 GB, pero se ha abandonado; ahora solo hay tres versiones, versiones de 2GB, 4GB y 8GB, y sus precios se han reducido. El Pi 4 también tiene un puerto USB-C que agrega energía adicional a los periféricos posteriores.
Primeros pasos con Raspberry Pi
Antes de comenzar con la instalación de OpenCV, debemos realizar algunas configuraciones para la instalación adecuada y segura de OpenCV. Este proceso de instalación es extenso e intrincado, por lo que lo hemos dividido en pasos.
Se recomienda usar la Raspberry Pi 4 B o los modelos más nuevos porque si usamos el modelo más antiguo, el tiempo que tomará instalar OpenCV aumentará drásticamente ya que los modelos más antiguos tienen menos potencia de procesamiento que los más nuevos.
También se recomienda utilizar una versión más reciente de Windows como Windows 10 u 11; Las versiones anteriores de Windows como 7, 8 y XP también tardarían más tiempo por la misma razón.
Cada paso mencionado a continuación es esencial para el propósito de la instalación, así que asegúrese de realizar cada paso sabiamente. Primero, conecte su Raspberry Pi a su computadora portátil/PC y luego siga los pasos a continuación.
-
Expansión del sistema de archivos
Estamos ampliando el sistema de archivos para que el proceso de instalación de las bibliotecas de OpenCV sea más fluido. Entonces, para hacer esto, debemos acceder a la terminal Raspberry Pi y escribir el comando a continuación.
sudo raspi-config
Después de escribir este comando, se abrirá un menú de configuración, seleccione la opción
Opciones avanzadas
y luego seleccioneExpandir sistema de archivos
. Después de seleccionar la opción, pedirá confirmación para reiniciar el sistema, luego seleccioneY
oSí
.Es importante reiniciar el sistema después de este paso para que Raspberry Pi expanda el sistema de archivos en ese momento.
-
Actualización del sistema
Necesitamos actualizar el sistema si hay paquetes más recientes disponibles; esto también ayuda a que el proceso de instalación sea más rápido y mejor. Para esto, abra la terminal y escriba el siguiente código.
sudo apt-get update && sudo apt-get upgrade
Este paso llevará unos minutos para obtener la última versión de Raspberry Pi.
-
Instalación de Snapd y CMake.
Necesitamos CMake para compilar las bibliotecas de OpenCV, pero para eso, primero debemos instalar Snapd, que contiene el paquete CMake. Para hacer eso, escriba el código que se muestra a continuación en la terminal.
sudo apt install snapd
Ahora instale CMake usando Snapd e ingrese el siguiente comando.
sudo snap install cmake --classic
Esto instalará CMake. Si aparece algún error al instalar CMake, puede aumentar la memoria de la GPU.
Para ello, vaya al icono de Raspberry Pi, seleccione
Preferencias
, luego haga clic enConfiguración de Raspberry Pi
y pulse Intro. Una vez que aparezca el cuadro de diálogo, vaya aRendimiento
y aumente la memoria GPU a 256 (si es inferior a 256). -
Instalación de Python 3
Para instalar Python 3 en su sistema Raspberry Pi, ingrese el siguiente comando en su terminal.
sudo apt-get install python3-dev
-
Descarga e instalación de paquetes OpenCV
Para ello, se recomienda no utilizar la última versión porque no será estable; Necesitaremos una versión más estable. Así que descargaremos el paquete OpenCV y lo configuraremos en Raspberry Pi usando CMake.
Necesitamos descargar el archivo zip de OpenCV desde el enlace de GitHub usando el código a continuación.
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.0.zip
Ahora necesitamos descargar el archivo zip
opencv-contrib
. La diferencia entre OpenCV yopencv-contrib
es que OpenCV solo tiene paquetes de módulos principales, mientras queopencv-contrib
contiene un paquete completo que contiene los módulos principales y los módulos de contribución/extra.Descargamos ambos archivos zip para que OpenCV funcione correctamente.
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.0.zip
Entonces, después de descargar estos dos archivos zip, los descomprimimos por separado usando las líneas de comando que se muestran a continuación.
unzip opencv.zip
unzip opencv_contrib.zip
Ahora ambos archivos están listos para ser utilizados.
-
Instalando NumPy
OpenCV requiere soporte de NumPy para funcionar, así que instalamos NumPy.
pip install numpy
-
Construyendo un directorio
Cuando descomprimimos los dos archivos zip, se crearon dos nuevos directorios. Necesitamos agregar un nuevo directorio llamado
Build
en el directorioopencv-4.5.0
.cd ~/opencv-4.5.0 mkdir build cd build
-
Compilando CMake y OpenCV
Ahora compilamos CMake para OpenCV, pero primero debemos verificar si estamos en la ruta
~/opencv-4.5.0/build
. Si la ruta es correcta, podemos copiar y pegar los comandos que se indican a continuación.cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-4.0.0/modules \ -D ENABLE_NEON=ON \ -D ENABLE_VFPV3=ON \ -D BUILD_TESTS=OFF \ -D WITH_TBB=OFF \ -D INSTALL_PYTHON_EXAMPLES=OFF \ -D BUILD_EXAMPLES=OFF ..
Al final, muestra
Configuración finalizada
yGenerando finalizada
, lo que significa que se configuró correctamente sin ningún error.Para compilar OpenCV, usamos el siguiente código en la misma ruta.
make -j4
Esto compilará OpenCV por completo, pero llevará tiempo. Sin embargo, si esto no compila, entonces podemos usar
make -j1
; esto tomará más tiempo para compilar quej4
, pero será estable. -
Instalación de bibliotecas OpenCV
Instale las bibliotecas de OpenCV con el siguiente fragmento de código.
sudo apt-get install libopencv-devpython-opencv
-
Pruebas de OpenCV en Raspberry Pi
Finalmente, en la terminal en la misma ruta de compilación mencionada anteriormente, escriba
python
y luegoimportar cv2
, como se muestra a continuación.python import cv2 cv2.__version__
Si se importa el
cv2
y la versión aparece como se esperaba, la instalación y la configuración se realizan correctamente.
Conclusión
La instalación y configuración de OpenCV implica muchos pasos diferentes. Arriba, hemos visto cómo instalar OpenCV en Raspberry Pi usando CMake.
Puede aprender, construir, trabajar y crear fácilmente proyectos OpenCV en Raspberry Pi. Aunque el proceso fue un poco complejo, valió la pena la espera.
Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.
LinkedIn