Usar OpenCV en Xcode 4 para una aplicación Mac OS X

Lo primero de todo es instalar OpenCV en Mac OS X. Luego en Xcode 4 crear un nuevo proyecto de aplicación para Mac OS X de tipo “Command Line Tool”.

Poner un nombre de proyecto en “Product Name” y en “Type” elegir “Foundation”.

En la pestaña “Build Settings” (haciendo click en el icono azul del proyecto a la izquierda) añadir a las siguientes opciones estos valores:

Dentro de “Search Paths”:
Header Search Paths: /usr/local/include
Library Search Paths: /usr/local/lib
Dentro de “Linking”:
Other Linker Flags: -lopencv_core -lopencv_highgui -lopencv_imgproc

NOTA: Se pueden añadir más librerías en “Other Linker Flags” para incluir más funciones de OpenCV como por ejemplo:

-lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_contrib -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_ml -lopencv_objdetect -lopencv_video

También es necesario cambiar dentro de “Build Options” el siguiente parámetro ya que sino no funcionarán las funciones para C de OpenCV:

Compiler for C/C++/Objetive-C: LLVM GCC 4.2

En main.m poner este código, compilar (comando+B) y ejecutar (comando+R).

//
// main.m
// OpenCVTest
//
// Created by __MyName__ on 16/09/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "opencv/cv.h"
#import "opencv/highgui.h"

int main (int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    
    IplImage* img = cvCreateImage( cvSize( 640, 480 ), IPL_DEPTH_8U, 3 );
    
    cvCircle( img, cvPoint( 320, 240 ), 100, cvScalar( 255, 0, 0 , 255 ), 5, 8, 0 );
    
    cvNamedWindow( "OpenCV Window", CV_WINDOW_NORMAL );
    cvShowImage( "OpenCV Window", img );
    
    cvWaitKey(0);
    
    cvDestroyWindow( "OpenCV Window" );
    cvReleaseImage( &img );
    
    [pool drain];
    return 0;

}

Si falla al compilar es posible que haga falta poner el import de “opencv/cv.h” el primero de todos, pero para que esté realmente el primero de todos hay que ponerlo dentro del fichero .pch (cuyo nombre coincide con el nombre del proyecto) de la carpeta “Supporting Files” de esta manera:

#ifdef __OBJC__
    #import "opencv/cv.h"
    #import <Foundation/Foundation.h>
#endif

Esto se debe a que OpenCV tiene definida una macro MIN que también existe en el framework de Apple y si no se pone la de OpenCV antes aparecen errores del tipo “LLVM GCC 4.2 Error: Statement-expressions are allowed only inside functions”.

You might also like

Usar OpenCV en Xcode 4 para una aplicación orientada a objetos Mac OS X
Lo primero de todo es instalar OpenCV en Mac OS X. Luego en Xcode 4 crear un nuevo proyecto de aplicación...

Usar OpenCV en Eclipse CDT
Instalar OpenCV (ver los post de cómo hacerlo en Ubuntu 10.10, Ubuntu 11.10, Ubuntu 12.04 y OpenCV 2.4...

Instalar OpenCV 2.3.1a en Mac OS X 10.6
Descargar y descomprimir OpenCV 2.3.1a: curl -L -O http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.3.1/OpenCV-2.3.1a.tar.bz2 tar...

Instalar OpenCV 2.3.1 en Ubuntu 12.04
La última versión disponible en los repositorios es la OpenCV 2.3.1 así que tan solo hay que ejecutar...

Dejar un comentario?

0 Comentarios.

Deje un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.