Вы находитесь на странице: 1из 6

DISEÑO Y DESARROLLO DE UN ALGORITMO DE SUSTRACCIÓN DE FONDO, COMO UNA PRIMERA APROXIMACIÓN A LA TECNICA DEL CHROMA KEY

DISIGN AND DEVELOPMENT OF AN ALGORITHM OF BACKGROUND SUBTRACTION, AS A FIRST APPROACH TO THE CHROMA KEY TECHNIQUE

Leonardo Cadavid * , Diego Toro * , Lukas Tamayo * , David Fernández * {cadavid.leonardo, dmaurot, sakulda,dsfernan}@gmail.com

* Grupo de de Electrónica de Potencia Automatización y Robótica GEPAR Departamento de Ingeniería Electrónica Universidad de Antioquia

Resumen: mediante la implementación de tecnologías basadas en el procesamiento digital de imágenes, y más específicamente en la técnica llamada sustracción de fondo, se pretende desarrollar un algoritmo base que permita de manera eficiente utilizar un computador de prestaciones normales para llevar a cabo la técnica del chroma key, comúnmente utilizada en estudios cinematográficos o de televisión especialmente equipados, donde digitalmente se insertar efectos especiales o personas reales en ambientes virtuales.

Palabras clave: sustracción de fondo, chroma key, ambientes virtuales, procesamiento digital de imágenes (PDI).

Abstract: through the implementation of technologies based on digital image processing, and more specifically in the technique called background subtraction, we aims to develop a basic algorithm that allows an efficent way to use a computer with standard performance to make the chroma key technique, commonly used in film and televisión studios especially equipped, where digitally are insert special effects or real people in virtual enviroments.

Keywords: background subtraction, chroma key, virtual enviroments, digital image Processing (DIP).

1.

INTRODUCCIÓN

Desde hace más de 6 décadas se ha utilizado un fondo azul o verde para realizar la técnica de reemplazar el fondo, usando tan solo la información otorgada por el color. La técnica en la actualidad ha sido ampliamente estudiada y perfeccionada, y a pesar de existir sistemas que lo hacen en tiempo real, en algunas circunstancias no funcionan adecuadamente, la iluminación del fondo juega un papel importante cuando no es homogénea, al igual que las sombras provocadas por objetos o personas en la escena; hacen perder la calidad del proceso [1]. Existen sistemas embebidos dedicados (chroma keyers), muy utilizados en televisión que efectúa la técnica del reemplazo de fondo en vivo y en directo, sin embargo su costo es elevado, al igual que las cámaras utilizadas; requiere de condiciones ideales de iluminación, implicando locaciones especializadas. Los efectos especiales comúnmente observados en estudios cinematográficos, se hacen en posproducción, es decir inicialmente se graban las escenas sobre un fondo uniforme, para luego ser incluidos y editados digitalmente mediante un software, demandando valioso tiempo, además de personal altamente calificado, costosas licencias y equipos con grandes prestaciones, lo que explica el alto costo de las producciones cinematográficas [2].

De estas condiciones específicas y dispendiosas para la realización de la sustracción de fondo

y otros efectos, es donde parte el interés de realizar un algoritmo que simule la técnica del chroma key, buscando que a través de un computador, una cámara web, y unas condiciones de infraestructura mínima se puedan llegar a resultados similares, reduciendo costos en la elaboración, tiempos en la implementación y buena calidad en la imagen, además de fomentar

y fortalecer nuevas formas de utilizar este tipo de técnicas en la elaboración de contenidos educativos y culturales.

El procesamiento de video en tiempo real demanda grandes recursos de hardware y software para su implementación, debido a la velocidad de transito de los frames y los complejos y repetitivos algoritmos involucrados. Un ordenador promedio presenta serias limitaciones de

memoria, velocidad y capacidad de procesamiento cuando se enfrenta a este tipo de requerimientos [3]; trabajar con videos de baja resolución puede ser una primera aproximación en la medida que se optimicen los algoritmos y se limite el tipo y la cantidad procesos además de la plataforma y lenguaje de programación [4]. El problema radica en la gran cantidad de datos que debemos procesar a alta velocidad, para evitar que se note un retardo apreciable entre la escena real y la proyectada con el objeto inmerso en otro fondo distinto al original, cambiado digitalmente.

Se pretende utilizar un computador de prestaciones normales que se encargue de procesar, como primera aproximación a una aplicación en tiempo real, un video pregrabado en un escenario que recree exactamente las condiciones de un set de grabación de televisión. El video tendrá la misma velocidad en frames (30 fps) y el tamaño (640x480), del suministrado en vivo por una cámara de video convencional. El reto será encontrar el equilibrio entre el buen desempeño de la aplicación (pequeño retardo), y hacerla en gran medida inmune a las condiciones lumínicas, a un costo de computo bajo.

