He estado más liado de lo que pensaba este mes, pero por fin puedo dedicarle más tiempo al proyecto.
Ya he conseguido arreglar el error que me salía al ejecutar las funciones que hice la última vez. Al parecer se estaba accediendo a posiciones de memoria no reservadas, y la solución era simplemente usar la función "malloc" para reservar la memoria necesaria.
También he conseguido acceder a los píxels de una imagen usando punteros, en lugar de los métodos CvGet2d y CvSet2d, lo cual es mucho más eficiente.
Y ahora ya puedo manejar imágenes grandes (1280x1024) sin que me salga desbordamiento de pila. El problema era que almacenaba los datos de cada imagen (los colores RGB de cada píxel) en un array de dos dimensiones, y al ser este demasiado grande se producía el desbordamiento. Ahora esa información la guardo en una imagen en blanco que me creo al comienzo de la función.
Por último, he ampliado el anterior programa que calculaba la imagen promedio de un conjunto de imágenes, y ahora lo que hace es mostrar la imagen promedio usando una ventana de imágenes que se va "moviendo". Es decir, si tengo 10 imágenes, y la ventana es de 3, calcula el promedio de las imágenes 1, 2 y 3, y la muestra. Luego el promedio de las imágenes 2, 3 y 4, y así hasta terminar en las 8, 9 y 10. El tamaño de la ventana en este caso sería de 3, pero se puede poner el tamaño que se quiera pasándoselo como parámetro a la función.
20 ene 2009
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario