EXTRACCIÓN INTERACTIVA DE OBJETOS EN RESTAURACIÓN DIGITAL DE IMÁGENES Fernanda Andrade Universidad de las Fuerzas Armadas - ESPE Sangolquí, Ecuador
Contenido Introducción Restauración Diseño de experimento Resultados Conclusiones 2/67
Introducción Extracción de objetos Restauración 3/67
Introducción de imagen (a) Imagen (b) Imagen segmentada Fuente: The Berkeley Segmentation Dataset 4/67
Introducción es subjetiva (a) Imagen (b) 18 regiones (c) 7 regiones (d) 10 regiones (e) 8 regiones Fuente: The Berkeley Segmentation Dataset 5/67
Introducción interactiva Objetivo: dividir imagen en objeto de interés y fondo Guía de usuario Fuente: The Berkeley Segmentation Dataset 6/67
Introducción Restauración de imagen Fuente: The Berkeley Segmentation Dataset 7/67
Contenido Introducción Restauración Diseño de experimento Resultados Conclusiones 8/67
basada en umbral Dos regiones según un valor de intensidad. b(x) = { 1 si i(x, y) T 0 si i(x, y) < T Figura: Histograma de una imagen en escala de grises. Desventajas: Sensible a variaciones de iluminación. No considera relación espacial de pixeles. Objeto y fondo deben tener diferentes intensidades. 9/67
basada en regiones (a) Imagen (b) Primera división (c) Segunda división Condiciones: Pixeles con propiedad en común (e.g. intensidad) Regiones con propiedades diferentes entre ellas. Desventajas: No consideran información de bordes. Resultados con bordes irregulares. 10/67
basada en bordes Búsqueda de diferencias entre pixeles. Operadores como Robert, Sobel, Prewitt, Canny o Krisch. Desventajas: Es muy sensible al ruido. Requiere la selección de un valor umbral para el borde. No genera bordes completos de objetos solapados. Figura: Imagen segmentada. Fuente: The Berkeley Segmentation Benchmark 11/67
basada en cuencas Imagen es considerada una superficie con diferentes alturas. Crestas: pixeles con valores altos de intensidad. Valles: pixeles con valores bajos de intensidad. Desventajas: Problemas de sobre segmentación Fuente: Pratt 12/67
basada en energía: Active Contour (a) Imagen (b) Primera división (c) Segunda división E contorno = E interna + E externa Fuente: Pratt Contorno se ciñe gradualmente. Desventaja: es necesario conocer la función. 13/67
basada en energía: Grafos G = E, V Nodos (V): nodos fuente s (s-node) o sumidero t (t-node). Arcos (E): conecta nodos vecinos (n-links) y nodos con terminales (t-links). 14/67
basada en energía: Graph Cuts Corte mínimo (min-cut) de manera que: t-links: elimina arcos que se conectan a S o T. n-links: elimina arcos entre dos pixeles vecinos. Teorema max-flow/min-cut (Ford y Fulkerson). 15/67
basada en energía: Graph Cut Factor de importancia relativa E(L) = α ( R(L) ) + B(L) Término regional (costo de t-links) Término límite (costo de n-links) L = {l 1, l 2, l 3,..., l i,..., l p } 16/67
basada en energía: Graph Cut Fuente: Boykov y Jolly Costo especial (K) cuando el pixel es etiquetado por el usuario. 17/67
basada en energía: GrabCut Modelamiento de color: Gaussian Mixture Model para modelar color del fondo y del objeto de interés. por proceso iterativo de minimización de energía: Algoritmo vuelve a estimar el modelo GMM según se etiquetan nuevos pixeles. Suavizado del borde: (a) (b) Trimap Fuente: Radke 18/67
basada en energía: GrabCut 19/67
basada en energía: OneCut R(S) = β θ S θ S L1 Nuevo término de energía que mide la distancia L1 entre los modelos de apariencia del objeto y del fondo. Minimización en un solo corte. Se reemplaza suma de pixeles por suma de bins. 20/67
basada en energía: Random Walks Grafo G = E, V Arco e pq E tiene un peso no negativo w pq. No evalúan las ruta más corta, sino las probabilidades de la ruta que tome un random walker. Fuente: Radke 21/67
Otros métodos: SIOX Entrada: Trimap con fondo conocido, objeto conocido y región desconocida. Conversión a espacio CIELAB. por color: Modelo de color del fondo conocido. Refinamiento: Eliminación de regiones pequeñas. Fuente: Radke 22/67
Contenido Introducción Restauración Diseño de experimento Resultados Conclusiones 23/67
Restauración Restauración de imágenes Fuente: Museo Nacional del Prado 24/67
Restauración Métodos basados en ecuaciones diferenciales parciales Ω es el área deteriorada. Rellenan Ω desde el borde Ω hacia interior. Fuente: Bertalmio et al. 25/67
Métodos basados en ecuaciones diferenciales parciales Laplaciano ( 2 I) = 0 Dirección isotrópica (cambio mínimo) I t = ( 2 I) I 26/67
Restauración Métodos basados en ecuaciones diferenciales parciales Solución: Navier Stokes: Ecuación de transporte de la teoría de fluidos fluidos (Bertalmio et al.) Fast Marching Method: Método FMM (Fast Marching Method) para propagar. No es iterativo (Telea). 27/67
Restauración Métodos basados en parches (c) Imagen original (d) Selección de ˆp Fuente: Criminisi et al. 28/67
Restauración Métodos basados en parches (e) Búsqueda de parche Ψˆq Phi (f) Reemplazo de pixeles. Fuente: Criminisi et al. 29/67
Contenido Introducción Restauración Diseño de experimento Resultados Conclusiones 30/67
Objetivo de imagen Determinación de eficiencia Determinación de exactitud (regiones) Determinación de exactitud (bordes) Determinación de esfuerzo Cuál es el algoritmo más eficiente? Cuál es el algoritmo más eficaz? Cuál es el algoritmo que requiere menos esfuerzo por parte del usuario? 31/67
Algoritmos GrabCut OneCut Random Walker SIOX 32/67
Metodología de evaluación Problemas Criterio subjetivo. No hay estándares de evaluación. Existe criterio generalizado para definir una buena segmentación. Evaluación supervisada: se utiliza como referencia segmentación manual. 33/67
Metodología de evaluación Base de datos: Base de datos de Berkeley. (a) Imágenes originales (b) Seg. manual (c) Seg. manual Fuente: The Berkeley Segmentation Dataset 34/67
Metodología de evaluación Base de datos: Base de datos GrabCut. (a) Imágenes originales (b) Ground truth (c) Trimaps Fuente: Rother et al. 35/67
Metodología de evaluación Evaluación con usuarios: Evaluación a través de experimentos con usuarios. Requiere tiempo. No permite reproducibilidad de resultados. Fuente: McGuinness et al. 36/67
Metodología de evaluación Evaluación automatizada: Usuarios robot. Secuencia de scribbles de acuerdo al resultado de segmentación previa. No permite reproducibilidad de resultados. 37/67
Metodología de evaluación No hay entrada de usuarios. No consideran reproducibilidad de resultados. Se recopila base de datos: imágenes de GrabCut y scribbles. 38/67
Métricas Eficiencia Esfuerzo Exactitud 39/67
Exactitud basada en regiones Imagen I = P M N M Negativos verdaderos (TN) Positivos falsos (FP) Positivos verdaderos (TP) Negativos falsos (FN) (M) Ground Truth (G) 40/67
Exactitud Exactitud de clasificación (ACC): TP + TN ACC = TP + FP + TN + FN Sensibilidad (TPR): Exhaustividad recall en inglés. Precisión (PPV): Valor F (F 1 ): TPR = TP P G = PPV = TP P M = TP TP + FN TP TP + FP F 1 = (1 + β 2 PPV TRR ) β 2 PPV + TRR = 2TP 2TP + FN + FP 41/67
Exactitud basada en regiones Especificidad (SPC): Índice Jaccard (Jaccard): Jaccard = SPC = TN N G = TN TN + FP G M G M = TP TP + FN + FP = F 1 2 F 1 42/67
Efectividad de métricas basadas en regiones (a) Original (b) 1: Parcial (c) 2: Extendida (d) 3: Exacta (e) Original (f) 4: Parcial (g) 5: Extendida (h) 6: Exacta 43/67
Efectividad de métricas basadas en regiones Cuadro: Medidas de exactitud basadas en regiones. Caso ACC TPR SPC Jaccard Dice 1: Parcial 0.826 0.295 1.000 0.295 0.456 2: Extendida 0.797 0.975 0.738 0.543 0.704 3: Exacta 0.992 0.967 1.000 0.966 0.983 4: Parcial 0.940 0.324 1.000 0.324 0.490 5: Extendida 0.919 0.773 0.933 0.458 0.628 6: Exacta 0.986 0.909 0.994 0.854 0.921 44/67
Exactitud basada en bordes (a) Ground truth (b) Mapa de bordes 45/67
Exactitud basada en bordes Sensibilidad (TPR): Exhaustividad recall en inglés. Precisión (PPV): TPR = TP P G = TP TP + FN PPV = TP P M = TP TP + FP Idealmente Precision = 1 y Exhaustividad = 1. Curvas para observar compensación. 46/67
Condiciones experimentales GrabCut: OpenCV C++ OneCute: OpenCV C++ Random Walks: MATLAB SIOX: JAVA 47/67
Base de datos (d) Original (e) Primer conjunto (f) Segundo conjunto 48/67
Restauración Objetivo Análisis cuantitativo Relleno de imagen Determinación de eficiencia Análisis cualitativo Es necesario comparar la imagen restaurada con un fondo real? 49/67
Restauración Algoritmos Bertalmio (Navier Stokes) Telea Criminisi 50/67
Restauración Metodología de evaluación Problemas Criterio subjetivo. No hay estándares de evaluación. No hay criterio generalizado para definir una buena restauración. Esfuerzos por realizar mediciones cuantitativas. 51/67
Restauración Condiciones experimentales Bertalmio: OpenCV C++ Telea: OpenCV C++ Criminisi: MATLAB 52/67
Restauración Evaluación cuantitativa: métricas MSE: MSE = 1 mn = [I O (x, y) I R (x, y)] 2 m 1 n 1 y=0 x=0 PSNR: R = 255 PSNR = 10 log 10 R 2 MSE 53/67
Restauración Evaluación cualitativa 21 participantes Metodología para medir calidad de servicio de voz (ITU-R) Pregunta: En una calificación de 1 a 5, cómo calificaría usted la calidad de las imágenes presentadas? Calificación: 1. Mala 2. Regular 3. Buena 4. Muy buena 5. Excelente 54/67
Restauración Evaluación cualitativa: métrica MOS (Mean Opinion Score en inglés): MOS = 1 n n i=1 S i 55/67
Contenido Introducción Restauración Diseño de experimento Resultados Conclusiones 56/67
Eficiencia 50 100 40 Tiempo [s] 30 20 Eficiencia Scribbles 1 Scribbles 2 Tiempo [s] 1 Eficiencia Scribbles 1 Scribbles 2 10 0 1 5 10 15 30 50 75 100 200 Iteraciones (a) GrabCut 0.001 0.01 0.1 1 10 100 1000 10000 Beta (b) OneCut Figura: Tiempo promedio de ejecución. 57/67
Eficiencia 1.00 1.00 0.75 0.75 Tiempo [s] 0.50 Eficiencia Scribbles 1 Scribbles 2 Tiempo [s] 0.50 Eficiencia Scribbles 1 Scribbles 2 0.25 0.25 0.00 10 20 30 40 50 60 70 80 90 100 150 300 500 Beta (a) Random Walks 0.00 1 5 10 20 50 75 100 Size Factor (b) SIOX Figura: Tiempo promedio de ejecución. 58/67
Eficacia (regiones) 1.00 1.00 0.75 0.75 Jaccard 0.50 Jaccard 0.50 0.25 0.00 Exactitud Scribbles 1 Scribbles 2 1 5 10 15 30 50 75 100 200 Iteraciones (a) GrabCut 0.25 Accuracy Scribbles 1 Scribbles 2 0.00 0.001 0.01 0.1 1 10 100 1000 10000 Beta (b) OneCut Figura: Valores promedio de Jaccard. 59/67
Eficacia (regiones) 1.00 1.00 0.75 0.75 Jaccard 0.50 Jaccard 0.50 0.25 Exactitud Scribbles 1 Scribbles 2 0.00 10 20 30 40 50 60 70 80 90 100 150 300 500 Beta (a) Random Walks 0.25 0.00 Exactitud Scribbles 1 Scribbles 2 1 5 10 20 50 75 100 Size Factor (b) SIOX Figura: Valores promedio de Jaccard. 60/67
Eficacia (bordes) 1 0.9 0.8 0.7 [0.78] Grabcut (S2) [0.81] SIOX (S2) [0.72] Onecut (S2) [0.63] RandomWalker (S2) [0.65] Grabcut (S1) [0.57] SIOX (S1) [0.43] Onecut (S1) [0.4] RandomWalker (S1) 0.6 Precision 0.5 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Recall Figura: Curvas de precisión y exhaustividad. 61/67
Restauración Eficiencia 20 20 200 Tiempo [s] 15 10 Tiempo [s] 15 10 Tiempo [s] 150 100 5 5 50 0 1 5 10 15 20 25 30 35 40 45 50 Radio (a) Bertalmio 0 1 5 10 15 20 25 30 35 40 45 50 Radio (b) Telea 0 9 15 21 27 33 39 41 51 Parche (c) Criminisi Figura: Tiempo promedio de ejecución. 62/67
Restauración Eficacia (cualitativo) 4 3 MOS 2 Algoritmo Bertalmio Criminisi Telea 1 0 Bertalmio Criminisi Telea Algoritmo Figura: MOS de algoritmos de restauración de imágenes. 63/67
Restauración Eficacia (cuantitativo) 2000 20 15 1500 PSNR 10 18.02 18.17 17.83 Algoritmo Bertalmio Criminisi Telea MSE 1000 Canales Canal R Canal G Canal B 5 500 0 Bertalmio Criminisi Telea 0 Bertalmio Criminisi Telea (a) PSNR (b) MSE 64/67
Contenido Introducción Restauración Diseño de experimento Resultados Conclusiones 65/67
Conclusiones Recopilación de base de datos para emular la intervención del usuario a través de dos conjuntos de scribbles en segmentación. Índice Jaccard refleja más exhaustivamente la exactitud basada en regiones que otras métricas utilizadas en el estado del arte. Exactitud de los algoritmos de segmentación incrementa cuando se marca el objeto de interés con mayor detalle. Desde el punto de vista de la eficacia, GrabCut se ha erigido como el algoritmo más exacto, seguido de cerca por SIOX. SIOX y Random Walks son los algoritmos más eficientes, pero Random Walks es el menos exacto. 66/67
Conclusiones La definición de una buena restauración depende de la percepción de un observador. De acuerdo a los observadores, el algoritmo Criminisi supera significativamente a los resultados de Bertalmio y Telea. Desempeño no se registra en las métricas cuantitativas. Algoritmos basados en ecuaciones diferenciales parciales, de Bertalmio y Telea, son los más eficientes. Se requiere optimización de la implementación del algoritmo de Criminisi. 67/67