Cómo instalar OpenCV en la Raspberry Pi
Instalar OpenCV en la Raspberry Pi
Cualquiera que haya realizado procesamiento de imágenes mediante una Raspberry Pi, tarde o temprano se encontrará con la biblioteca OpenCV. Ofrece muchas funciones muy útiles como el reconocimiento facial, la creación de mapas de profundidad (visión estereoscópica, flujo óptico), el reconocimiento de texto o incluso el aprendizaje automático. Además, OpenCV (Open Source Computer Vision) puede integrarse tanto en los archivos C++ como en los scripts Python.
Especialmente en términos de reconocimiento de características en las imágenes tomadas por el Raspberry Pi, OpenCV es muy útil.
Este tutorial muestra cómo instalar OpenCV en una Raspberry Pi y cómo integrarlo en Python.
Por el momento, nos gustaría recomendar para usar con esta biblioteca cómo mínimo la Raspberry Pi 2 modelo B, porque es mucho más potente que su predecesor. Incluso en el caso de una Raspberry Pi B + , la compilación tarda unas 6 veces más, mientras que en el caso de una Pi 2 en total «sólo» tarda aproximadamente una hora.
En primer lugar, actualizamos las listas de paquetes:
sudo apt-get update && sudo apt-get upgrade && sudo rpi-update
Es necesario reiniciar si se ha actualizado.
sudo reboot
A continuación, puedes instalar todas las herramientas y bibliotecas importantes necesarias para OpenCV (la instalación tarda unos minutos).
sudo apt-get install build-essential git cmake pkg-config libjpeg8-dev libtiff4-dev libjasper-dev libpng12-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk2.0-dev libatlas-base-dev gfortran
Si todo funcionara perfectamente, podríamos clonar OpenCV desde git. Este paso también toma unos minutos.
git clone https://github.com/Itseez/opencv.git && cd opencv &&git checkout 3.0.0
Después, se puede compilar OpenCV. Puedes utilizar Python 2.7 o Python 3+. Hay algunas diferencias entre las versiones, especialmente porque algunas librerías no son (todavía) ejecutables con Python 3+. Sin embargo, esto afecta principalmente a las bibliotecas más pequeñas, ya que las bibliotecas comunes (NumPy, SciPy, etc.) suelen proporcionar los archivos respectivos para ambas versiones.
En este tutorial, uso Python 2.7. Si ya tienes Python instalado y quieres saber qué versión está instalada, puedes simplemente introducir python en la consola y obtener la versión exacta al principio (el comando para Python 3+ es python3). Si no tiene un Python instalado, puede instalarlo siguiendo los siguientes pasos:
sudo apt-get install python2.7-dev
También necesitamos la herramienta de gestión de paquetes pip, que instala NumPy de inmediato:
cd ~ && wget https://bootstrap.pypa.io/get-pip.py && sudo python get-pip.py
Ahora podemos simplemente instalar vía pip NumPy. NumPy es una librería que hace muy fácil realizar operaciones de array en Python.
pip install numpy
Pero ahora vamos a compilar OpenCV. Para ello, se debe crear una carpeta de compilación en la que colocar los archivos compilados:
cd ~/opencv && mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local
-D INSTALL_PYTHON_EXAMPLES=ON
-D INSTALL_C_EXAMPLES=ON
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules
-D BUILD_EXAMPLES=ON ..
Ahora finalmente puedes compilar. Este paso lleva, dependiendo del modelo de Raspberry Pi, bastante tiempo, en una Pi 2 alrededor de una hora. Para usar los cuatro núcleos para compilar en la Raspberry Pi 2, escribe lo siguiente:
make -j4
Si la compilación ha funcionado sin problemas, podemos instalar OpenCV:
sudo make install && sudo ldconfig
Para comprobar si todo funcionó, puedes abrir la consola Python e importar la biblioteca:
import cv2
cv2.__version__
Ahora puedes utilizar todas las funciones de OpenCV en tus proyectos. Te recomendamos que le eches un vistazo a la documentación de OpenCV antes y mientras realizas tu proyecto con ella.