IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE...

10
IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN Priscila Maldonado Mendieta #1 , Manuel Quiñones #2 #1 Profesional en formación, Universidad Técnica Particular de Loja #2 Docente de EET, Universidad Técnica Particular de Loja Loja, Ecuador 1 [email protected], 2 [email protected].

Transcript of IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE...

Page 1: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE

VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

Priscila Maldonado Mendieta #1, Manuel Quiñones #2

#1 Profesional en formación, Universidad Técnica Particular de Loja

#2 Docente de EET, Universidad Técnica Particular de Loja

Loja, Ecuador

[email protected], [email protected].

Page 2: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

Resumen—En este proyecto se realiza un estudio sobre distintas técnicas y algoritmos de tratamiento de señales más concretamente al tratamiento de imágenes que son de aplicación en sistema de video vigilancia de segunda generación (Tiempo Real).Por otro lado se extrae un conjunto de propiedades del entorno a través de imágenes las mismas que mediante procesamiento realicen determinadas acciones respondiendo a eventos del entorno.

Palabras claves— Video vigilancia, filtro, segmentación, umbral, morfología, cuantización.

I. INTRODUCCION

El objetivo principal de un sistema de vigilancia es la prevención de actuaciones que puedan violar la seguridad de un lugar supervisado, por ejemplo la intrusión, o la monitorización y registro de determinados espacios.

Un sistema de vigilancia consiste en una serie de sensores, situados en posiciones estratégicas del espacio a vigilar y conectados, a través de medios de transmisión adecuados, en este trabajo únicamente se considerarán aquellos que proporcionan imágenes para su análisis.

En este contexto, según [1], los sistemas de vigilancia de segunda generación, o avanzados, basados en técnicas de procesado de la información, son una alternativa ideal a los sistemas de primera generación. La característica principal de esta tecnología es la explotación de las técnicas de procesado para seleccionar automáticamente un pequeño porcentaje de la información disponible, el cual será probablemente el más interesante para la tarea de vigilancia requerida y para ser finalmente valoradas por el personal de vigilancia.

.

..

Cámaras IP

Servidor WebProcesamiento digital

de Imágenes

Internet

SMS

Ilustración. 1. ESQUEMA GENERAL DEL SISTEMA DE VIDEOVIGILANCIA

II. ANALISIS DEL SISTEMA

En la actualidad, el análisis automático de secuencias de vídeo-seguridad se ha convertido en un área de investigación muy activa en respuesta a la creciente necesidad en temas de seguridad.

En la Ilustracion2. Se muestra el diagrama de bloques general de un sistema de video vigilancia.

Ilustración. 2. ESQUEMA DE BLOQUES GENERAL DE UN SISTEMA DE VIDEOVIGILANCIA

Como se puede observar en el diagrama los sistemas de video vigilancia automáticos son basados en técnicas de procesado de imágenes.

Fases principales del procesamiento de imagen:

1. La primera etapa es la adquisición de imágenes digitales del mundo real usando un dispositivo óptico.

2. En la segunda etapa se preprocesa la imagen mediante una serie de técnicas y algoritmos y filtros. En esta etapa de preprocesamiento es donde, mediante filtros y transformaciones geométricas, se eliminan partes indeseables de la imagen o se realzan partes interesantes de la misma.

3. La tercera etapa, conocida como segmentación, consiste en aislar los elementos que interesan de una escena para comprenderla.

4. En la última etapa se clasifican los elementos segmentados a través del estudio de sus propiedades, gracias al análisis de ciertas características que se establecen previamente para diferenciarlos.

A. PREPROCESAMIENTO DE LA IMAGEN.

De manera que analizando el esquema planteado anteriormente en la Ilustracion3. mediante el procesamiento de señales una etapa importante es el preprocesamiento de imágenes, es decir, la transformación de la imagen original en otra imagen en la cual hayan sido eliminados los problemas de ruido de cuantización o de iluminación espacialmente variable. La utilización de estas técnicas permite el mejoramiento de las imágenes digitales adquiridas de acuerdo a los objetivos planteados en el sistema. A continuación sólo se mencionara las técnicas de preprocesamiento empleado en el presente trabajo.

