Вы находитесь на странице: 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]

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].

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].

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 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),
4 5
HSV x 10 Hue HSV x 10 Hue
6

15
4
10
2
5

0 0
0.2 0.3 0.4 0.5 0.6 0 0.1 0.2 0.3 0.4
5 4 5 4
x 10 Saturation x 10 Value x 10 Saturation x 10 Value
2 8 2 8

1.5 6 1.5 6

1 4 1 4

0.5 2 0.5 2

0 0 0 0
0 0.5 1 0 0.5 1 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

Fig.7 muestreo de la imagen Fig.8 Segmentación de la imagen Fig.9 Dilatación y Erosión de la imagen

1.1. DILATACIÓN Y EROSIÓN

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).

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).

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 las 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

Вам также может понравиться