Instalar OpenCV con Visual Studio 2017

Instalar OpenCV con Visual Studio 2017

OpenCV es una librería open source sobre visión muy utilizada en proyectos de investigación y en el ambiente laboral. Tiene interfaces en C++, C, Python, Java y Matlab y además es compatible con Windows, Linux y OS. En este tutorial vamos a ver como instalar y configurar OpenCV para poder usarlo con Microsoft Visual Studio 2017.

Si no se tiene instalado Visual Studio 2017, se puede descargar la versión gratuita en el siguiente enlace: Visual Studio Comunity 2017.

Instalación de OpenCV.

Para instalar OpenCV 3.4.0 primero debemos descargar la versión «Win pack» de la página OpenCV.

Una vez descargado procedemos a instalarlo en «C:\»

Posteriormente, debemos añadir las variables del entorno. Para ello:

  • Botón derecho sobre Equipo y seleccionamos propiedades.
  • Configuración avanzada del sistema y pinchamos sobre «variables de entorno». 
  • Seleccionamos la opción «Path» y hacemos clic en editar. 
  • Hacemos clic en nuevo y en examinar para buscar la ruta donde hemos instalado OpenCV: «C/opencv/build/x64/vc15/bin» y le damos a aceptar. 

De esta forma ya tenemos instalado y configurado OpenCV en nuestro equipo y solo nos quedaría configurar Visual Studio 2017. Aunque antes de esto debemos reiniciar el equipo.

Configuración Visual Studio 2017.

  • Abrimos visual studio y le damos a crear un nuevo proyecto.
  • Creamos nuevo proyecto: «proyecto en Visual C++» y elegimos «proyecto vacío». Indicamos un nombre y carpeta para el proyecto y pulsamos aceptar. Creación proyecto visual studio
  • Una vez creado el proyecto, añadimos un archivo «C++» haciendo clic derecho sobre la carpeta «archivos de recurso/ agregar/ nuevo elemento».
  • Y seleccionamos «Archivo C++ (.cpp)» y le ponemos Main.cpp. Crear archivo cpp
  • Después, en la pestaña «Proyecto» seleccionamos «Propiedades de Opencvdemo».
  • En la ventana que aparece, seleccionamos la pestaña «C/C++», «General» y en la opción «Directorios de inclusión adicionales», indicamos:
    C:\opencv\build\include

    Incluir librería

  • Ahora en la pestaña de «Vinculador (linker) / General» en «Directorios de bibliotecas adicionales (Additional Library Directories)» añadir:
    C:\opencv\build\x64\vc15\lib

    Linker

  • En la pestaña «Vinculador/ Entrada(input)» en la opción «Dependencias adicionales» darle a la pestaña que tiene y seleccionar editar.
  • Pegar lo siguiente en la ventana que aparece:
     opencv_world340d.lib

    Dependencias adicionales.

  • Ahora tenemos que cambiar el modo de depuración de nuestro proyecto a «x64»Cambio modo depuración.
  • En el archivo Main.cpp añadir el siguiente código:  

Recuerda cambiar la ruta de la imagen en la linea 11 a una ruta y nombre de una imagen de tu equipo.

Con esto, ya podemos ejecutar nuestro programa y comprobar que OpenCV funciona correctamente.

En la opción «depurar (debug)», iniciamos sin depuración y se nos mostrara la imagen que hemos añadido al código. Algunas veces es necesario reiniciar Visual Studio o reiniciar el equipo después de realizar la configuración por primera vez.