B. CONVERSIÓN A ESCALA DE GRISES

En esta parte se trata la conversión de una imagen en color a escala de grises, el equivalente a la luminancia de la imagen.

Para esto se ha utilizado la función ‘rgb2gray’ convierte imágenes RGB a la escala de gris, eliminando el matiz y la información de saturación conservando la luminancia.

Page 3: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

C. BINARIZACION.

Del proceso de realce, la imagen se encuentra en escala de grises, es decir una imagen que contiene 8 bits por cada píxel, y con 256 posibilidades diferentes de tonos de gris. Es así que se requiere transformar esta imagen a un formato binario.

Para esta tarea, la mejor opción es la utilización de la función “im2bw”. Esta función convierte imágenes en color o escala de grises en imágenes binarias, basándose en un determinado umbral, el cual se calcula con la función “graytresh”, que devuelve el valor del umbral más adecuado para una imagen determinada y que puede ser usado como parámetro de entrada en la función “im2bw”.

Ilustración. 3. BINARIZACION

D. FILTRO.

El siguiente paso es la utilización de un filtro el mismo que se utilizara para la eliminación de ciertas partículas (ruido) para esto se utilizo fspecial('gaussian'), que se encuentra incluida en el toolbox de procesamiento de imágenes de Matlab.

Por lo general las imágenes tienen una cierta cantidad de ruido, pixeles con valores incorrectos por errores en el proceso de captura. Para eliminar, o por lo menos disminuir, este ruido existen numerosos filtros de suavizado de imágenes.

En este suavizado, la desviación típica ¾ juega un papel importante a la hora de controlar el grado de suavizado de este operador. Cuanto mayor sea ¾, más se tienen en cuenta los puntos lejanos, y por tanto, mayor sería el filltrado resultante.

E. DETECCION DE MOVIMIENTO

El movimiento en las secuencias de imágenes puede servir como criterio para la segmentación. Por una parte puede ayudar a diferenciar los objetos del fondo de los móviles. Además, analizando la dirección y velocidad de los movimientos se pueden diferenciar unos objetos móviles de otros.

El método más sencillo para la detección de movimiento se basa en la diferencia entre imágenes [2]. Este tipo de algoritmos resultan poco precisos, aunque su sencillez les permite procesar la imagen en poco tiempo, por lo que resultan tremendamente útiles.

Aplicando este método se obtendrá una secuencia de imágenes como resultado de las sucesivas diferencias de las imágenes de la secuencia original. La diferencia en valor absoluto se

umbraliza para destacar aquellos pixeles que han variado en un cierto grado en el intervalo de imágenes.

Este método tiene la ventaja de que no se ve afectado por cambios progresivos de iluminación ya que el tiempo entre la toma de dos imágenes es muy pequeño. Pero como contrapunto detecta dos tipos de movimiento sin distinguir entre ellos, la parte del fondo que va tapando el objeto según avanza y el fondo que va apareciendo según se aleja el objeto de la zona donde estaba.

Ilustración. 4. DETECCION DE MOVIMIENTO 4a IMAGEN ORIGINAL. 4b IMAGEN DIFERENCIA ENTRE ORIGINAL Y

FONDO.4c IMAGEN DIFERENCIA UMBRALIZADA.

Es así como se determino la existencia de personas en el escenario planteado.

Ilustración. 5. DETECCION DE PERSONAS

Sin embargo, en los casos en los que se pueda obtener una imagen del fondo como referencia se puede variar este planteamiento haciendo la diferencia de las imágenes, la imagen de referencia con la imagen anterior en el tiempo.De esta manera se obtiene el objeto en movimiento y no las variaciones del fondo de la imagen respecto al objeto. Esta técnica se denomina sustracción de fondo.

F. SUSTRACCION O DISCRIMINACION DE FONDO.

