Download document (10.35 MB) - Escuela Superior de Informática ...

Download document (10.35 MB) - Escuela Superior de Informática ... Download document (10.35 MB) - Escuela Superior de Informática ...

11.07.2015 Views

26 Capítulo 3. Antecedentes, Estado de la Cuestiónvoid cvNamedWindow(char name, int type). Esta función crea una ventana gráfica. Susparámetros son:• name: cadena de caracteres que sirve como nombre de la ventana.• type: formato de tamaño de la ventana: Se utilizará CV WINDOW AUTOSIZE,o se pondrá un 1 para seleccionar esta opción.cvLoadImage(fileName, flag). Siendo:• fileName: nombre del fichero que se quiere cargar.• flag: características de carga en el fichero:flag > 0 : se obliga que la imagen cargada sea una imagen de color de 3 canales.flag = 0 : se obliga que la imagen cargada sea una imagen intensidad de 1 canal.flag < 0 : la imagen se carga tal cual es, con el número de canales que posea sufichero.Cabe destacar que esta función puede recibir las imágenes en cualquier tipo de formato:BMP, DIB, JPEG, JPG, JPE, PNG, PBM, PGM, PPM, SR, RAS, TIFF, TIF, siempre ycuando los parámetros de la misma se adecuen a la imagen en cuestión.void cvShowImage (char name, CvArr* img). Esta función dibuja la imagen indicadaen la ventana correspondiente. Tiene como parámetros:• name: nombre de la ventana donde se dibujará la función.• img: imagen a dibujar.void cvReleaseImage( CvArr* img). Esta función se encarga de liberar el espacio dememoria que ha sido asignado a una estructura CvArr*. Posee un único parámetro:• img: es el nombre de la imagen que se desea liberar.void cvDestroyWindows(char name). Esta función elimina la ventana que coincida conel nombre pasado como parámetro.• name: cadena de caracteres que indica el nombre de la ventana a cerrar.

3.2. Técnicas de representación 3D 27void cvDestroyAllWindows(). Esta función elimina todas las ventanas gráficas que hayansido creadas previamente.En el siguiente ejemplo se muestra un simple programa realizado con OpenCV, el cualcarga una imagen de disco y la muestra en una ventana. En él se emplean algunas de las funcionesexpuestas anteriormente:# i n c l u d e "highgui.h"i n t main ( i n t argc , char ∗∗ argv ) {I p l I m a g e ∗ img = cvLoadImage ( argv [ 1 ] ) ;cvNamedWindow ( "Example1" , CV WINDOW AUTOSIZE) ;cvShowImage ( "Example1" , img ) ;cvWaitKey ( 0 ) ;cvReleaseImage (&img ) ;cvDestroyWindow ( "Example1" ) ;}3.2. Técnicas de representación 3DEn esta sección se verán algunas de las técnicas de aproximación para realizar tareas deanimación 3D por computador [45].3.2.1. Métodos de animación basado en curvas de interpolaciónEl empleo de curvas es el denominador común de las técnicas básicas de animación 3D.La característica principal de esta técnica es que se produce una interacción personacomputadorpara, en primer lugar, el animador establecer la posición clave de los objetos y,posteriormente, es tarea de la computadora de ir interpretando los valores de posicionamientoestablecidos.Generalmente, debido a la naturaleza del mundo real, existen fenómenos como la GravitaciónUniversal o el predominio de la unión unilateral de objetos que lo forman, los movimientosproducidos por estos objetos se corresponden con trayectorias curvas. Por este motivo se

26 Capítulo 3. Antece<strong>de</strong>ntes, Estado <strong>de</strong> la Cuestiónvoid cvNamedWindow(char name, int type). Esta función crea una ventana gráfica. Susparámetros son:• name: ca<strong>de</strong>na <strong>de</strong> caracteres que sirve como nombre <strong>de</strong> la ventana.• type: formato <strong>de</strong> tamaño <strong>de</strong> la ventana: Se utilizará CV WINDOW AUTOSIZE,o se pondrá un 1 para seleccionar esta opción.cvLoadImage(fileName, flag). Siendo:• fileName: nombre <strong>de</strong>l fichero que se quiere cargar.• flag: características <strong>de</strong> carga en el fichero:flag > 0 : se obliga que la imagen cargada sea una imagen <strong>de</strong> color <strong>de</strong> 3 canales.flag = 0 : se obliga que la imagen cargada sea una imagen intensidad <strong>de</strong> 1 canal.flag < 0 : la imagen se carga tal cual es, con el número <strong>de</strong> canales que posea sufichero.Cabe <strong>de</strong>stacar que esta función pue<strong>de</strong> recibir las imágenes en cualquier tipo <strong>de</strong> formato:BMP, DIB, JPEG, JPG, JPE, PNG, PBM, PGM, PPM, SR, RAS, TIFF, TIF, siempre ycuando los parámetros <strong>de</strong> la misma se a<strong>de</strong>cuen a la imagen en cuestión.void cvShowImage (char name, CvArr* img). Esta función dibuja la imagen indicadaen la ventana correspondiente. Tiene como parámetros:• name: nombre <strong>de</strong> la ventana don<strong>de</strong> se dibujará la función.• img: imagen a dibujar.void cvReleaseImage( CvArr* img). Esta función se encarga <strong>de</strong> liberar el espacio <strong>de</strong>memoria que ha sido asignado a una estructura CvArr*. Posee un único parámetro:• img: es el nombre <strong>de</strong> la imagen que se <strong>de</strong>sea liberar.void cvDestroyWindows(char name). Esta función elimina la ventana que coincida conel nombre pasado como parámetro.• name: ca<strong>de</strong>na <strong>de</strong> caracteres que indica el nombre <strong>de</strong> la ventana a cerrar.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!