Download Método de detección automática de máscara para inpainting de
Document related concepts
no text concepts found
Transcript
TP Final – Procesamiento Digital de Imágenes – 2010 1 Método de detección automática de máscara para inpainting de imágenes Aizensztein; Pablo G. [aipablo@hotmail.com] Bassi; Fernando A. [ferbassi@gmail.com] Trabajo de Aplicación Procesamiento Digital de Imágenes FICH - UNL Resumen—Numerosas librerías realizan la técnica de inpainting a partir de la lectura de una imagen degradada y una máscara binaria diseñada manualmente por el usuario, para aproximar los sectores a recomponer. El método propuesto se centra en la detección automática de la máscara, combinando los conceptos de modelos de colores y sus conversiones, análisis de histograma, segmentación por color y restauración de imágenes. Una vez obtenida la máscara, se procede a la utilización de la librería GREYCstoration para realizar la “limpieza” de la imagen degradada. Palabras Clave — Inpainting, mascara binaria, segmentación de color, interpolación, GREYCstoration. I. INTRODUCCIÓN L AS fotografías suelen un tener un significado especial para los seres humanos en diversas circunstancias, y por tal motivo es deseable que se mantengan intactas al paso del tiempo, a los maltratos efectuados en su manipulación y a accidentes fortuitos entre otras cosas. Una vez que algo no deseado ocurre y la imagen se perturba, ¿Se puede hacer algo para intentar devolverle sus características originales? Es importante hacer un análisis del problema que se enfrenta cuando se quiere restaurar una fotografía, ya que habrá efectos donde la solución no será optima. Se aborda especialmente el problema de las rayas de colores sólidos (color uniforme a lo largo de todas la raya), como las que se realizan con fibras o biromes de colores. Se propone el uso de la técnica de inpainting implementada en la librería GREYCstotration y el desarrollo de un método de detección automática de máscara binaria, que combinados serán la herramienta que permita restaurar la fotografía degradada. Cabe destacar que en la actualidad, la generación de la máscara binaria se realiza manualmente, y por eso se plantea el presente trabajo. II. MARCO TEÓRICO A. Inpainting Es el proceso de reconstruir partes perdidas o deterioradas de imágenes. En el mundo digital, inpainting (también conocido como interpolación de la imagen o interpolación video) refiere al uso de algoritmos sofisticados para recuperar las partes perdidas o corrompidas de los datos de la imagen. La interpolación consiste en calcular valores numéricos desconocidos a partir de otros ya conocidos mediante la aplicación de algoritmos concretos. Inpainting se utiliza para quitar los efectos conocidos como “ojos rojos”, la fecha estampada de las fotografías y quitar objetos al efecto creativo, como así también para recuperar los bloques perdidos en la codificación y la transmisión de imágenes. En la actualidad, existen varios métodos para realizar inpainting, entre los cuales encontramos método de Olivera y multiresolución, método de Bertalmio, método de Crimisi y método de Papoulis-Gerchberg, entre otros. GREYCstoration[1] es una librería desarrollada en Francia por David Tschumperlé y un grupo importante de colaboradores. Permite el procesamiento de imágenes a color, removiendo pequeñas variaciones locales de intensidades de píxel sin afectar las características y rasgos globales de la imagen, como pueden ser los bordes. La librería utiliza el método de Bertalmio[3] y permite trabajar en tres modos: restauración, inpainting y redimensionado. Los parámetros que recibe el algoritmo personalizan la forma en la cual el suavizado será llevado a cabo, y así se pueden generar distintos tipos de resultados. Los métodos para suavizado que ofrece la librería son [2]: i) Vecino Más Próximo: se selecciona el valor del píxel más cercano al punto que se desea interpolar. ii) Lineal: considera los 4 píxeles más cercanos al punto a interpolar. Se obtiene un promedio entre estos 4 puntos. iii) Runge-Kutta: métodos iterativos, tanto implícitos como explícitos, para aproximar las soluciones de ecuaciones diferenciales ordinarias. B. Método de detección automática de máscaras En esta sección se procede a explicar la secuencia de pasos para la detección automática de máscaras binarias. Como primera medida se establecen algunas pautas que limitan el uso del método. En primer lugar, el método fracasa si la degradación seleccionada es de un color ya existente en la imagen. De una imagen afectada por líneas u objetos indeseados, se seleccionan regiones de la misma que presenten un alto porcentaje de imagen “limpia” y en menor medida la degradación. Cada una de las regiones seleccionadas, deben ser estudiadas individualmente. El método que se aplica a cada selección, se detalla a continuación. TP Final – Procesamiento Digital de Imágenes – 2010 2 Primero se realiza una binarización[4] para comprimir el rango de colores, de esta forma se logran nueve valores diferentes: 9 = 32 donde 3 es la cantidad de canales (RGB) y 2 corresponde a la binarización. A continuación se procede a contar la cantidad de colores presentes en la selección ya binarizada, rechazando el color que presente una probabilidad de ocurrencia mayor al 50% (es considerado color de fondo) y también el/los colores que estén por debajo del 3.5% (es considerado error de binarización). Cabe destacar que el estudio se realiza en el espacio RGB[4], y en caso de que la binarización unifique el color de fondo con el de la forma a detectar, se procede a realizar el estudio en el espacio HSI[4]; donde un cambio abrupto en la componente I (intensidad), representa un objeto diferente al fondo. Con los colores detectados, se genera una máscara binara (de la selección), donde los colores que fueron detectados como color de fondo y como error de binarización corresponden a negro, dejando el color de interés en blanco. A efectos de eliminar puntos aislados en la máscara, se erosiona la misma. Una vez obtenida la máscara, se procede a multiplicarla por el segmento de imagen para obtener los valores “reales” de color que se desean eliminar. Seleccionando los valores máximos y mínimos de color correspondientes al segmento estudiado, se realiza una segmentación por color[4]. Utilizando un rango válido y real de colores se obtiene como resultado una máscara binaria de toda la imagen. Este proceso se realiza tantas veces como cantidades de segmentos se hayan seleccionado. Las máscaras binarias generadas en el paso anterior, se unen mediante una suma lógica (OR). Se obtiene de esta forma, una máscara binaria que contempla todos los elementos seleccionados para ser eliminados. Para evitar errores que pueden darse por la presencia de líneas dobles y elementos aislados, se procede a realizar una erosión de la máscara final y luego se aplica una dilatación. Con la máscara final, se utiliza la librería GREYCstoration para realizar el inpainting. III. EXPERIMENTACIÓN Y RESULTADOS En este apartado se muestra el funcionamiento del método de detección automática de máscaras en varias imágenes, como también el análisis y discusión de los resultados. Se plantean 3 casos: A. Degradación con líneas uniformes. Dada la imagen real de color RGB la cual se encuentra degradada por líneas de colores sólidos y visibles (Figura 1). Se seleccionan las muestras de color quedando del modo siguiente: Figura 1: Imagen degradada con líneas de colores homogéneos Se presentan las muestras para su tratamiento individual, según lo expresado en la descripción del método: Figura 2: Selecciones de regiones con información de degradación. Se realiza la binarización en RGB. Se observa en la figura 3 c. una inapropiada detección de la línea de color amarillo: Figura 3: Binarización de regiones en el espacio RGB. Se recurre al espacio HSI de la región defectuosamente operada (Figura 2 c), y se toma como referencia para la detección de la línea la componente de intensidad I: Figura 4: Intensidad de la región con línea amarilla. Se genera la máscara binaria para cada región y se erosiona para eliminar puntos ajenos a las líneas de interés: Figura 5: Máscaras Binarias en cada región. Con las mascaras (Figura 5) se obtienen los colores presentes en las degradaciones a restaurar: Figura 6: Máscaras de colores reales. Se realiza la segmentación por color en la imagen original obteniendo como resultado una máscara binaria final, la cual TP Final – Procesamiento Digital de Imágenes – 2010 será erosionada y dilatada para evitar los efectos de las dobles líneas y aumentar el grosor de las mismas: 3 que la máscara no alcanzó una forma óptima que permita el correcto desempeño de la técnica. B. Degradación con formas complejas. Se presenta una imagen real, contaminada con formas y objetos complejos de colores sólidos: Figura 7: Máscara final erosionada y dilatada A continuación se presentan los resultados correspondientes al inpainting suavizado por los métodos de los que dispone la librería: Figura 9: Imagen degradada con formas complejas. El método logra la detección de la siguiente máscara: Figura 10: Máscara Binaria. El resultado del inpainting, utilizando los 3 métodos de suavizado, retornan imágenes similares cuya diferencia es poco diferenciable para el ojo humano: Figura 11: Imagen Restaurada por Inpainting. Se percibe que el método falla cuando procesa formas complejas. Esto se debe a que la segmentación por color trabaja con el rango de colores del contorno de dichas formas y rechaza el interior de las mismas. Figura 8: Resultados del procesamiento. En la Figura 8 se presentan los resultados del inpainting y el suavizado correspondiente a vecino más cercano (a), interpolación lineal (b) y Runge-Kutta (c). Se aprecia que parte de la degradación no fue removida totalmente en algunas zonas; luego de realizar un análisis sobre la figura 7, resultado del método propuesto, se verifica TP Final – Procesamiento Digital de Imágenes – 2010 C. Eliminación de objetos en imágenes reales. Con el objetivo de suprimir objetos reales definidos por un rango variable de color (colores NO sólidos), se presenta el siguiente caso de estudio: Figura 12: Imagen real Se propone eliminar la reja de la imagen. Utilizando el método de detección automática de máscaras, se obtiene la siguiente salida: 4 IV. CONCLUSIONES En esta primera aproximación a la automatización de la detección de máscaras, se ha logrado resultados favorables en algunos casos por sobre las limitaciones y errores planteadas a través de los experimentos. Se ha presentado un método que tiene un funcionamiento adecuado en degradaciones sólidas y suficientemente delgadas. Sin embargo, se han encontrado dificultades cuando aparecen objetos reales y formas complejas, el método no realiza una máscara adecuada dejando su sección interior con notorios errores. Se utilizaron tres métodos diferentes para el suavizado de la restauración. No se observan diferencias notorias en la calidad de la imagen final en comparación con la complejidad de cada interpolación, por tal motivo, es conveniente procurar rapidez con métodos simples. El óptimo desempeño del método se puede lograr mejorando dos factores claves; en primer lugar la justeza de la máscara, (la exactitud de la mascara sobre los elementos que se desean eliminar), y el interpolador que se elija para suavizar la técnica de inpainting. V. TRABAJOS FUTUROS Figura 13: Máscara binaria Se aplica la técnica de inpainting con la mascara de la figura 13, resultando: Debido a los pocos avances en la detección automática de máscaras, este trabajo presenta un punto de partida, que pese a sus limitaciones y errores, se proponen algunos temas para extender y perfeccionar el estudio. Trabajar sobre el descarte de colores en la selección por medio del uso de porcentajes de ocurrencia, ya que al tomar recortes de cierto tamaño, el método que se plantea suele procesar inadecuadamente el color válido para la restauración. Determinar un umbral dinámico basado en medidas estadísticas del color que se detecta, para limitar el rango de colores en la tarea de segmentación. Las imágenes reales presentan formas compuestas por colores no necesariamente sólidos y por esto, el problema de limpiar dichas formas requiere el estudio de algún método de reconocimiento de objetos sin importar su color. VI. BIBLIOGRAFÍA. [1] http://cimg.sourceforge.net/greycstoration/index.shtml [2] D. Kinkaid, W. Cheney (1994). Análisis Numérico. Addison-Wesley Iberoamericana SA. [3] M. Bertalmio y G. Sapiro, (): Image Inpainting. Electrical and Computer Engineering, University of Minnesota. Figura 14: Resultado del procesamiento Se puede ver que se logró una aproximación, pero la variabilidad en el rango de colores de la reja, produjo con la segmentación una máscara delgada y deformada que no fue suficiente para lograr un resultado adecuado. [4] R. C.Gonzalez y R. E.Woods, (2001): Digital Image Processing. Prentice-Hall.