Una de las misiones típicas de los sistemas de procesamiento de secuencias de video es separar la parte

Page 4: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

variable de la imagen de la parte fija, siendo la parte variable la que resultaría interesante para obtener los resultados requeridos. Por esta razón se habla de sustracción de fondo (background sustraction).

En secuencias de video con fondo de intensidad homogénea basta con diferenciar los pixeles con una intensidad similar al fondo del resto de pixeles.

Sin embargo en la mayoría de los casos reales no basta con conocer el fondo de antemano, ya que este puede variar debido a modificaciones estructurales y cambios de iluminación. En estas condiciones se hace necesario ir actualizando la imagen de fondo a lo largo del tiempo para así poder diferenciar la parte variable de la imagen (o foreground) del fondo de la imagen (background).

El método de sustracción de fondo se obtiene una versión actualizada del fondo o se crea si se está procesando el primer frame de la secuencia.

Uno de los inconvenientes de este método de sustracción de fondo es que acaba asimilando los objetos del foreground que se quedan inmóviles durante un cierto tiempo. Pero en este caso, se va a aprovechar esto para determinar cuándo un objeto se queda parado.

Ilustración. 6. 6a. IMAGEN DE SECUENCIA 6b IMAGEN DE FONDO

A partir de la imagen del fondo se obtiene una copia de esta imagen en escala de grises que se añadirá a una estructura de datos que almacena un historial del fondo.

Usando esta imagen y la anterior almacenada en esta estructura correspondiente a la última actualización de fondo mediante diferencia y umbralizado con umbral fijo se encuentran las partes del fondo que han cambiado entre las dos actualizaciones.

Se utiliza umbralización fija, ya que, la imagen obtenida de la diferencia ya está muy simplificada y no es necesario usar un método más complejo que pueda ralentizar el proceso. No obstante el valor umbral se puede variar a través de la configuración en caso de ser preciso.

G. SEGMENTACION

La segmentación de imágenes consiste en la partición de la imagen en distintas regiones homogéneas respecto a una o varias propiedades tales como color, tamaño, textura.

La segmentación se realiza generalmente tras la etapa de preprocesado mencionada anteriormente y es un punto crítico dentro de un sistema de video, ya que, la correcta división en regiones de la imagen según la característica requerida condiciona enormemente los resultados obtenidos.

Aunque las distintas técnicas de segmentación se pueden clasificar de muchas formas, normalmente se suelen clasificar en técnicas basadas en detección de frontera, técnicas de umbralización y técnicas basadas en agrupamiento de pixeles.

En las técnicas de segmentación mediante detección de bordes, la segmentación de una imagen puede llevarse a cabo mediante la detección de los límites de cada región, detectando las zonas donde se producen cambios en la intensidad o bordes. Entre estas técnicas destacan las que usan operadores basados en la primera o segunda derivada como los filtros de gradiente.

Los operadores de Sobel tratan de aprovechar el hecho de que si se calculan las derivadas en dos direcciones y se combinan como la raíz cuadrada de la suma de cuadrados, donde de la magnitud se obtiene un resultado independiente de la orientación.

La forma general de las máscaras de Sobel para las direcciones verticales y horizontales es:

Ilustración. 7. MASCARAS DE SOBEL.

H. MORFOLOGÍA

La descripción básica de la Morfología se remite a la teoría de conjuntos cuyos trabajos se deben a Minkowski y Hadwiger, luego tras la investigación de Matheron y Serra, se dieron a conocer con la denominación de Morfología Matemática como una técnica no lineal de tratamiento de señales.[4]

El objetico de las transformaciones morfológicas es la extracción de estructuras geométricas en los conjuntos sobre los que se opera, mediante la utilización de otro conjunto de forma conocida denominado elemento estructurante., el tamaño y la forma de este elemento se escoge a priori de acuerdo a la morfología del conjunto sobre el que se va a interaccionar y de acuerdo a la extracción de formas que se desean obtener.

