OpenCV: Instalar OpenCV-Python en Ubuntu
Objetivos
En este tutorial aprenderemos a configurar OpenCV-Python en el sistema Ubuntu. Los siguientes pasos están probados para Ubuntu 16.04 y 18.04 (ambos de 64 bits).
OpenCV-Python se puede instalar en Ubuntu de dos maneras:
- Instalar desde los binarios preconstruidos disponibles en los repositorios de Ubuntu
- Compilar desde el código fuente. En esta sección veremos ambas.
Otra cosa importante son las librerías adicionales necesarias. OpenCV-Python sólo requiere Numpy (además de otras dependencias, que veremos más adelante). Pero en este tutorial, también utilizamos Matplotlib para algunos propósitos de trazado fácil y agradable (que me parece mucho mejor en comparación con OpenCV). Matplotlib es opcional, pero muy recomendable. Del mismo modo, también veremos IPython, un terminal interactivo de Python, que también es muy recomendable.
Instalación de OpenCV-Python desde los binarios pre-construidos
Este método sirve mejor cuando se utiliza sólo para la programación y el desarrollo de aplicaciones OpenCV.
Instalar el paquete python3-opencv con el siguiente comando en la terminal (como usuario root).
Abre Python IDLE (o IPython) y escribe los siguientes códigos en el terminal de Python.
Si los resultados se imprimen sin ningún error, ¡¡¡felicidades!!! Has instalado OpenCV-Python con éxito.
Es bastante fácil. Pero hay un problema con esto. Los repositorios de Apt pueden no contener la última versión de OpenCV siempre. Por ejemplo, en el momento de escribir este tutorial, el repositorio apt contiene la versión 2.4.8 mientras que la última versión de OpenCV es la 3.x. Con respecto a la API de Python, la última versión siempre contendrá un soporte mucho mejor y las últimas correcciones de errores.
Así que para obtener los últimos códigos fuente se prefiere el siguiente método, es decir, compilar desde la fuente. También en algún momento, si quieres contribuir a OpenCV, necesitarás esto.
Construir OpenCV desde el código fuente
Compilar desde el código fuente puede parecer un poco complicado al principio, pero una vez que lo has conseguido, no hay nada complicado.
Primero vamos a instalar algunas dependencias. Algunas son necesarias, otras son opcionales. Puedes omitir las dependencias opcionales si no quieres.
Dependencias de compilación requeridas
Necesitamos CMake para configurar la instalación, GCC para la compilación, Python-devel y Numpy para construir los bindings de Python, etc.
para soportar python2:
para soportar python3:
Luego necesitamos soporte de GTK para las características de la GUI, soporte de cámaras (v4l), soporte de medios (ffmpeg, gstreamer) etc.
para soportar gtk2:
para soportar gtk3:
Dependencias opcionales
Las dependencias anteriores son suficientes para instalar OpenCV en tu máquina Ubuntu. Pero dependiendo de sus requisitos, puede necesitar algunas dependencias adicionales. Una lista de tales dependencias opcionales se dan a continuación. Puedes dejarlas o instalarlas, tú decides 🙂
OpenCV viene con archivos de soporte para formatos de imagen como PNG, JPEG, JPEG2000, TIFF, WebP, etc. Pero puede ser un poco viejo. Si quieres conseguir las últimas librerías, puedes instalar los archivos de desarrollo para las librerías del sistema de estos formatos.
Nota Si estás usando Ubuntu 16.04 también puedes instalar libjasper-dev
para añadir un soporte a nivel de sistema para el formato JPEG2000.
Descargar OpenCV
Para descargar la última fuente del repositorio GitHub de OpenCV. (Si quieres contribuir a OpenCV elige esto. Para eso, necesitas instalar Git primero)
Creará una carpeta «opencv» en el directorio actual. La clonación puede tardar algún tiempo dependiendo de su conexión a Internet.
Ahora abra una ventana de terminal y navegue a la carpeta «opencv» descargada. Crea una nueva carpeta «build» y navega hasta ella.
Configuración e instalación
Ahora tenemos todas las dependencias necesarias, vamos a instalar OpenCV. La instalación tiene que ser configurada con CMake. Se especifica qué módulos se van a instalar, la ruta de instalación, qué librerías adicionales se van a utilizar, si la documentación y los ejemplos se van a compilar, etc. La mayor parte de este trabajo se realiza de forma automática con los parámetros por defecto bien configurados.
El siguiente comando se utiliza normalmente para la configuración de la construcción de la biblioteca OpenCV (ejecutado desde la carpeta de construcción):
Los valores por defecto de OpenCV asumen el tipo de construcción «Release» y la ruta de instalación es «/usr/local». Para información adicional sobre las opciones de CMake consulte la guía de compilación de OpenCV C++:
Debería ver estas líneas en su salida de CMake (significan que Python se ha encontrado correctamente):
Ahora construye los archivos usando el comando «make» e instálalo usando el comando «make install».