OpenCV 3 + Python 3 en Windows

La versión de la librería OpenCV 3.x nos proporciona compatibilidad con versiones Python 3.x, hasta este momento la compilación por defecto no viene con este modulo activado, por lo que debemos compilar la librería e instalarla en Python 3.x, para esta prueba usaremos Pyhton 3.4, OpenCV 3.0, CMake 3.2.2 en un sistema Windows, para compilar usaremos Visual Studio 2013.

Para poder utilizar python con opencv requerimos la librería NumPy, en el siguiente enlace se puede descargar un archivo WHL con la librería NumPy Descargar y todo los necesario para su correcta ejecución.

instalar numpy python 3
Nos aseguramos de seleccionar el archivo adecuado a nuestras necesidades, por ejemplo en la imagen hemos seleccionado el paquete correcto para Python 3.4 en un sistema Windows de 32bits.

Instalar Python y Numpy


Al instalar pyhton solo tomaremos una consideración, que será agregar pyhton al path o ruta de sistema, no es absolutamente necesario pero nos facilitara el uso, en la gui del instalador habilitamos la opción Add pyhton.exe to Path, como se ve en la imagen:

python path
Es hora de instalar la librería NumPy, abrimos una consola de comandos y escribimos lo siguiente: pip install “RUTA_WHL”, ruta_whl es la ruta completa donde se encuentra la librería Numpy que descargamos, escribimos la ruta entre “ ”.

instalar numpy en python 3.x

Construir con CMAKE


Luego de haber descargado e instalado CMake, Visual Studio y descomprimido la carpeta sources de opencv ejecutamos CMake y nos preparamos para genera el proyecto, puedes ver como hacerlo en: Compilar OpenCV CMake para CodeBlocks, la diferencia será que usaremos Visual Studio y no CodeBlocks además habilitaremos python 3, el proceso se muestra en las siguientes imágenes:

configurar cmake para opencv
cmake generar opencv para visual studio
cmake generar opencv
Localizamos la carpeta de destino, la misma la indicamos en (where to build the binaries), mira la primera imagen, para mi es: C:/developer/opencv/python, dentro de ella se encuentra el archivo OpenCV.sln que abriremos con Visual Studio, cambiamos la configuración a release y compilamos.

compilar opencv3 para python3
Esperamos a que termine la compilación, cuando este listo abrimos el proyecto CMakeTargets y generamos el proyecto INSTALL, para hacerlo damos clic izquierdo sobre INSTALL, clic en Generar.

instalar opencv3 en pyhton 3
Este proceso crea una carpeta llamada install dentro de la carpeta de destino, dentro de install veremos la carpeta x64 o x86 según corresponda a nuestro sistema, dentro de esta carpeta veremos vc12 o vc11 según la versión de Visual Studio utilizada, dentro la carpeta bin, esta contiene las dll que necesitamos para ejecutar opencv, debemos agregar esta carpeta a la variable se sistema Path, para este ejemplo la carpeta es: C:\developer\opencv\python\install\x86\vc12\bin

agregar opencv al path
Hecho esto ya podemos empezar a crear proyectos de computación visual con Python 3.x y la librería OpenCV 3.x, nos vemos en la próxima.

Comentarios

  1. Hola,
    tengo un problema, me sale el error:
    import cv2
    ImportError: DLL load failed: No se puede encontrar el módulo especificado.

    he seguido los pasos de tu guía y todo ha ido bien, tengo las DLL y agregada a las variables entorno, la libreria de python en sitespackages y ya no se por donde continuar
    Saludos y gracias por el aporte

    ResponderEliminar
    Respuestas
    1. Verifica que usas las versiones correctas de 32 o 64 bits y de visual studio.

      Eliminar
    2. Me sale el mismo error ImportError: DLL load failed: No se puede encontrar el módulo especificado alguien sabe como repararlo?

      Eliminar
    3. amigo lograste solucionar este problema, a mi me sale el mismo error

      Eliminar
    4. Hola yo tenia el mismo problema.
      Lo solucione instalando "matplotlib, scypy, numpy" y beautifulsoup4-4.5.0.
      Saludos

      Eliminar
  2. me bota error en pip install “RUTA_WHL” puse la ruta correcta, posibles problemas? Gracias

    ResponderEliminar
    Respuestas
    1. Asegúrate de haber descargado la versión correcta de NumPy, varia según la versión de Python y procesador que estés usando.

      Otro posible error es que no tengas correctamente instalado el Python o que no este pip agregado al PATH.

      Eliminar

Publicar un comentario

Entradas populares de este blog

Conectar SQL Server con Java

Entrenar OpenCV en Detección de Objetos

Acceso a la webcam con OpenCV

JavaFx 8 Administrar ventanas

Analizador Léxico