Ilustración. 8. FORMAS BASICAS DE ELEMENTOS ESTRUCTURANTES PLANOS.

Page 5: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

La función ‘strel’ crea el elemento de estructuración morfológico que se encuentra incluida en el toolbox de procesamiento de imágenes de Matlab

Entre las técnicas morfológicas utilizadas se presentan se tiene la dilatación, erosión.

La transformación morfológica de base es la dilatación, que combina dos conjuntos por medio de la suma de elementos del conjunto, donde la dilatación de A por B es el conjunto de todas las sumas de pares posibles de elementos, en el cual un elemento procede de A y otro de B. Normalmente se considera que A es el conjunto que será procesado morfológicamente y B se conoce como elemento estructurante o la forma que operará sobre A para obtener el resultado deseado. La dilatación puede verse también como la unión de los elementos estructurantes que son barridos por la imagen donde la unión puede verse como un operador de vecindad.

Cuando el origen del elemento estructurante toca un pixel de la imagen binaria, todo el elemento estructurante se anexa a la imagen inicial por medio de la operación lógica OR.

Por su parte la erosión la cual es la operación dual de la dilatación: la erosión de una imagen A por un elemento estructurante B es el conjunto de elementos para los que la traslación de B está contenida en A.

El efecto de la erosión es la disminución de la talla de las partículas y la desaparición de los elementos de talla inferior al elemento estructurante.

La función ‘ imerode’ realiza la erosión y la función ‘imdilate ‘ la dilatación en la estructuración morfológico que se encuentra incluida en el toolbox de procesamiento de imágenes de Matlab.

I. DETECCION DE OBJETOS

Para cumplir el objetivo descrito se construirá una aplicación que seguirá un el siguiente esquema:

Ilustración. 9. ESQUEMA PARA LA DETECCION DE OBJETOS

Captura: esta etapa se encarga de realizar la adquisición de imágenes del mundo real a través de una cámara

Inicialización: esta etapa es la encargada de hacer las operaciones previas de preprocesado de la imágen.

Actualización de fondo: a partir de las imágenes preprocesadas se separa el fondo, o parte fija de la imagen, de la parte variable.

Detección de objetos: utilizando la información de las últimas sustracciones de fondo se detectan los.

De igual forma se han utilizado diferentes funciones que se encuentran presentes en el toolbox de procesamiento de imágenes de Matlab. Como ‘regionprops’ entre otras.

Ilustración. 10. 10a. IMAGEN DE FONDO 10b. IMAGEN OBJETO 10c. IMAGEN DE DETECCION DE OBJETO

III. CONCLUSIONES.

La aplicación se ha implementado mediante MATLAB y el estudio de las diferentes técnicas y algoritmos y ha reflejado la diferencia de complejidad que existe entre ellos y las ventajas e inconvenientes que posee cada uno.

La utilización del filtro gaussiano tienen por objeto reducir el ruido y/o efectos espurios que pueden presentarse en una imagen a consecuencia del proceso de captura, digitalización y transmisión. Su utilización es normalmente necesaria antes de la aplicación de un detector de bordes.

Para la detección de movimiento se basa en la diferencia entre imágenes en valor absoluto el mismo que se umbraliza para destacar aquellos pixeles que han variado en un cierto grado en el intervalo de imágenes, razón por la cual no se ve alterado en gran medida por los cambios de iluminación presentes en el escenario.

Page 6: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN

Se ha tomado a consideración además la discriminación del background para separar la parte fija de la parte variable o cambiante del escenario a procesar, dándonos cuenta no simplemente basta con tomar una muestra del escenario ‘vacio’ si no se debe actualizar el escenario por diferentes motivos entre los principales la iluminación.

Mediante la segmentación se ha podido obtener procesamiento de las regiones de la imagen respecto a propiedades específicas es así que se realiza mediante la detección de los límites de cada región, detectando las zonas donde se producen cambios en la intensidad o bordes.