Esta entrada tiene 15 comentarios

  1. edwin

    hecho lo que describes en el tutorial pero tengo el problema que al tratar de compilar me genera que no en cuentra opencv_world300d.dll

    1. Juan Carlos Contreras Márquez

      Hola Edwin, ¿Que versión de OpenCV estas instalando?
      El tutorial es para la versión : OpenCV 3.4.0.

      Puede que en la pestaña “Vinculador/ Entrada(input)” en la opción “Dependencias adicionales” tenga que cambiar “opencv_world340d.lib” por “opencv_world300d.lib”

      1. iab27

        Hay que buscar en la carpetas qué versión de opencv_world es. Me pasó lo mismo y al buscar la versión fue la opencv_world342d.lib. Saludos

  2. Miguel

    Buenas tardes,
    Una consulta respecto en que lenguaje de programación se puede usar la libreria de OpenCV?, pues aunque hay versiones para distintos sistemas operativos (https://opencv.org/releases.html), según el siguiente artículo: https://realpython.com/face-detection-in-python-using-a-webcam/ lo usa desde Python pero según este artículo lo estas usando en C++, con Visual Studio 2017, en Windows?.

    En definitiva estoy analizando si puedo usar esta librería desde Visual Studio 2017, en una Windows Universal app (o con Python) y hacer el deploy en Windows 10 IoT (en una raspberry).

    Saludos,

    1. Juan Carlos Contreras Márquez

      Hola Miguel,
      Como comentas, puedes utilizar OpenCV con Python o con C++. Además existe EmugCV que es otra librería parecida a OpenCV y que permite C#.
      Puedes utilizar sin ningún problema OpenCV desde visual studio 2017 en una Windows Universal App utilizando C++.
      Muchas gracias y un saludo.

  3. DAVID FDEZ

    Hola, muchas gracias por el tutorial, pero tengo un problema me aparece un error y no se como solucionarlo, agradeceria que me ayudara.
    Error 1 error C1189: #error : «OpenCV 4.x+ requires enabled C++11 support» C:\opencv\build\include\opencv2\core\cvdef.h

    1. Juan Carlos Contreras Márquez

      Hola David, muchas gracias. Creo que tu error se puede deber a que no tienes en visual studio la versión 11 de C++. Yo probaría a descargarla desde visual studio. Otra opción es desinstalar la versión 4 de OpenCV e instalar una release anterior 3.4.4 por ejemplo. Espero que te sea de ayuda. Un saludo

  4. Guillermo Salazar

    Hola, en serio gracias por el tutorial. Aunque mira yo hice todo segun tus pasos y por alguna razon no me reconoce la libreria. Ya que esta sigue detectando como errores todo lo relacionado a OpenCV. Me podrias ayudar por favor.

    1. Juan Carlos Contreras Márquez

      Hola Guillermo, vamos a intentarlo. ¿Que error te aparece al compilar? ¿Te has asegurado que estas en modo Debug y a 64 bits (x64)?

  5. angel lerma

    Realice todos los paso, no marco error pero al momento de ejecutar el codigo me marca el error:

    Gravedad Código Descripción Proyecto Archivo Línea Estado suprimido
    Error (activo) E0013 se esperaba un nombre de archivo OpenCvDemo C:\Users\gianfar\Documents\Visual Studio 2017\OpenCvDemo\OpenCvDemo\Main.cpp 1

    En el #include

    Saludos y gracias por todo

  6. carlos

    1>—— Se ha iniciado la ejecución del comando Recompilar; proyecto: ConsoleApplication2, configuración: Debug|Win32 ——
    try.cpp
    c:\users\carlo\source\repos\consoleapplication2\consoleapplication2\try.cpp(3): error C2006: ‘#include’: se esperaba un nombre de archivo, se ha encontrado ‘identificador’
    c:\users\carlo\source\repos\consoleapplication2\consoleapplication2\try.cpp(24): fatal error C1010: final de archivo inesperado al buscar la directiva de encabezado precompilado. Compruebe si olvidó agregar ‘#include «pch.h»‘ al código fuente?
    ========== Recompilar: 0 correcto, 1 erróneo, 0 actualizado, 0 omitido ==========

  7. Maria

    Hola!
    Me sirvió mucho el tutorial, muchas gracias!
    Quería también hacer un par de recomendaciones si le parece.

    En cuanto a la parte:
    «Una vez creado el proyecto, añadimos un archivo «C++» haciendo clic derecho sobre la carpeta «archivos de recurso/ agregar/ nuevo elemento».»
    Me sirvió también el ir a <>, pues archivos de recurso no lo encontré ^^’

    Y en el código de prueba que comparte, en la línea 3:
    #include iostream
    Nada más le falta los diamantes, ya que al probarlo me marcaba error, quedando:
    #include

    Espero le ayuden estas recomendaciones, y muchas gracias de nuevo por compartír este tutorial!
    Saludos y buen día!

    1. Maria

      * Me sirvió también el ir a «Proyecto/Agregar nuevo elemento…», pues archivos de recurso no lo encontré ^^’

    2. Maria

      #include ‘iostream’

      1. Maria

        No sé cómo mostrar los diamantes y perdón por muchos comentarios ^^’

Deja una respuesta