2. MATERIALES Y MÉTODOS:

La investigación se enmarca en el área del procesamiento digital de imágenes (PDI), ámbito muy desarrollado y de gran interés en la actualidad. Gracias a la continua evolución de la tecnología tanto en software como en hardware, permite al PDI incursionar en nuevas y más complejas aplicaciones en tiempo real, como la técnica del chroma key.

Se utilizo un computador portátil (Dual Core Intel 1,67 GHz, 2 G RAM) para el diseño y desarrollo del algoritmo. El software Matlab R2007b, y su librería Image Processing Toolbox, especializada para el PDI, fue utilizado inicialmente en el desarrollo del prototipo debido a su fácil implementación, reduciendo enormemente el tiempo de desarrollo, pero por su robustez, presenta tiempos de ejecución elevados, además de tratarse de un software comercial, se decidió posteriormente implementar la totalidad del algoritmo sobre el lenguaje de programación C++, y la librería OpenCV 1.0 (open computer vision) también especializada en PDI, compilando el resultado en Microsoft Visual C++ 2008 Express Edition, todos los anteriores de libre utilización.

Inicialmente se hizo un estudio teórico que respondiera el por qué de la utilización de un color en particular para el fondo, luego se busco la forma de representar ese color con un modelo matemático adecuado teniendo en cuenta aspectos como la sencillez y la robustez frente a cambios de iluminación. Se diseñaron experimentos simples que demostraran en la práctica lo predicho por la teoría, cuyos resultados son sustentados por imágenes e histogramas.

Una vez establecido el color de fondo, y un espacio de color adecuado para la caracterización del mismo, se procedió a implementar técnicas que permitiesen reducir la cantidad de operaciones necesarias para procesar pixel por pixel, frame a frame el video, pues se desea generar el mínimo retardo en la reproducción de este. Luego se presenta como se implementaron algunas de las técnicas más comunes en el PDI (dilatación, erosión, detección de bordes y filtrado) para finalmente lograr una aproximación significativa a la técnica del chroma key.

3. RESULTADOS Y ANÁLISIS

3.1. CARACTERIZACIÓN DEL FONDO HOMOGÉNEO

Los dispositivos de captura y despliegue de información grafica, son diseñados y fabricados a partir del estudio del sistema visual humano, buscando simularlo a la perfección, con el objetivo de poder generar imágenes reales.

El ojo humano es sensible a la luz que se encuentra en un estrecho margen del espectro electromagnético (400nm-700nm). Tiene sensores dedicados, altamente especializados y sensibles a los colores, llamados conos, los cuales a pesar de estar presentes en menor cantidad, con respecto a otros sensores llamados bastones, están mejor ubicados en la retina, más exactamente en la fóvea (Fig. 1 ), donde son alcanzados directamente por la luz entrante,

además cuentan con mayor número de terminaciones nerviosas, de ahí su alta capacidad para discernir colores, a diferencia de los bastones que son sensibles a niveles de iluminación bajos

[5]

que son sensibles a niveles de iluminación bajos [5] Fig.1. Distribución de conos y bastonessobre la

Fig.1. Distribución de conos y bastonessobre la retina [5]

En la retina existen 3 tipos de conos, sensibles a diferentes longitudes de onda, largas (L), medianas (M) y cortas (S), que corresponden a los colores Rojo, Verde y Azul, respectivamente. Estos tipos de conos se presentan en las proporciones 40:20:1, existen entonces mayor cantidad de fotoreceptores que responden al rojo, que al verde o al azul. Además de la cantidad de dichos sensores, su posición en la retina influye, debido a que los coeficientes de refracción son diferentes para cada componente de la luz (Fig. 2 ), dando como resultado que los conos verdes sean los más sensibles, al estar ubicados justamente donde los rayos de dicha tonalidad convergen en la retina. Siguiendo en respuesta los conos rojos y por último los azules [6].

en respuesta los conos rojos y por último los azules [6]. Fig. 2. Refracción de la

Fig. 2. Refracción de la luz para diferentes colores [6]

Los dispositivos electrónicos como las cámaras digitales poseen igualmente la misma escala de sensibilidad a los colores que el ojo humano, por tanto se prefirió utilizar un fondo verde. Para caracterizar o representar la magnitud física de este color debemos escoger un el modelo de color, teniendo en cuenta los dispositivos involucrados en la detección (cámara), en el despliegue de las imágenes (monitor), y la fuente de luz a emplear.

El diagrama de cromaticidad ( Fig. 3 ) es una herramienta que muestra cómo percibe la luz el ojo humano dentro de un determinado espectro. Un modelo de color ( Fig. 4 ) es una porción del diagrama de cromaticidad, regido por una fórmula matemática abstracta que describe cómo se representan los colores. Estos modelos, al ser abstractos, no sirven para describir un color concreto sin definir primero la escala o referencia [7].