Las transformaciones morfológicas como la erosion, dilatación se ha logrado la extracción de estructuras geométricas, a través de la utilización de otro conjunto elemento estructurante. Esto al igual que la detección de movimiento ha servido para lograr la detección de personas.

Se ha desarrollado una aplicación capaz de detectar objetos abandonados en escenarios no controlados mediante cámaras. Para esto se han usado una serie de funciones como ‘regionprops’ toolbox de procesamiento de imágenes de Matlab, además de sustracción de fondo.

Además se ha usado detección de movimiento mediante resta y umbralizado de cada una de las imágenes capturadas con el fondo para detectar cuando un objeto no se encuentra abandonado.

Una vez hecho todo lo descrito anteriormente se presentan los resultados por pantalla mediante cajas delimitadoras y detección de bordes según el estado en el que se encuentren los objetos y personas de forma que sirva como ayuda al operario encargado de la vigilancia de la estancia.

IV. REFERENCIAS.

[1] Foresti, G. L., P. Mähönen, y C.S. Regazzoni. Multimedia video-based surveillance systems. Requirements, issues and solutions. Kluwer Academic Publishers, 101 Philip Drive, Assinippi Park, Norwell, Massachusetts 02061 USA, 2000, 1 edón.

[2] A. de la Escalera Hueso. Visión por Computador, Fundamentos y

Metodos. Prentice Hall, 2001.

[3] OPPENHEIM, Alan, SEÑALES Y SISTEMAS, Segunda Edición, Editorial Prentice-

[4] González, R.C., Wintz, P. (1996). Procesamiento digital de imágenes, Addison-Wesley.

[5] Manual de ayuda de la Image Processing Toolbox de MATLAB

[6] A. de la Escalera Hueso. Vision por Computador, Fundamentos y Metodos. Prentice Hall, 2001.

[7] J. González Jiménez. Visión por Computador. Paraninfo, 2000.

[8] A. Mittal and N. Paragios. Motion-based background subtraction using adaptive kernel density estimation. 200

[9] Li, L. “Statistical Modeling of Complex Backgrounds for Foreground Object Detection”, IEEE Trans. on Image Processing, 13 (11):1459-1472, 2004.

[10] Piccardi, M. “Background subtraction techniques: a review”, IEEE Trans. On System, Man and Cybernetics.vol.4, 3099-3104, 2004.

[11] http://arantxa.ii.uam.es/~jms/pfcsteleco/lecturas/ 20090921AlvaroBayona.pdf

[12] http://descargas.cervantesvirtual.com/servlet/SirveObras/57915842105571617400080/008591.pdf

[13] http://www.gts.tsc.uvigo.es/pi/Analisis%20de%20imagenes.pdf

[14] http://gavab.escet.urjc.es/recursos/seminario_07.pdf

[15] https://docs.google.com/viewer?a=v&pid=gmail&attid=0.2&thid=12a1a1ef57940c02&mt=application/pdf&url=https://mail.google.com/mail/?ui%3D2%26ik%3D5def74ce48%26view%3Datt%26th%3D12a1a1ef57940c02%26attid%3D0.2%26disp%3Dattd%26realattid%3Df_gau3k6ia1%26zw&sig=AHIEtbTZCWNy4bBYC-c2nqazWIxJ8YlSHQ&pli=1

[16] https://docs.google.com/viewer?a=v&pid=gmail&attid=0.1&thid=12a1a1ef57940c02&mt=application/pdf&url=https://mail.google.com/mail/?ui%3D2%26ik%3D5def74ce48%26view%3Datt%26th%3D12a1a1ef57940c02%26attid%3D0.1%26disp%3Dattd%26realattid%3Df_gau3k4620%26zw&sig=AHIEtbSKSGA9qic_oRPlRTVZIukXXX4AIA&pli=1

.

.

.

Page 7: IMPLEMENTACIÓN DE ALGORITMOS DE TRATAMIENTO DE IMÁGENES PARA SISTEMAS DE VIDEO VIGILANCIA DE SEGUNDA GENERACIÓN