Recientemente se ha publicado su versión 3.0 que incluye entre otras novedades:
- Más de 1500 parches.
- Reconocimiento de texto.
- Integración con la librería VTK (visualizaciones 3D).
- Uso transparente de GPU en varios algoritmos.
- Nuevos algoritmos usados en fotografía (HDR, inpainting, edge-aware filters, superpixels, …)
- La documentación usa ahora Doxygen.
A continuación os dejo una serie de pasos para poder utilizar todas estas funcionalidades en nuestros programas tanto en MacOS como en Linux:
Paso 0. Descargar lo que necesitamos
Para trabajar con ella en primer lugar debemos compilarla e instalarla en nuestro sistema. Para ello necesitamos descargar:
. Código fuente OpenCV para UNIX/MacOs
. Descargar e instalar CMake
. En MacOs también necesitaremos tener instalado XCode.
Paso 1. Configure y Generate
Después solo necesitamos abrir el interfaz de CMake, seleccionar el directorio donde hallamos descomprimido OpenCV, el directorio donde queramos generar los makefiles y configurar y generar los makefiles. El interfaz de CMake nos permite también seleccionar opciones adicionales. Después pulsamos Configure y seleccionamos el compilador de UNIX (para que nos genere los makefiles) y si todo va bien CMake se encargará de buscar automáticamente las referencias a las librerías adicionales necesarias.
Si todo va bien podremos generar el proyecto pulsando Genreate. Si algo va mal tendremos que configurar a mano las rutas a las librerías que falten.
Así de simple, abrimos el terminal, vamos a la carpeta en la que hallamos generado nuestros makefiles y escribimos:
$ make install
Paso 3. Probarlo
Para ello escribimos un sencillo programa que muestra la captura de nuestra web cam. Para ello en primer lugar escribimos el programa:
#include "opencv2/highgui/highgui.hpp"
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char* argv[])
{
VideoCapture cap(0); // Abre la captura de la webcam.
namedWindow("Captura",CV_WINDOW_AUTOSIZE); // Crea una ventana
while (1) {
Mat frame;
bool bSuccess = cap.read(frame); // realiza captura
imshow("Captura", frame);
if (waitKey(30) == 27) // Lee la entrada y si pulsamos Esc sale del programa
{
cout << "esc key is pressed by user" << endl;
break;
}
}
return 0;
}
Por otro lado generamos un archivo CMakeLists.txt para generar los makefiles para este programa del mismo modo que lo hicimos para compilar OpenCV:
cmake_minimum_required(VERSION 2.8)
project( TestCV )
find_package( OpenCV REQUIRED )
add_executable( TestCV cvtest.cpp )
target_link_libraries( TestCV ${OpenCV_LIBS} )
Y finalmente los generamos y compilamos usando make. El resultado obtenido será similar (o mejor) a:
No hay comentarios:
Publicar un comentario