jueves, 17 de junio de 2010

Aproximación mejorada : Calculo de la Media

Como primera mejora se propone el cálculo del modelo de fondo como la media de los últimos N frames.


En este caso se hizo un amplio estudio de las operaciones que ofrece OpenCV sobre las imágenes (estructuras de datos, operaciones, calculo y metodos de acceso a matrices, ...), para intentar aplicarlas a la implementación de este algoritmo. Entre las más interesantes, mencionar:

- cvCreateImage , para crear las imagenes intermedias para realizar los cálculos, la imagen de fondo calculada como la media de las n imágenes, la imagen diferencia (foreground), etc ... Resaltar que esta función nos permite indicar el tamaño de la imagen, la profundidad del pixel y el numero de canales.

- Operaciones sobre imágenes interesantes como cvCvtScale para transfomaciones de tipos de datos en imágenes, cvAcc para acumular imágenes, cvCopy para hacer copias, cvSplit para separar los canales, cvInRangeS para comprobar si los valores de los pixeles están entre dos limites indicados, operaciones lógicas como cvOR ...

Existen un gran número de opciones disponibles que abarcan un gran campo en las operaciones sobre imágenes, estructuras para representación y manejo de matrices. En la investigación de esta parte de la librería se invirtió bastante tiempo y el resultado es el siguiente:




Recalcar que en este caso, además de la diferencia con el background, se realiza la umbralización que no se mostro en el video anterior (a los valores de background se les asigna un valor de 0 y a los del foreground de 255).

Con respecto al algoritmo, se siguen apreciando las mismas ventajas que el anterior:

- rapidez y relativa facilidad en el cálculo

y como desventajas

- dependiente de la rapidez del objeto y del frame rate
- tiene un uso alto de memoria del sistema, ya que es necesario almacenar los n frames anteriores para calcular la media.

No hay comentarios:

Publicar un comentario