concreto sin definir primero la escala o referencia [7]. Fig.3. Diagrama de cromaticidad [7] Fig. 4

Fig.3. Diagrama de cromaticidad [7]

Fig. 4. Gama de colores RGB [7]

Fig.5 Distribuciones espectrales de energía de fuentes físicas Comunes de luz [5] Los colores son

Fig.5 Distribuciones espectrales de energía de fuentes físicas Comunes de luz [5]

Los colores son percibidos de forma diferente, dependiendo del tipo de iluminación de la escena debido a que la componente espectral de la luz varia con la fuente de origen (Fig.5), hay tres descriptores comunes en la percepción de la luz, el brillo, el matiz y la saturación, los cuales están involucrados en espacios de color como el HSI, HLS, y HSV [5]. Debido al que el modelo RGB no tiene en cuenta explícitamente los aspectos anteriores dentro de su formulación, se escogió el modelo HSV (Hue, Saturación, Value) para caracterizar el fondo debido a que tiene una mayor simpleza matemática cuando es hallado a partir de una transformación desde el espacio RGB, adicionalmente al separar cada una de sus componentes en un histograma se nota como cada una de ellas se mantiene más acordes para diferentes condiciones lumínicas (Fig. 6),

acordes para diferentes condiciones lumínicas (Fig. 6), 2 1.5 1 0.5 0 HSV x 10 4

2

1.5

1

0.5

0

HSV

condiciones lumínicas (Fig. 6), 2 1.5 1 0.5 0 HSV x 10 4 H u e

x 10 4

Hue

15 10 5 0
15
10
5
0

0.2

0.3

0.4

0.5

0.6

x 10 5

Saturation

x 10 4

Value

40.4 0.5 0.6 x 1 0 5 Saturation x 1 0 4 Value 8 6 2

8 6 2 0
8
6
2
0

0

0.5

1

0

0.5

1

2

1.5

1

0.5

0

HSV

x 10 5

Hue

48 6 2 0 0 0.5 1 0 0.5 1 2 1.5 1 0.5 0 HSV

6 2 0
6
2
0

0

0.1

0.2

0.3

0.4

x 10 5

Saturation

x 10 4

Value

40.2 0.3 0.4 x 1 0 5 Saturation x 1 0 4 Value 8 6 2

8 6 2 0
8
6
2
0

0

0.5

1

0

0.5

1

Fig.6 Histograma y componentes del modelo de color HSV para dos patrones de iluminación

Es de resaltar la componente Hue, que es representada por una estrecha banda, cuyo rango cambia de posición muy poco cuando la escena es iluminada de manera diferente, por ello es la componente más importante para la caracterización del color del fondo.

3.2. TÉCNICAS PARA MEJORAR EL PROCESAMIENTO (MUESTREO)

Para alivianar el procesamiento se muestrea la imagen a un determinado paso de pixeles, permitiendo tener un conocimiento casi total de la imagen sin entrar a preguntar pixel por pixel, lo cual demandaría muchos recursos, ya que cada pixel, está representado por un valor de color en sus componentes RGB, y es necesario transformarlos al espacio HSV, implicando mas operaciones. Se establece una especie de malla sobre la imagen original, representada por los pixeles negros en la Fig. 7.

3.3. SEGMENTACIÓN POR COLOR (MASCARA BINARIA)

Se utiliza la componente Hue como el factor determinante en la segmentación, pues indica la tonalidad del color. A partir del histograma mostrado en el apartado anterior, y luego de normalizar los resultados a valores entre 0-360, encontramos que el verde está entre 80-170, lo que concuerda con las especificaciones del modelo de color, que indica su verde puro en 120,

pero debido a las variantes de tonalidad producto de las sombras provocadas por la persona en la escena, al igual que las discontinuidades en la iluminación se debió establecer dicho rango. Luego se pregunta si los pixeles tienen su componente Hue dentro del rango establecido, si lo están entonces hacen parte del fondo, de lo contrario pertenecen a la persona. Cada pixel de la malla es utilizado para formar una nueva imagen binaria a menor escala de la imagen original (Fig. 8), cuyo tamaño depende de la resolución de la malla. Los pixeles negros corresponden a la persona y los blancos al fondo

negros corresponden a la persona y los blancos al fondo Fig.7 muestreo de la imagen Fig.8

Fig.7 muestreo de la imagen

persona y los blancos al fondo Fig.7 muestreo de la imagen Fig.8 Segmentación de la imagen

Fig.8 Segmentación de la imagen

1.1. DILATACIÓN Y EROSIÓN

Segmentación de la imagen 1.1. DILATACIÓN Y EROSIÓN Fig.9 Dilatación y Erosión de la imagen Como

Fig.9 Dilatación y Erosión de la imagen

