Vamos a ver como instalar Opencv en visual studio y hacer una prueba de funcionamiento.
No tengais miedo por el tamaño del post, es bastante largo porque intente explicarlo lo mas detallado posible. Aquí os dejo un video para el que le queden dudas, no lleva más de 5 minutos y al final del post os dejo la plantilla ya creada por lo que no os llevara ni 1 min tenerla funcionando y os ahorrais hacer las pasos de configuración de OpenCV en Visual Studio.
Lo primero es instalar visual studio 2015, es de microsoft y es gratis:
https://www.visualstudio.com/es-es/downloads/download-visual-studio-vs.aspx
Descargamos el archivo, lo ejecutamos y seguimos el proceso de instalación. Tarda bastante en instalarse.
Lo segundo y mientras se instala visual studio descargamos los archivos de OpenCV 3.1 of windows desde su página oficial:
http://opencv.org/ es la más reciente que podremos encontrar ahora mismo.
Ejecutamos el .exe que descargamos, lo que hace es descomprimir los archivos en una carpeta con el nombre opencv en la ruta que seleccionemos, lo más recomendable es hacerlo en c:/ porque tenemos que configurar la ruta a las carpetas en Visual Studio. Quedaria c:/opencv.
Para la configuracion debemos tener en cuenta que cuando nos referimos a vc9 = Visual studio 2008, vc10 = visual studio 2010, vc12 = visual studio 2013, vc14 = visual studio 2015. En este tutorial al querer instalar opencv sobre visual studio 2015 necesitaremos los archivos de la carpeta vc14 que veremos más adelante.
Tenemos que configurar el patch de windows. Nos vamos panel de control/sistema/configuracion avanzada del sistema y variables de entorno. Pulsamos en patch y en editar:
En la nueva ventana damos en nuevo y ponemos :
C:\opencv\build\x64\vc14\bin
Luegos aceptar/aceptar/aceptar y salismos del panel de control.
Ahora en visual studio vamos a instalar las opciones para poder crear proyectos en c++ desde consola win32.
Para este tutorial la instalacion sera con visual studio 2015 en ingles para hacerlo más corto, ya crearé otro para traducirlo.
Inciamos Visual Studio 2015, vamos a file/New/project.
En el desplegable de la izquierda damos en Templates/Other Languages/Visual C++ y en la derecha Install Visual C++ 2015 Tools for Windows Desktop y click en ok.
Nos sale una ventana nueva y damos en Install. Nos saldra otra nueva ventana que nos pedirá que cerremos visual studio, lo cerramos y damos en Retry, luego en Next, luego en UPDATE. Esperamos que se instale y cuando termine damos en Close.
Ahora cuando vamos a crear un nuevo proyecto de c++ siguiendo los pasos igual que antes tenemos la opcion de crear un proyecto Win32 Console Application.
A partir de aquí podemos instalar una plantilla ya preconfigurada que dejare al final del post, pero ahora vamos a ver como se crea y configura opencv en visual studio 2015.
Lo dicho vamos File/new/project y vamos a Other languages/Visual C++ y damos en Win32 Console Application. Abajo en Name ponemos el nombre del proyecto y damos click en OK.
En la nueva ventana que se nos abre damos en Next, en la siguiente marcamos Empty project y damos en Finish.
Ya tenemos el proyecto creado ahora vamos a configurarlo para OpenCV.
Si no esta abierta abrimos la ventana de Soluction Explorer, podemos hacerlo en View/Solution exporer.
En esa ventana damos click derecho en el nombre del proyecto y luego en properties.
En la ventana nueva en el menu de la izquierda damos en VC++ Directories, en la derecha en executable Directories, damos click y vemos una flecha a la derecha la pulsamos y damos en Edit..
Se nos abre una nueva ventana y damos en el icono de la carpeta para agregar un nuevo directorio, luego damos en el boton que aparece con los puntos suspensivos para buscar el directorio. Debemos agregar la carpeta C:\opencv\build\x64\vc14, siempre que hayais dejado la carpeta de opencv en c:/. Tambien podeis pegar la ruta directamente sin tener que buscarla. Luego damos en ok y luego en aplicar.
El resto de procesos es similar asi que no me voy a parar con tanta imagen.
Más abajo en Library Directories realizamos la misma acción pero la ruta sera hacia la carpeta Lib:
C:\opencv\build\x64\vc14\lib
Aplicamos y te tendría que quedar así.
Otra vez a la izquierda vamos Linker/general y en Additional Library Directories agregamos la carpeta lib otra vez:
C:\opencv\build\x64\vc14\lib
Ahora en Linker/Input en additional Dependencies agregamos el nombre de los archivos con extension .lib de la carpeta lib que agregamos antes, como estamos en Debug son todos los que su nombre termina en d. En versiones anteriores de Opencv habia bastante archivos, pero en esta version solo tenemos uno así que tendremos que agregar opencv_world310d.lib . Esta es la única diferencia para configurar debug y release en el caso de configurar release añadiremos opencv_world310.lib .
Aplicamos y damos en aceptar.
Vamos a crear el primer archivo de nuestro proyecto.
Este paso lo pudimos hacer al principio pero me olvidé así que lo hacemos ahora.
En la ventana de Solution Explorer click derecho en Source Files/add/new item click en Visual C++ y en la derecha C++ File(.cpp) le ponemos el nombre Main.cpp por ejemplo.
Ahora como se me olvido tenemos que volver a las propiedades del nombre del proyecto. Click derecho en nombre del proyecto en la venta de solution Explorer u Propierties.
Ahora a la izquierda tenemos C/C++ que antes no teniamos. Lo de siempre:
C/C++, general y a la derecha en additional Include Directories agregamos la carpeta include:
C:\opencv\build\include
Aplicamos y adeptamos.
Ahora vamos a crear una plantilla para poder usarla cuando queramos sin tener que realizar el proceso completo cada vez.
Vamos a Export Template, nos pregunta si queremos guardar y damos en Yes.
En la nueva ventana damos en Porject template y Next
En la siguiente ventana completamos el nombre y si queremos una descripción y damos en Finish.
Y ya terminamos. Vamos a ver si funciona.
Cerramos visual studio 2015 lo abrimos otra vez, vamos a file/new/project y ahora en templates/Other Languages/Visual C++ tenemos nuestra plantilla Opencv damos click y ponemos un nombre.
En la venta de Solution Explorer expandimos Source FIles y damos doble click en Main.cpp para editarlo y pegamos el siguiente codigo.
#include <opencv2opencv.hpp> using namespace cv; int main() { namedWindow("win"); waitKey(0); return 1; }
Debemos iniciarlo en x64 porque open cv actualmente solo trae los archivos para 64 bits.
Lo que hace es abrir una simple ventana con el nombre win a traves de OpenCV. Y si todo ha ido bien lo tenemos funcionanado perfectamente.
Instalar plantilla OpenCV en Visual Studio 2015
Para facilitar las cosas os dejo la plantilla, lo único que teneis que tener es OpenCV en c:/opencv. Para instalar la plantilla en visual studio 2015 solo teneis que copiar el archivo zip que os dejo para descargar en C:/Users/tu usuario/Documents/Visual Studio 2015/Templates/ProjectTemplates
La poneis en esa ruta como zip sin descomprimir que es donde estan todas las plantillas y ya os debería funcionar.
Tener en cuenta que el paso para modificar el patch teneis que hacerlo al igual que la instalación de herramientas de C++ para poder usar aplicaciones de consola win32.
https://korud.com/producto/plantilla-opencv-3-1-visual-studio-2015/
Espero que os haya servido. Un saludo.
Muchas gracias por el manual me ha servido de ayuda, pero hay acciones que se hacen en el video que no concuerdan con el texto, por lo que no se muy bien cual seguir de los dos. Espero que no te lo tomes a mal, si no te importa las indico a ver si podemos completarlas.
–Según el video en las variables de entorno de windows se añade la variable OpenCV y en el texto no.
–Según el video en la propiedad VC++ Directories/ executable Directories se añade C:opencvbuildx64vc14bin pero en el texto se habla de anadir C:opencvbuildx64vc14 yo lo he probado y el ejemplo funciona con las dos y sin añadir nada ahí tambien 😉
— Según creo en la ventana de propiedades antes de cambiar nada arriba hay que seleccionar Platform: All platform
— No queda claro en el texto que todos los cambios en la ventana de propiedades hay que hacerlo tanto para la pestaña debug como para release en el video si que se ve bien
Por lo demás esta fenomeno, gracias por el curro.Un saludo
zacarias Gracias por escribir, me alegro que te haya servido. Efectivamente puede haber alguna diferencia entre el video y el texto, eso que comentas que funciona igual sin el también lo probé, sin embargo ese paso lo hacen en otros tutoriales que he visto y con la intención de evitar posibles errores también lo agregue, de todas formas no lo revisé pero creo que debería ser el mismo porque el video lo hice copiando el pegando de este mismo manual.
Puede haber pasos que no estén en el mismo orden en el video y en el texto, de todas formas por eso hice el video, por si me quedaba algún paso por el medio, es un tutorial bastante largo y cuando lo hice estaba bastante saturado de información. Me llevó bastantes horas lograr correr opencv correctamente.
Lo de release y debug, es lo normal en estos programas, no lo puse en el texto para no tener que repetir todo dos veces y podría dar lugar a equivocaciones a algunos usuarios si se explica bién, me decante mejor por hacer el video y no perder tanto tiempo con el texto.
Se que los pasos pueden estar deshordenados pero la idea era complementar el texto con el video, para aclarar confusiones o resolver dudas.
Gracias por el comentario, estoy un poco liado para revisarlo así que por ahora lo dejo así, tendría que repetir los pasos para ver las diferencias y no tengo tiempo por ahora. Gracias por el apoyo.
Gran tutorial! Pero, ¿cómo puedo hacer que la instalación de opencv_contrib junto con OpenCV 3.1? Gracias 🙂
Gracias. Siento no poder ayudarte, no se como instalar opencv_contrib.
Sabes cómo vincular opencv y Unity3d?
No, ni idea.