Como se ve en la Fig.8, la imagen posee zonas donde existe ruido a pesar de representar la silueta de la persona que debería ser continua. Para contrarrestar este efecto dilatamos y erosionamos (close) la imagen con una máscara de 3x3 en forma de cruz [8]. Obteniendo el siguiente resultado (Fig 9).

1.2. ZONAS DE INTERÉS (BORDES Y REGIÓN INTERNA DEL OBJETO)

Mediante otra mascara de 3x3, preguntamos pixel por pixel en la imagen binaria ya dilatada y erosionada (Fig.9). Si los pixeles vecinos alrededor de este (pixel central en la máscara) son en su totalidad negros, correspondiendo a un Pixel interno, de lo contrario dicho pixel pertenece al borde exterior de la imagen. Identificamos entonces dos regiones de interés para nuestro algoritmo, una región interna donde está casi en su totalidad la silueta de la persona, y una región externa perteneciente al contorno de la persona (Fig.10).

externa perteneciente al contorno de la persona (Fig.10). Fig.10 Sustracción de fondo 1.3. SUSTRACCIÓN DE FONDO

Fig.10 Sustracción de fondo

1.3. SUSTRACCIÓN DE FONDO

La Fig.9 corresponde a una representación en menor escala de la imagen original como ya se mencionó, mediante una transformación podemos ubicar exactamente su posición relativa en la imagen más grande. Los pixeles blancos corresponden al fondo, y estos pueden ser cambiados por un fondo digital cualquiera, mientras los pixeles negros hacen parte del cuerpo del objeto y sobre estos no se procesa la imagen, simplemente se deja igual.

1.4. FILTRADO

Sobre la región externa perteneciente al contorno del objeto, se procede a efectuar un filtro gaussiano con una máscara de 3x3, con el objetivo de disminuir los bordes abruptos entre el

fondo digital y la silueta del objeto, integrando mucho mejor el fondo nuevo con la silueta del objeto (Fig.11).

mejor el fondo nuevo con la silueta del objeto (Fig.11). Fig. 11 . Filtrado de bordes

Fig. 11. Filtrado de bordes y resultado final

2. CONCLUSIONES

Al realizar la sustracción del fondo con el modelo de color RGB, la velocidad de procesamiento es óptima pero es demasiado sensible frente a los cambios de intensidad en la luz. El espacio de color HSV ofrece muy buenas prestaciones cuando se trata de diferenciar el color entorno a las diferentes tonalidades y brillos del mismo, sin embargo tiene problemas cuando se trabaja con objetos muy oscuros. El submuestreo de la imagen original es la clave para optimizar tiempo y disminuir el tiempo de ejecución entre frames. La dilatación y erosión juegan un papel fundamental para eliminar el ruido sobre las imágenes binarias, y por lo tanto sobre la imagen original. Este ruido es introducido por los dispositivos de captura y las fluctuaciones lumínicas y del fondo. La región de interés que abarca el contorno del objeto, tiene que ser lo más precisa posible, para evitar que pequeñas porciones el fondo queden al final, además de mejorar la labor del filtro gaussiano en disminuir y fundir el nuevo fondo con el objeto. El estudio preliminar de las bondades y desventajas de cada modelo de color, además de conocer l as razones de la utilización de un color en particular para el fondo, dieron mayor robustez y menos sensibilidad al algoritmo implementado frente a la variaciones lumínicas y apariciones de sombras inesperadas sobre el fondo.

3. REFERENCIAS

[1] Ley, N., Weigel, C., and Mehnert, M. Gpu-based background illumination correction for blue screen matting. Institute for Media Technology, Germany. IEEE. [2] Furió, D. V. Posibilidades Artísticas De La Imagen Electrónica: El Chroma-Key. Universidad Politécnica De Valencia Departamento de Escultura Programa de Doctorado Artes Visuales e Intermedia. Valencia, julio 2008. [3] Pintaric, T. Augmented reality live-action compositing. Vienna University of Technology. Proceedings of the Second IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR ’03). [4] Pair, J., and Wilson, J. Integrating the augmented reality toolkit with broadcast video chroma key systems”. Institute for creative technologies university of southern califonia, Biomedical interactive Technology center Georgia institute of technology. IEEE [5] Pratt, W. K. Digital image Processing. PIKS Inside, 3 ed. [6]Ortiz, F. G. Procesamiento morfológico de imágenes en color. Aplicación a la reconstrucción geodésica. Edición digital a partir del texto original de la tesis doctoral, Universidad de Alicante, Biblioteca Virtual Miguel de Cervantes, 2002. [7]LACIE Libro blanco de la gestión del color 3 Espacios de color y conversión de colores [8] González, R. C., and Woods, R. E. Digital Image Processing, 2 ed. Prentice Hall, 2002