Contribuciones al proceso de súper-resolución mediante técnicas de filtros selectivos, topología de macro-bloques adaptable y sistemas multi-cámara
Abstract
Programa de doctorado: Ingeniería de Telecomunicación Avanzada
Full text
TESIS DOCTORAL Eduardo Quevedo Gutiérrez Las Palmas de Gran Canaria, abril de 2015 Instituto Universitario de Microelectrónica Aplicada UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA Contribuciones al proceso de Súper-Resolución mediante técnicas de filtros selectivos, topología de Macro-Bloques adaptable y sistemas Multi-Cámara
D. PEDRO PÉREZ CARBALLO SECRETARIO DEL INSTITUTO UNIVERSITARIO DE MICROELECTRÓNICA APLICADA DE LA UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA, CERTIFICA, Que el Consejo de Doctores del Departamento en su sesión de fecha siete de abril de 2015 tomó el acuerdo de dar el consentimiento para su tramitación, a la tesis doctoral titulada “Contribuciones al proceso de Súper-Resolución mediante técnicas de filtros selectivos, topología de Macro-Bloques adaptable y sistemas Multi-Cámara” presentada por el doctorando D. Eduardo G. Quevedo Gutiérrez y dirigida por los Doctores D. Gustavo I. Marrero Callicó, y D. Félix B. Tobajas Guerrero. Y para que así conste, y a efectos de lo previsto en el Artº 6 del Reglamento para la elaboración, defensa, tribunal y evaluación de tesis doctorales de la Universidad de Las Palmas de Gran Canaria, firmo la presente en Las Palmas de Gran Canaria, a catorce de abril de 2015.
Instituto: Instituto Universitario de Microelectrónica Aplicada Programa de doctorado: Ingeniería de Telecomunicación Avanzada Título de la Tesis “CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACROBLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA” Tesis Doctoral presentada por D. Eduardo G. Quevedo Gutiérrez Dirigida por el Dr. D. Gustavo I. Marrero Callicó Codirigida por el Dr. D. Félix B. Tobajas Guerrero El Director, El Codirector El Doctorando, Las Palmas de Gran Canaria, a 14 de abril de 2015
DIVISIÓN DE DISEÑO DE SISTEMAS INTEGRADOS TESIS DOCTORAL Contribuciones al proceso de Súper-Resolución mediante técnicas de filtros selectivos, topología de Macro-Bloques adaptable y sistemas Multi-Cámara Eduardo Quevedo Gutiérrez Las Palmas de Gran Canaria, abril de 2015
Dedicado a mi novia, Patricia (tris)
Robustness aspects: Introduction of a filter for each Macro-Block (Block Selective Filter) in which the input sequence is divided in the Super-Resolution process. It will be shown that a particular study for each Macro-Block provides greater robustness to the algorithm used as a reference, and that enabling a variable Macro-Block size and determining the level of local motion of each Macro-Block against an approach based solely on global motion, the overall quality is increased. Additionally, a real case oriented to underwater video sequences recorded by an ROV (Remotely Operated Vehicle) presents how the calculation of the average speed based on georeferencing information provides key information when determining the number of frames to be selected in the Super-Resolution process, which provides greater robustness to the algorithm. Performance limits: Specific test benches have been designed to provide reliable information on the obtained results. At the same time, systems have been developed to determine the maximum theoretical objective quality to be achieved with the proposed algorithms.
i Índice de Contenidos 1.- INTRODUCCIÓN ……………………….…….................................................................. 1 1.1.- PLANTEAMIENTO DEL PROBLEMA..………………………………………………………………………………. 2 1.2.- MOTIVACIÓN DE LA TESIS DOCTORAL.....………………………………........…………..….................. 4 1.3.- OBJETIVOS DE LA TESIS DOCTORAL................................................................................... 6 1.4.- ORGANIZACIÓN DE LA TESIS DOCTORAL....………………….....................…………...……............. 7 2.- ESTADO DEL ARTE ………………..….…….................................................................. 9 2.1.- INTRODUCCIÓN.………………………………………………………………………………………………………. 10 2.2.- ESTADO DEL ARTE EN TÉCNICAS DE SÚPER-RESOLUCIÓN….…………........…………................... 11 2.3.- ESTADO DEL ARTE DE SISTEMAS MULTI-CÁMARA…............................................................. 22 2.4.- MÉTRICAS SOBRE CALIDAD DE IMAGEN…..………………….....................…………...……............. 37 2.5.- DESAFÍOS DE LA SÚPER-RESOLUCIÓN Y CONTRIBUCIONES.....................…………...……............. 44 2.6.- CONCLUSIONES………………………………..………………….....................…………...…….............. 48 3.- CONTRIBUCIONES ALGORÍTMICAS ….……................................................................ 49 3.1.- INTRODUCCIÓN.………………………………………………………………………………………………………. 50 3.2.- ALGORITMO BASE DE SÚPER-RESOLUCIÓN…..…………………………........…………..…................. 51 3.3.- FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE……................................ 65 3.4.- ENTORNO MULTI-CÁMARA…………….…..………………….....................…………...…….............. 75 3.5.- CONCLUSIONES………………………………..………………….....................…………...…….............. 84 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE .... 85 4.1.- INTRODUCCIÓN.………………………………………………………………………………………………………. 86 4.2.- ENTORNO DE SIMULACIÓN Y ANÁLISIS……………………………………........…………..…................. 87 4.3.- ANÁLISIS DE SIMULACIONES……………............................................................................... 92 4.4.- CONCLUSIONES…………………………………………………….....................…………...…….............. 125
ÍNDICE DE CONTENIDOS ii 5.- RESULTADOS Y ANÁLISIS: ENTORNO MULTI-CÁMARA ……………………………………..………. 127 5.1.- INTRODUCCIÓN.………………………………………………………………………………………………………. 128 5.2.- ENTORNO DE SIMULACIÓN Y ANÁLISIS……………………………………........…………..…................. 129 5.3.- ANÁLISIS DE SIMULACIONES……………............................................................................... 138 5.4.- CONCLUSIONES…………………………………………………….....................…………...…….............. 176 6.- ANÁLISIS DE SISTEMA GLOBAL …………………….……………………………………………..………. 177 6.1.- INTRODUCCIÓN.………………………………………………………………………………………………………. 178 6.2.- RESULTADOS DE SISTEMA GLOBAL…………………………………………………........…………..…....... 179 6.3.- APLICACIÓN EN ENTORNO SUBMARINO………..................................................................... 191 6.4.- TEST DE CALIDAD SUBJETIVA ....……………………………….....................…………...…….............. 202 6.5.- CONCLUSIONES…………………………………………………….....................…………...…….............. 204 7.- CONCLUSIONES Y LÍNEAS FUTURAS ……………………………………………........................... 205 7.1.- INTRODUCCIÓN....……………………………………………………………………………………………………. 206 7.2.- CONCLUSIONES ...……………………………………………………………………………………………………. 207 7.3.- LÍNEAS FUTURAS ……………............................................................................................. 209 ANEXOS …........................................................................................................... 211 A.1.- SECUENCIAS DE VÍDEO UTILIZADAS….………….....................………………………………..………….. 213 A.2.- ENTORNO SUBMARINO: CARACTERÍSTICAS Y MEJORA DE IMAGEN.....………………………………..… 219 A.3.- TEST DE CALIDAD SUBJETIVA: CUESTIONARIO................................………………………………..… 229 A.4.- PUBLICACIONES……………………………………………………………………………………………………….. 231 BIBLIOGRAFÍA ....................................................................................................... 235
iii Índice de Figuras 1.- INTRODUCCIÓN ………….………………….................................................................. 1 FIGURA 1.1.- IMAGEN DE TEST (TEST TARGET) 1951 USAF …………………...…............................................... 2 2.- ESTADO DEL ARTE .........…………………................................................................. 9 FIGURA 2.1.- PROCESO DE SR: RECONSTRUCCIÓN DE IMAGEN HR A PARTIR DE VARIAS IMÁGENES EN LR ............. 10 FIGURA 2.2.- MODELO DE OBSERVACIÓN DE UN SISTEMA DE IMAGEN ........................…................................. 12 FIGURA 2.3.- SR BASADA EN ALINEAMIENTO Y POS-PROCESAMIENTO DEL DESENFOQUE .................................... 14 FIGURA 2.4.- EL MODELO MRF PARA SR DE UN ÚNICO FRAME .................................................................... 17 FIGURA 2.5.- ARRAY MC CON GEOMETRÍA SEMIESFÉRICA ........................................................................... 23 FIGURA 2.6.- PROPUESTA DE WEINMANN ET AL. [WSR+11] ...................................................................... 23 FIGURA 2.7.- DISPOSICIÓN DE CÁMARAS (A Y C) Y MODELO 3D (B Y D) DE DINOSAURIO Y RUINAS [ZCI+08] ......... 24 FIGURA 2.8.- ARRAY MC DE 64 CÁMARAS DISTRIBUIDAS EN UNA MATRIZ CUADRADA DE 8X8 ............................ 24 FIGURA 2.9.- TRES VISTAS DONDE SE ENFOCA A LA PERSONA DE LA IZQUIERDA, CENTRO Y DERECHA ..................... 25 FIGURA 2.10.- PROPUESTA DE SMITH ET AL. [SZJ+09] .............................................................................. 25 FIGURA 2.11.- SISTEMA MODULAR PROPUESTO POR BAKER Y TANGUAY [BT06] ............................................ 26 FIGURA 2.12.- IMAGEN CON GRAN ÁNGULO DE VISIÓN TOMADA MEDIANTE UN ARRAY DE DIMENSIONES 2X9 ....... 26 FIGURA 2.13.- PROPUESTA DE BELLOTTO ET AL. [BSB+09] ........................................................................ 26 FIGURA 2.14.- PROPUESTA DE WILBURN ET AL. [WJV05] .......................................................................... 27 FIGURA 2.15.- ARRAYS MC DE LA UNIVERSIDAD DE STANFORD .................................................................... 27 FIGURA 2.16.- SECUENCIA DE VÍDEO PROCESADA CON FOTOGRAFÍA DE APERTURA SINTÉTICA NO LINEAL ............. 27 FIGURA 2.17.- ARRAY MC IMPLEMENTADO MEDIANTE CÁMARAS GOPRO ® .................................................. 28 FIGURA 2.18.- CÁMARA PANONO® PARA OBTENER PANORÁMICAS EN 360O .................................................. 28 FIGURA 2.19.- SISTEMA MC DE LA EMPRESA IDS ® A TRAVÉS DE USB 3.0 .................................................... 29 FIGURA 2.20.- SISTEMA DE SR BASADO EN ESTABILIZACIÓN ÓPTICA DE LA IMAGEN [BT14] ............................... 29 FIGURA 2.21.- INTEGRACIÓN PREVISTA DE SISTEMA DE SR EN CÁMARA DE IPHONE® [BT14] ............................. 29 FIGURA 2.22.- PROPUESTA GENÉRICA DE KANG ET AL. [KLH08] .................................................................. 30 FIGURA 2.23.- ARRAY MC DE DIMENSIONES 3X3 DEL INSTITUTO UNIVERSITARIO DE YONSEI [HMG08] ............. 31 FIGURA 2.24.- POSIBLES CONFIGURACIONES DEL ARRAY MC PROPUESTO POR LA UNIVERSIDAD DE ROCHESTER ... 33 FIGURA 2.25.- SOLAPE ENTRE LAS IMÁGENES CAPTURADAS POR LAS CÁMARAS ................................................ 35 FIGURA 2.26.- ARRAY MC DE DIMENSIONES 2X2 ..................................................................................... 35 FIGURA 2.27.- MODELO DE PRESENTACIÓN DE ESTÍMULO PARA EL MÉTODO ACR SEGÚN ITU-T P.911 .............. 43 FIGURA 2.28.- NÚMERO DE ARTÍCULOS DE SR DESDE EL AÑO 1984 HASTA EL AÑO 2013 ................................. 46
ÍNDICE DE FIGURAS iv 3.- CONTRIBUCIONES ALGORÍTMICAS .......................................................................... 49 FIGURA 3.1.- ESQUEMA GENERAL DE LAS CONTRIBUCIONES DE LA PRESENTE TESIS DOCTORAL ........................... 50 FIGURA 3.2.- DIAGRAMA DE BLOQUES DE ALGORITMO DE SR DINÁMICA TOMADO COMO REFERENCIA ................. 51 FIGURA 3.3.- PROCESO DE BSR DESCRITO EN PSEUDO-CÓDIGO ..……………………............................................ 52 FIGURA 3.4.- PROCESO DE ESTIMACIÓN DE MOVIMIENTO .........……………………........................................... 52 FIGURA 3.5.- PROCESO DE COMPENSACIÓN DE MOVIMIENTO .........……………………...................................... 53 FIGURA 3.6.- EJEMPLO DE COLISIONES EN LA MALLA DE VHR ..........……………………...................................... 54 FIGURA 3.7.- COMPENSACIÓN DE MOVIMIENTO POR MB ...............……………………...................................... 54 FIGURA 3.8.- MALLA DE VHR ...................................................……………………...................................... 55 FIGURA 3.9.- PARÁMETROS DE SR .............................................……………………...................................... 57 FIGURA 3.10.- EJEMPLO DE VENTANA DE TRABAJO DE +/- 5 (#WBF = 4 Y #WFF = 5) CON CF = 6 .................. 59 FIGURA 3.11.- RESULTADOS CON SECUENCIA GALDAR ............................................................................... 60 FIGURA 3.12.- RESULTADOS CON SECUENCIA MOBCAL .............................................................................. 61 FIGURA 3.13.- RESULTADOS CON SECUENCIA REEF .................................................................................... 62 FIGURA 3.14.- INFORMACIÓN ESPACIAL E INFORMACIÓN TEMPORAL ............................................................. 64 FIGURA 3.15.- APLICACIÓN DEL FILTRO DE VENTANA CORTANTE A VENTANA DE TRABAJO DE FIGURA 3.10 ......... 66 FIGURA 3.16.- APLICACIÓN DEL FILTRO SELECTIVO DE VENTANA A VENTANA DE TRABAJO DE FIGURA 3.10 ......... 67 FIGURA 3.17.- CONDICIÓN PARA CONSIDERAR UN MB EN EL PROCESO DE SR (FILTRO SELECTIVO DE MB) ........... 68 FIGURA 3.18.- CONDICIONES PARA DIVIDIR MBS EN EL PROCESO DE SR USANDO VBS ..................................... 70 FIGURA 3.19.- SELECCIÓN DE MBS PARA APLICAR SR EN UN FRAME DE LA SECUENCIA SUZIE UTILIZANDO FBS ...... 73 FIGURA 3.20.- DIVISIÓN DE MBS EN FRAMES DE LAS SECUENCIAS MOBILE (A) Y SUZIE (B) USANDO VBS ............. 73 FIGURA 3.21.- PSEUDOCÓDIGO INCLUYENDO FILTROS SELECTIVOS Y TOPOLOGÍA DE MBS ADAPTABLE .................. 74 FIGURA 3.22.- DIAGRAMA DEL MÉTODO TEMPORAL-ESPACIAL USANDO LA CÁMARA 2 COMO REFERENCIA .......... 76 FIGURA 3.23.- PROCESO DE REORDENAMIENTO DE FRAMES ........................................................................ 76 FIGURA 3.24.- DIAGRAMA DEL MÉTODO ESPACIAL-TEMPORAL .................................................................... 77 FIGURA 3.25.- DIAGRAMA DEL MÉTODO MIXTO ........................................................................................ 78 FIGURA 3.26.- ARRAY MC ................................................................................................................... 80 FIGURA 3.27.- DIVISIÓN DE LOS FRAMES DEL ARRAY MC EN BORDES Y SOLAPE ............................................... 81 FIGURA 3.28.- PSEUDOCÓDIGO INCLUYENDO MÉTODOS MULTI-CÁMARA ...................................................... 83 FIGURA 3.29.- DIAGRAMA GLOBAL DE LAS APORTACIONES ALGORÍTMICAS DESARROLLADAS .............................. 84 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE .... 85 FIGURA 4.1.- DIAGRAMA GLOBAL DE LAS APORTACIONES ALGORÍTMICAS DESARROLLADAS DESTACANDO FILTROS ... 86 FIGURA 4.2.- DISEÑO DEL BANCO DE PRUEBAS (TESTBENCH) .......………………………………................................ 88 FIGURA 4.3.- FORMATOS DE MUESTREO (A) Y REPRESENTACIÓN DE PÍXELES EN FORMATO 4:2:0 (B) ................... 89 FIGURA 4.4.- DIFERENCIA ENTRE WSFSR Y BSR RESPECTO A WSFTHR – SECUENCIA FOREMAN ....................... 94 FIGURA 4.5.- DIFERENCIA ENTRE WSFSR Y BSR RESPECTO A WSFTHR – SECUENCIA SUZIE ............................. 95 FIGURA 4.6.- DIFERENCIA ENTRE WSFSR Y BSR RESPECTO A WSFTHR – SECUENCIA GALDAR .......................... 95 FIGURA 4.7.- DIFERENCIA ENTRE WSFSR Y BSR RESPECTO A WSFTHR – SECUENCIA MOBILE .......................... 95 FIGURA 4.8.- TIEMPO DE EJECUCIÓN RESPECTO A WSFTHR – SECUENCIA FOREMAN ....................................... 96 FIGURA 4.9.- VARIACIÓN PORCENTUAL DE TIEMPO RESPECTO AL UMBRAL ...................................................... 96 FIGURA 4.10.- SECUENCIA FOREMAN PARA UMBRAL ÓPTIMO = 80% ........................................................... 97 FIGURA 4.11.- SECUENCIA GALDAR PARA UMBRAL ÓPTIMO = 20% .............................................................. 97 FIGURA 4.12.- SECUENCIA FLOWER PARA UMBRAL ÓPTIMO = 30% .............................................................. 98 FIGURA 4.13.- VENTANA DE SR, PSNR Y SSIM CON RESPECTO A NÚMERO DE FRAME – SECUENCIA FOREMAN .... 99 FIGURA 4.14.- VENTANA DE SR CON RESPECTO A NÚMERO DE FRAME - SECUENCIA GALDAR ............................. 100 FIGURA 4.15.- VENTANA DE SR CON RESPECTO A NÚMERO DE FRAME - SECUENCIA SUZIE ................................. 100 FIGURA 4.16.- ANÁLISIS DEL FRAME 20 DE LA SECUENCIA FOREMAN QCIF PARA WSFSR ................................ 101 FIGURA 4.17.- DIFERENCIA ENTRE BSFSR Y BSR RESPECTO A BSFTHR – SECUENCIA FOREMAN ....................... 104
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA v FIGURA 4.18.- TIEMPO DE EJECUCIÓN RESPECTO A BSFTHR – SECUENCIA FOREMAN ...................................... 104 FIGURA 4.19.- SECUENCIA FOREMAN PARA UMBRAL ÓPTIMO = 4% ............................................................. 105 FIGURA 4.20.- NÚMERO DE MBS CON RESPECTO A NÚMERO DE FRAME, PSNR Y SSIM – SECUENCIA FOREMAN .. 106 FIGURA 4.21.- MEJORA DE PSNR CON UMBRAL ADAPTATIVO FRAME A FRAME ............................................... 107 FIGURA 4.22.- DIFERENCIAS WSFSR-BSR Y WBSFSR-BSR RESPECTO A WSFTHR – SECUENCIA FOREMAN ....... 107 FIGURA 4.23.- SECUENCIA FOREMAN PARA INT, BSR Y UMBRALES ÓPTIMOS DE WSFSR, BSFSR Y WBSFSR ..... 108 FIGURA 4.24.- SECUENCIA FOREMAN PARA UMBRALES ÓPTIMOS DE WSFSR, BSFSR Y WBSFSR ..................... 108 FIGURA 4.25.- ANÁLISIS DEL FRAME 20 DE LA SECUENCIA FOREMAN QCIF PARA BSFSR .................................. 109 FIGURA 4.26.- DIFERENCIA ENTRE VBSSR Y BSR RESPECTO A VBSTHR1 Y VBSTHR2 – SECUENCIA FOREMAN ... 112 FIGURA 4.27.- SECUENCIA FOREMAN CONSIDERANDO VBSSR FRENTE A BSR E INT ........................................ 113 FIGURA 4.28.- PORCENTAJE DE PÍXELES CLASIFICADOS EN UN TAMAÑO DE MB – SECUENCIA FOREMAN .............. 113 FIGURA 4.29.- ANÁLISIS DEL FRAME 20 DE LA SECUENCIA FOREMAN QCIF PARA WSFSR ................................ 114 FIGURA 4.30.- PRESTACIONES DEL FILTRO VBSFSR CON RESPECTO A BSFSR ................................................. 115 FIGURA 4.31.- PRESTACIONES DEL FILTRO VBSWSFSR CON RESPECTO A WSFSR ........................................... 116 FIGURA 4.32.- PRESTACIONES DE FILTROS RESPECTO A WSFTHR – SECUENCIA FOREMAN ................................ 117 FIGURA 4.33.- TIEMPOS DE EJECUCIÓN RESPECTO A WSFTHR – SECUENCIA FOREMAN ................................... 117 FIGURA 4.34.- RESUMEN DE APORTACIÓN DE WSFSR, BSFSR Y VBSSR ...................................................... 119 FIGURA 4.35.- FRAME 70 DE LA SECUENCIA FOREMAN QCIF ...................................................................... 120 FIGURA 4.36.- FRAME 20 DE LA SECUENCIA FOREMAN QCIF ...................................................................... 120 FIGURA 4.37.- RESULTADOS DE PSNR PARA FRAMES EN SECUENCIAS FOREMAN, FOOTBALL, MOBILE Y SUZIE ...... 121 FIGURA 4.38.- RESULTADOS PROMEDIO PARA VARIOS MÉTODOS (A) PSNR EN DB, (B) SSIM ............................ 122 FIGURA 4.39.- RESULTADOS VISUALES PARA LA SECUENCIA FOREMAN CIF (FRAME 70) .................................... 123 FIGURA 4.40.- RESULTADOS DE FIGURA DE MÉRITO FM ............................................................................ 124 5.- RESULTADOS Y ANÁLISIS: ENTORNO MULTI-CÁMARA ................................................. 127 FIGURA 5.1.- DIAGRAMA GLOBAL DE APORTACIONES ALGORÍTMICAS RESALTANDO ENTORNO MULTI-CÁMARA ...... 128 FIGURA 5.2.- PROCESO DE CREACIÓN DE LAS SECUENCIAS MC ARTIFICIALES ................................................... 129 FIGURA 5.3.- TESTBENCH DEL MÉTODO TEMPORAL-ESPACIAL ......…………………............................................ 132 FIGURA 5.4.- PRE-PROCESAMIENTO OVERLAP+BORDERS EN TESTBENCH DEL MÉTODO TEMPORAL-ESPACIAL ....... 133 FIGURA 5.5.- TESTBENCH DEL MÉTODO ESPACIAL-TEMPORAL ......…………………............................................ 134 FIGURA 5.6.- PRE-PROCESAMIENTO OVERLAP+BORDERS EN TESTBENCH DEL MÉTODO ESPACIAL-TEMPORAL ....... 135 FIGURA 5.7.- TESTBENCH DEL MÉTODO MIXTO Y DE LA SR ESPACIAL ............................................................ 136 FIGURA 5.8.- MODIFICACIÓN DEL TESTBENCH DE LA SR TEMPORAL .............................................................. 137 FIGURA 5.9.- ARRAY MC DE DIMENSIONES 3X3 PARA GENERAR LAS SECUENCIAS MC ARTIFICIALES ..................... 138 FIGURA 5.10.- FRAMES Nº 12 SÚPER-RESUELTOS MRT (A) Y HR (B) PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO FULL-FRAME ......................................................... 142 FIGURA 5.11.- FRAMES Nº 12 INTERPOLADOS MRT (A) Y SR+INT (B) PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO FULL-FRAME ......................................................... 142 FIGURA 5.12.- FRAME Nº 12 INTERPOLADO INTX4 PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO TEMPORALESPACIAL EN MODO FULL-FRAME ...................................................................................... 142 FIGURA 5.13.- FRAMES Nº 14 SÚPER-RESUELTOS MRT (A) Y HR (B) PARA LA SECUENCIA SHIELDS EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO FULL-FRAME ...................................................................... 143 FIGURA 5.14.- FRAMES Nº 14 SÚPER-RESUELTOS MRT (A) Y SR+INT (B) PARA LA SECUENCIA SHIELDS EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO FULL-FRAME ......................................................... 143 FIGURA 5.15.- FRAMES Nº 14 INTERPOLADO INTX4 PARA LA SECUENCIA SHIELDS EN EL MÉTODO TEMPORALESPACIAL EN MODO FULL-FRAME ...................................................................................... 143 FIGURA 5.16.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO OVERLAP .......................................................... 145 FIGURA 5.17.- FRAMES Nº 14 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA SHIELDS EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO OVERLAP .............................................................. 145 FIGURA 5.18.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO OVERLAP+BORDERS ............................................ 148
ÍNDICE DE FIGURAS vi FIGURA 5.19.- FRAMES Nº 14 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA SHIELDS EN EL MÉTODO TEMPORAL-ESPACIAL EN MODO OVERLAP+BORDERS ................................................ 148 FIGURA 5.20.- FRAMES Nº 10 DE WATER COOLER SÚPER-RESUELTO (A) E INTERPOLADO (B) A LA SALIDA DE LA 2ª FASE DE SR TEMPORAL EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO FULL-FRAME .................. 150 FIGURA 5.21.- FRAMES Nº 42 DE MOBCAL SÚPER-RESUELTO (A) E INTERPOLADO (B) A LA SALIDA DE LA 2ª FASE DE SR TEMPORAL EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO FULL-FRAME ............................. 151 FIGURA 5.22.- FRAMES Nº 12 SÚPER-RESUELTOS MRS (A) Y HR (B) E INTERPOLADOS MR (C) Y SR+INT (D) PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO FULL-FRAME ..... 151 FIGURA 5.23.- FRAMES Nº 14 SÚPER-RESUELTOS MRS (A) Y HR (B) E INTERPOLADOS MR (C) Y SR+INT (D) PARA LA SECUENCIA SHIELDS EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO FULL-FRAME ........... 152 FIGURA 5.24.- FRAMES Nº 10 SÚPER-RESUELTOS (A) E INTERPOLADO (B) HR PARA LA SECUENCIA WATER COOLER EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO OVERLAP ...................................................... 153 FIGURA 5.25.- FRAMES Nº 42 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA MOBCAL EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO OVERLAP .............................................................. 154 FIGURA 5.26.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO OVERLAP .......................................................... 154 FIGURA 5.27.- FRAMES Nº 14 SÚPER RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA SHIELDS EN EL MÉTODO ESPACIAL-TEMPORAL EN MODO OVERLAP .............................................................. 154 FIGURA 5.28.- PSNR Y SSIM DE MÉTODO MIXTO EN MODO FULL-FRAME EN LA SECUENCIA WATER COOLER ...... 156 FIGURA 5.29.- PSNR Y SSIM DE MÉTODO MIXTO EN MODO FULL-FRAME EN LA SECUENCIA MOBCAL ................ 156 FIGURA 5.30.- PSNR Y SSIM DE MÉTODO MIXTO EN MODO FULL-FRAME EN LA SECUENCIA STOCKHOLM ........... 156 FIGURA 5.31.- FRAMES Nº 10 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA WATER COOLER EN EL MÉTODO MIXTO EN MODO FULL-FRAME .................................................................... 157 FIGURA 5.32.- FRAMES Nº 42 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA MOBCAL EN EL MÉTODO MIXTO EN MODO FULL-FRAME ............................................................................ 158 FIGURA 5.33.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO MIXTO EN MODO FULL-FRAME ......................................................................... 159 FIGURA 5.34.- PSNR Y SSIM DE MÉTODO MIXTO EN MODO OVERLAP EN LA SECUENCIA WATER COOLER ........... 160 FIGURA 5.35.- PSNR Y SSIM DE MÉTODO MIXTO EN MODO OVERLAP EN LA SECUENCIA MOBCAL ..................... 160 FIGURA 5.36.- PSNR Y SSIM DE MÉTODO MIXTO EN MODO OVERLAP EN LA SECUENCIA STOCKHOLM ................ 160 FIGURA 5.37.- FRAMES Nº 10 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA WATER COOLER EN EL MÉTODO MIXTO EN MODO OVERLAP ......................................................................... 161 FIGURA 5.38.- FRAMES Nº 42 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA MOBCAL EN EL MÉTODO MIXTO EN MODO OVERLAP ................................................................................. 162 FIGURA 5.39.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM EN EL MÉTODO MIXTO EN MODO OVERLAP .............................................................................. 162 FIGURA 5.40.- FRAMES SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA FUJIDOG APLICANDO SR ESPACIAL EN MODO FULL-FRAME ...................................................................................... 164 FIGURA 5.41.- FRAMES SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA EL FRAME Nº42 DE LA SECUENCIA PARKRUN APLICANDO SR ESPACIAL EN MODO OVERLAP ........................................................ 165 FIGURA 5.42.- FRAMES Nº 10 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA WATER COOLER APLICANDO SR TEMPORAL EN MODO FULL-FRAME ............................................................... 166 FIGURA 5.43.- FRAMES Nº 42 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA MOBCAL APLICANDO SR TEMPORAL EN MODO FULL-FRAME ............................................................... 167 FIGURA 5.44.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM APLICANDO SR TEMPORAL EN MODO FULL-FRAME ............................................................... 167 FIGURA 5.45.- FRAMES Nº 10 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA WATER COOLER APLICANDO SR TEMPORAL EN MODO OVERLAP .................................................................... 168 FIGURA 5.46.- FRAMES Nº 42 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA MOBCAL APLICANDO SR TEMPORAL EN MODO OVERLAP .................................................................... 169 FIGURA 5.47.- FRAMES Nº 12 SÚPER-RESUELTO (A) E INTERPOLADO (B) HR PARA LA SECUENCIA STOCKHOLM APLICANDO SR TEMPORAL EN MODO OVERLAP .................................................................... 169 FIGURA 5.48.- MODO TEMPORAL-ESPACIAL PARALELO CON 10 CORES/THREADS............................................ 173 FIGURA 5.49.- MÉTRICA SSIM PARA MÉTODOS MC Y BSR EN SECUENCIAS BAJO ESTUDIO ............................... 174 FIGURA 5.50.- RESUMEN DE TIEMPOS DE CÓMPUTO (EN MS) DE SECUENCIAS BAJO ESTUDIO ............................. FIGURA 5.51.- FIGURA DE MÉRITO FM_MC APLICADA A LAS SECUENCIAS BAJO ESTUDIO ................................. 175 175
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA vii 6.- ANÁLISIS DEL SISTEMA GLOBAL ............................................................................. 177 FIGURA 6.1.- SISTEMA GLOBAL PROPUESTO EN ESTA TESIS DOCTORAL .......................................................... 178 FIGURA 6.2.- PSNR (DB) PARA SECUENCIAS MC ..................................................................................... 179 FIGURA 6.3.- SSIM (%) PARA SECUENCIAS MC ....................................................................................... 180 FIGURA 6.4.- DIFERENCIA DE PSNR (DB) CON RESPECTO A BSR PARA SECUENCIAS MC ................................... 180 FIGURA 6.5.- DIFERENCIA DE SSIM (%) CON RESPECTO A BSR PARA SECUENCIAS MC .................................... 180 FIGURA 6.6.- RESULTADOS PARA SECUENCIA MOBCAL .............................................................................. 182 FIGURA 6.7.- RESULTADOS PARA SECUENCIA PARKRUN .............................................................................. 183 FIGURA 6.8.- RESULTADOS PARA SECUENCIA SHIELDS ................................................................................ 184 FIGURA 6.9.- RESULTADOS DE TIEMPOS DE CÓMPUTO PARA SECUENCIAS MC ................................................. 185 FIGURA 6.10.- RESULTADOS DE FIGURA DE MÉRITO FM_G PARA MCABMSR Y MCSR ................................. 185 FIGURA 6.11.- PÍXELES DE FACTORES DE ESCALA 2 (ROJO), 3 (AZUL) Y 4 (VERDE) PARTIENDO DE 1 PÍXEL DE LR .... 186 FIGURA 6.12.- RESULTADOS PARA FACTOR DE ESCALA 2, 3 Y 4 PARA INTERPOLACIÓN, BSR Y MCABMSR .......... 187 FIGURA 6.13.- DIFERENCIA DE SR CON RESPECTO A INT PARA DIFERENTES FACTORES DE ESCALA ........................ 187 FIGURA 6.14.- RESULTADOS DE PSNR PARA FACTOR DE ESCALA 2, 3 Y 4 FRAME A FRAME ............................... 187 FIGURA 6.15.- RESULTADOS DE SSIM PARA FACTOR DE ESCALA 2, 3 Y 4 FRAME A FRAME ................................ 187 FIGURA 6.16.- RESULTADOS DE SECUENCIA STOCKHOLM PARA FACTOR DE ESCALA 4 ....................................... 188 FIGURA 6.17.- RESULTADOS DE SECUENCIA STOCKHOLM PARA FACTOR DE ESCALA 3 ....................................... 188 FIGURA 6.18.- RESULTADOS DE SECUENCIA STOCKHOLM PARA FACTOR DE ESCALA 2 ....................................... 188 FIGURA 6.19.- FUNCIONES QUE REALIZAN LA MAYOR PARTE DEL TRABAJO INDIVIDUAL (BSR) ............................ 189 FIGURA 6.20.- FUNCIONES QUE REALIZAN LA MAYOR PARTE DEL TRABAJO INDIVIDUAL (MCABMSR) ................. 189 FIGURA 6.21.- RUTA CRÍTICA DE BSR ..................................................................................................... 190 FIGURA 6.22.- RUTA CRÍTICA DE MCABMSR .......................................................................................... 190 FIGURA 6.23.- MUESTRAS INCLUSIVAS Y EXCLUSIVAS Y LLAMADAS ENTRANTES (%) - FUNCIÓN SR (MCABMSR) . 190 FIGURA 6.24.- PSNR (DB) PARA SECUENCIAS SUBMARINAS ........................................................................ 192 FIGURA 6.25.- SSIM (%) PARA SECUENCIAS SUBMARINAS .......................................................................... 192 FIGURA 6.26.- DIFERENCIA DE PSNR (DB) PARA SECUENCIAS SUBMARINAS ................................................... 192 FIGURA 6.27.- DIFERENCIA DE PSNR SSIM (%) PARA SECUENCIAS SUBMARINAS ............................................ 192 FIGURA 6.28.- RESULTADOS PARA SECUENCIA CORAL ................................................................................ 193 FIGURA 6.29.- RESULTADOS PARA SECUENCIA REEF ................................................................................... 194 FIGURA 6.30.- RESULTADOS PARA SECUENCIA PEZ_CORAL ......................................................................... 195 FIGURA 6.31.- RESULTADOS DE TIEMPOS DE CÓMPUTO PARA SECUENCIAS SUBMARINAS ................................... 196 FIGURA 6.32.- RESULTADOS DE FIGURA DE MÉRITO FM_G PARA MCABMSR Y MCSR ................................. 196 FIGURA 6.33.- GRÁFICAS DE TAMAÑO DE VENTANA DE TRABAJO DE SR FRENTE A VALOR DE UMBRAL WSFTHR ... 197 FIGURA 6.34.- RESULTADOS PARA LA SECUENCIA ATLANTIS ........................................................................ 198 FIGURA 6.35.- APLICACIÓN WEB DE VÍDEOS SUBMARINOS GEORREFERENCIADOS ............................................. 199 FIGURA 6.36.- CÁLCULO DE LA VELOCIDAD MEDIA (AVERAGE SPEED) DEL VEHÍCULO ......................................... 200 FIGURA 6.37.- RELACIÓN ENTRE VELOCIDAD MEDIA DE VEHÍCULO Y TAMAÑO DE VENTANA DE TRABAJO DE SR ..... 200 FIGURA 6.38.- RESULTADOS DE EXTRACTO DE TRANSECTO 2N1 (FRAMES 14819-14888) ............................... 201 FIGURA 6.39.- RESULTADOS DE EXTRACTO DE TRANSECTO 2N1 (FRAMES 16319-16358) ............................... 201 FIGURA 6.40.- DETALLE DE SELECCIÓN DE MCABMSR COMO OPCIÓN PREFERIDA FRENTE A BSR....................... 203 FIGURA 6.41.- DETALLE DE MEJORA SIGNIFICATIVA DE MCABMSR FRENTE A FRAME DE LR.............................. 205
ÍNDICE DE FIGURAS viii ANEXOS .............................................................................................................. 211 FIGURA A.1.- SELECCIÓN DE CÁMARAS CON QUE SE HA GRABADO LA SECUENCIA WATER COOLER ....................... 215 FIGURA A.2.- SELECCIÓN DE CÁMARAS CON QUE SE HA GRABADO LA SECUENCIA FUJIDOG ................................. 215 FIGURA A.3.- IMAGEN DE SECUENCIA PEZ_CORAL ..................................................................................... 216 FIGURA A.4.- IMAGEN DE SECUENCIA GRUTA ........................................................................................... 216 FIGURA A.5.- IMAGEN DE SECUENCIA TITANIC .......................................................................................... 216 FIGURA A.6.- IMAGEN DE SECUENCIA CORAL ............................................................................................ 217 FIGURA A.7.- IMAGEN DE SECUENCIA REEF .............................................................................................. 217 FIGURA A.8.- IMAGEN DE SECUENCIA ATLANTIS ........................................................................................ 217 FIGURA A.9.- PENETRACIÓN DE LA LUZ EN AGUA DE MAR, DEPENDIENDO DE LA LONGITUD DE ONDA ................... 219 FIGURA A.10.- IMÁGENES SUBMARINAS CON TONALIDAD AZUL-VERDE (ABSORCIÓN DEL COLOR) ........................ 220 FIGURA A.11.- IMÁGENES SUBMARINAS CON TONALIDAD AZUL (ABSORCIÓN DEL COLOR) .................................. 220 FIGURA A.12.- DISPERSIÓN DE LA LUZ POR UNA PARTÍCULA ......................................................................... 221 FIGURA A.13.- EFECTOS DE DISPERSIÓN DE LA LUZ EN EL MEDIO MARINO ....................................................... 222 FIGURA A.14.- EFECTO DE LA REFRACCIÓN DE LA LUZ SOLAR A CAUSA DE LA SUPERFICIE DEL MAR ........................ 222 FIGURA A.15.- EFECTOS DEL PARPADEO DE LA LUZ EN LA IMAGEN SUBMARINA ................................................ 223 FIGURA A.16.- EJEMPLOS DEL EFECTO DE LA TURBIDEZ EN LA IMAGEN SUBMARINA .......................................... 223 FIGURA A.17.- EJEMPLOS DEL EFECTO DE LA ILUMINACIÓN ARTIFICIAL EN LA IMAGEN SUBMARINA ...................... 224 FIGURA A.18.- IMÁGENES ORIGINALES (ARRIBA) Y RESTAURADAS (ABAJO) [MIA12] ........................................ 224 FIGURA A.19.- IMAGEN ORIGINAL (IZQUIERDA) Y RESTAURADA (DERECHA) [SK05] ......................................... 225 FIGURA A.20.- IMAGEN ORIGINAL (IZQUIERDA) Y RESTAURADA CON 2 MÉTODOS (CENTRO Y DERECHA) [BG12] ... 225 FIGURA A.21.- IMÁGENES ORIGINALES (ARRIBA) Y RESTAURADAS (ABAJO) [TO06] .......................................... 226 FIGURA A.22.- EJEMPLO DE MEJORA DE COLOR ........................................................................................ 227 FIGURA A.23.- IMAGEN ORIGINAL (IZQUIERDA) Y MEJORADA (DERECHA) [YCH+11] ........................................ 227 FIGURA A.24.- IMÁGENES ORIGINALES (A, C) Y MEJORADAS (B, D) [PCC09] .................................................. 227 FIGURA A.25.- CUESTIONARIO DE TEST DE CALIDAD SUBJETIVA Y EJEMPLO DE PREGUNTA PARA SEC. STOCKHOLM . 229 FIGURA A.26.- FRAMES DE TEST, DE IZQDA. A DCHA: FRAME DE LR, FRAME DE BSR Y FRAME DE MCABMSR ..... 230
ix Índice de Tablas 2.- ESTADO DEL ARTE .........…………………................................................................. 9 TABLA 2.1.- RESUMEN DE REFERENCIAS QUE EMPLEAN UN ARRAY MULTI-CÁMARA CON SÚPER-RESOLUCIÓN ....... 36 TABLA 2.2.- COMPARATIVA ENTRE MÉTRICAS OBJETIVAS DE CALIDAD DE IMAGEN ............................................ 41 TABLA 2.3.- COMPARATIVA ENTRE MÉTRICAS DE EVALUACIÓN SUBJETIVAS ACR Y DCR .................................... 43 3.- CONTRIBUCIONES ALGORÍTMICAS .......................................................................... 49 TABLA 3.1.- PÍXELES COMPENSADOS Y VECTORES DE MOVIMIENTO ASOCIADOS ............................................... 53 TABLA 3.2.- NOMENCLATURA ASOCIADA A FILTROS SELECTIVOS DE VENTANA Y MACRO-BLOQUE ...................... 71 TABLA 3.3.- RELACIÓN ENTRE SSIM Y MOS ............................................................................................ 72 TABLA 3.4.- RELACIONES ENTRE MBS DEPENDIENDO DE LAS CÁMARAS Y LOS INSTANTES DE TIEMPO ................... 79 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE .... 85 TABLA 4.1.- EJEMPLO DE LA COMPATIBILIDAD DE TAMAÑOS ........................................................................ 90 TABLA 4.2.- RESOLUCIONES CONSIDERADAS ............................................................................................. 90 TABLA 4.3.- RESUMEN DE RESULTADOS CON WSFSR ................................................................................ 92 TABLA 4.4.- RELACIÓN ENTRE MOVIMIENTO GLOBAL, LOCAL Y VALOR ÓPTIMO DEL UMBRAL DE WSFSR .............. 93 TABLA 4.5.- RESUMEN DE RESULTADOS CON BSFSR .................................................................................. 102 TABLA 4.6.- RELACIÓN ENTRE MOVIMIENTO GLOBAL, LOCAL Y VALOR ÓPTIMO DEL UMBRAL DE BSFSR ................ 102 TABLA 4.5.- MEJORA DE PSNR CON UMBRAL ADAPTATIVO ......................................................................... 107 TABLA 4.8.- RESUMEN DE RESULTADOS CON VBSSR ................................................................................. 110 TABLA 4.9.- RELACIÓN ENTRE MOVIMIENTO GLOBAL, LOCAL Y VALOR ÓPTIMO DE UMBRALES DE VBSSR Y FILTROS 110 TABLA 4.10.- RESULTADOS PROMEDIO PARA LOS 100 PRIMEROS FRAMES DE LA SECUENCIA FOREMAN ................ 118 TABLA 4.11.- TIEMPO DE EJECUCIÓN PROMEDIO (EN SEGUNDOS) PARA APLICAR SR A UN FRAME CON UNA VENTANA DE TRABAJO DE 15 FRAMES (FRAME ACTUAL +/-7) ................................................... 123 5.- RESULTADOS Y ANÁLISIS: ENTORNO MULTI-CÁMARA ................................................ 127 TABLA 5.1.- FRAMES SELECCIONADOS DE CADA SECUENCIA PARA REALIZAR LAS SIMULACIONES ........................... 138 TABLA 5.2.- CONFIGURACIONES DE LOS PARÁMETROS DEL ARRAY MC EN CADA SECUENCIA ............................... 139 TABLA 5.3.- CONFIGURACIÓN ESTABLECIDA EN EL MÉTODO TEMPORAL-ESPACIAL PARA CADA SECUENCIA ............ 139 TABLA 5.4.- VALORES PROMEDIO DE RESULTADOS EN MÉTODO TEMPORAL-ESPACIAL (MODO FULL-FRAME) ........ 141 TABLA 5.5.- VALORES PROMEDIO DE RESULTADOS EN MÉTODO TEMPORAL-ESPACIAL (MODO OVERLAP) ............. 144 TABLA 5.6.- VALORES PROMEDIO DE RESULTADOS EN MÉTODO TEMPORAL-ESPACIAL (MODO OVERLAP+BORDERS) 146 TABLA 5.7.- VALORES PROMEDIO DE LOS BORDES EN EL MÉTODO TEMPORAL-ESPACIAL .................................... 146
CAPÍTULO 1.- INTRODUCCIÓN 2 1.1 PLANTEAMIENTO DEL PROBLEMA En la mayoría de los sistemas electrónicos de captación de imágenes se requieren imágenes de alta resolución (HR, High Resolution) [EHK13]. Las imágenes de alta resolución resultan fundamentales en áreas relacionadas principalmente con dos bloques de aplicación: la mejora de información visual para la interpretación humana, y la ayuda a la representación para sistemas de percepción automática [Mil11]. La resolución de imagen es un término que describe su nivel de detalle, cuanto mayor sea la resolución, más detalles contendrá la imagen. La resolución de una imagen digital puede clasificarse atendiendo a diferentes criterios: resolución de píxel, resolución espacial, resolución espectral, resolución temporal y resolución radiométrica. En este contexto, la presente Tesis Doctoral se centra en mejorar la resolución espacial. Una imagen digital está formada por elementos básicos denominados píxeles. La resolución espacial se refiere a la densidad de píxeles en una imagen y se mide en píxeles por unidad de área. La Figura 1.1 muestra la imagen de test (test target) 1951 USAF, usada para determinar la resolución espacial de sensores y sistemas de imagen. Figura 1.1.- Imagen de test (test target) 1951 USAF Una elevada resolución implica que la densidad de píxel dentro de la imagen es elevada, por lo que una imagen de alta resolución puede ofrecer más detalles que una imagen de baja resolución (LR, Low Resolution). En el pasado, los únicos dispositivos de adquisición de imágenes disponibles eran cámaras analógicas de tipologías vidicón u orticón. Desde los años 70 se usan ampliamente los sensores de imagen CCD (Charge Coupled Device) y CMOS (Complementary Metal Oxide Semiconductor) para capturar imágenes digitales. Aunque estos sensores son adecuados para la mayoría de las aplicaciones de imagen, los niveles actuales de resolución y sus precios asociados no resultan apropiados para sistemas de bajo coste, siendo deseable disponer de niveles de alta resolución a precios tan bajos como sea posible. La demanda de imágenes de alta resolución, ha sido una de las principales motivaciones para encontrar metodologías que incrementen la resolución obtenida usando los dispositivos de adquisición de imagen disponibles actualmente.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 3 La solución directa para incrementar el nivel de resolución podría consistir en reducir el tamaño de píxel en la fabricación del sensor, de forma que el número de píxeles por unidad de área aumente. La desventaja de esta solución es que la cantidad de luz disponible para cada píxel disminuye, lo que conlleva la generación de ruido de disparo o ruido shot que degrada significativamente la calidad de la imagen. Desafortunadamente, el tamaño de píxel no puede reducirse por debajo de cierto nivel (40 μm2 para procesos CMOS de 0.35 μm) para evitar ruido shot. Este nivel ya se ha alcanzado en el proceso de fabricación. Otra solución al problema del aumento del nivel de resolución es incrementar el tamaño del sensor manteniendo el tamaño del píxel. Esta aproximación implica un incremento en la capacitancia del sensor. Sin embargo, es bien sabido que una elevada capacitancia limita la velocidad de transferencia de carga, lo cual puede conllevar problemas en el proceso de formación de la imagen. De forma general, todas las soluciones hardware a este problema están limitadas por los costes de la óptica de alta precisión y los sensores de imagen requeridos [Mil11]. La manera más factible de afrontar este problema es integrar tanto las capacidades hardware como software para obtener el nivel de alta resolución requerido. Hacer uso de un nivel de resolución tan alto como sea posible a nivel hardware, completa parte de esta tarea. El resto se realiza a nivel software. Esta es la tendencia en la mayoría de los dispositivos de captura de imagen actuales. El proceso en el que, a partir de una única imagen, se obtiene otra imagen de mayor resolución, se conoce como interpolación [Ban09]; en este caso, al no proporcionarse información adicional, la calidad de la imagen estará muy limitada y las componentes de alta frecuencia no se podrán recuperar. Por otra parte, el uso de múltiples observaciones de una misma escena, para generar una imagen de mayor resolución se conoce como Súper-Resolución (SR, Super-Resolution). Existen otras técnicas de SR tomando otro tipo de información como punto de partida, si bien la planteada en la presente Tesis Doctoral es una de las más comunes, conociéndose generalmente en la literatura como SR por fusión [Mil11]. Las técnicas de SR por fusión incrementan las componentes de alta frecuencia y eliminan las degradaciones causadas en el proceso de captura de imagen de las cámaras. La idea básica consiste en combinar información no redundante contenida en múltiples frames de LR para generar una imagen de HR. El aporte de información se basa en los desplazamientos subpíxel que se pueden producir entre las imágenes, debido a movimientos incontrolados entre el sistema de imagen y la escena, movimientos de objetos dentro de la escena, o movimientos controlados, como sistemas de imagen por satélite, con una trayectoria y velocidad predeterminados. Entre otras, las técnicas de SR se aplican en áreas como: Vigilancia y seguridad [RRY+13, ZH12, LTB12]: Congelación de la imagen y ampliación de regiones de interés (ROI, Region of Interest) por ejemplo para lectura de placas de matrícula, o mejora de la resolución para reconocimiento automático de un objetivo, como en el caso del reconocimiento facial de un potencial criminal. Imagen submarina [YU14, CY13, CYX+12]: Mejora de resolución en entornos submarinos en secuencias captadas por vehículos tipo ROV (Remotely Operated Vehicle) y en señales acústicas. Detección remota [XZZ14, SKC+13, VCB+10]: A partir de varias imágenes en un área geográfica determinada, se busca la mejora de la resolución de la imagen. Imagen médica [OII+14, ABG+14, AEH+14, VCT+10]: En aplicaciones como tomografía computarizada (CT, Computed Tomography), resonancia magnética (MRI, Magnetic Resonance Imaging) o ultrasonidos, normalmente las imágenes presentan una resolución limitada, que puede mejorarse aplicando técnicas de SR. Conversión entre estándares de vídeo [Goh13, KSS+12, GSH+11], por ejemplo de señales de vídeo NTSC (National Television System Committee) a HDTV (High Definition TeleVision) .
CAPÍTULO 1.- INTRODUCCIÓN 4 1.2 MOTIVACIÓN DE LA TESIS DOCTORAL Las técnicas de SR comenzaron a plantearse hace ya 30 años partiendo del pionero trabajo de Tsai y Huang [TH84], en 1984. En este trabajo inicial se mostró de forma explícita que al menos en teoría era posible mejorar la resolución registrando y fusionando múltiples imágenes. En los años siguientes la potencia de cómputo se incrementó en varios órdenes de magnitud, las cámaras digitales fueron mejorando y los displays digitales presentaban cada vez más detalles. De la mano de este progreso, los requerimientos de una imagen de alta calidad se intensificaron de forma natural, quedando estos fuera del alcance de la tecnología del Estado del Arte. De hecho, en los últimos años, la calidad visual de las imágenes y vídeo capturados no ha estado alineada con estas expectativas. La integración de un número de píxeles cada vez mayor en espacios cada vez menores, usando elementos ópticos menos sofisticados, ha hecho que la calidad visual del contenido grabado disminuya. Así, a pesar de lo que se podría ver como una batalla perdida frente a sensores mejores y más baratos, las técnicas de SR se han convertido en un campo de aplicación de gran relevancia. Puesto que prácticamente todo el contenido visual grabado con cámaras digitales se post-procesa, resulta lógico plantear que la SR se terminará por asentar como la killer application en lo que a procesamiento de imagen se refiere [Mil11]. Aunque se han propuesto diversas aproximaciones diferentes desde que se introdujo el concepto de SR, la mayoría de ellas opera adecuadamente en imágenes de test y no tanto en situaciones reales. Para determinar de forma práctica comparativas adecuadas entre secuencias de vídeo o imágenes, se ha determinado una serie de métricas objetivas y subjetivas; entre éstas se utilizan en la presente Tesis Doctoral el PSNR (Peak Signal-to-Noise Ratio) y el índice SSIM (Structural SIMilarity), tal y como se justificará posteriormente. Por otra parte, a la hora de concebir un sistema de SR práctico, existen muchos retos para que éste pueda aplicarse en un amplio rango de aplicaciones. Los desafíos clave en el desarrollo y aplicación de las técnicas de SR han propiciado las aportaciones de la presente Tesis Doctoral (centradas en técnicas de SR por fusión), que se resumen en: Eficiencia en el cómputo: Las técnicas de SR normalmente requieren de una computación intensiva, dado el gran número de operaciones a realizar al operar frecuentemente manipulaciones de matrices. Las aplicaciones reales siempre demandan eficiencia en la reconstrucción por SR para resultar de utilidad práctica. Por ejemplo, en escenarios de vigilancia de vídeo es fundamental que la reconstrucción por SR se produzca en el menor tiempo posible. Los algoritmos de SR requieren además un registro preciso de la imagen, que es intensivo en cómputo. La presente Tesis Doctoral estudia cómo disminuir el cómputo en algoritmos de SR por fusión, partiendo de un algoritmo base BSR (Baseline Super-Resolution) y considerando un pre-procesamiento en la información de LR de entrada, determinando los frames más adecuados a considerar en el proceso de SR (Filtro Selectivo de Ventana), haciendo uso de la métrica objetiva de similitud estructural SSIM. Registro de la imagen: Este es un aspecto crítico para el éxito de la reconstrucción de SR de múltiples frames, donde se fusionan muestreos espaciales complementarios de la imagen de HR. El registro de la imagen es un problema fundamental en su procesamiento, siendo incluso más difícil en el caso concreto de las técnicas de SR, donde las observaciones son imágenes de LR, con importantes artefactos debidos al aliasing. Las prestaciones de los algoritmos estándar para registro de imagen se reducen a medida que la resolución de las observaciones disminuye, dando lugar a un mayor número de errores de registro. Los artefactos, causados por estos errores de
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 5 registro, son visualmente más molestos que el efecto de desenfoque resultante de la interpolación de una imagen. En la presente Tesis Doctoral se demuestra cómo el uso de una estructura basada en múltiples cámaras (array de cámaras o sistema MultiCámara, MC), puede contribuir de forma positiva en el problema planteado por la SR en relación con el registro de la imagen, ya que al disponer de múltiples observaciones de una misma secuencia, y considerando que el desplazamiento presente entre los frames capturados sea subpíxel, el resultado de la imagen de HR procesada mejorará las prestaciones, frente a una situación en la que se disponga de una única cámara. Robustez: Las técnicas tradicionales de SR son vulnerables a la presencia de anomalías debidas a errores de movimiento, modelos de enfoque imprecisos, objetos en movimiento, desenfoque por movimiento, etc. Estos modelos de error imprecisos no se pueden tratar como ruido gaussiano. La robustez del proceso de SR es de interés porque los parámetros de degradación de la imagen no se pueden estimar de forma precisa, y la sensibilidad a las anomalías puede resultar en artefactos visualmente molestos, intolerables en la mayoría de las aplicaciones, por ejemplo en conversión entre estándares de vídeo. Sin embargo, se considera que no se ha dedicado suficiente trabajo a un aspecto tan importante como éste. En esta Tesis Doctoral se introduce un filtro orientado a cada uno de los Macro-Bloques (MB) en los que se divide la secuencia de entrada para realizar el proceso de SR (Filtro Selectivo de MB). Se mostrará que un estudio particular para cada uno de los MBs proporciona una mayor robustez al algoritmo BSR usado como punto de partida, ya que al habilitar un tamaño variable de MB y determinar el grado de movimiento local de cada uno de ellos frente a una aproximación basada únicamente en movimiento global, la calidad global se incrementa. Además, se plantea un caso real orientado a secuencias de vídeo submarino grabadas por vehículos ROV, presentando cómo el cálculo de la velocidad media del vehículo, partiendo de información de georreferenciación, proporciona información clave a la hora de determinar el número de frames a seleccionar en el proceso de SR, lo que aporta un mayor grado de robustez al algoritmo. Límites en las prestaciones: La reconstrucción por SR ha sido una línea de investigación activa desde su planteamiento inicial, sin embargo, no se ha desarrollado mucho trabajo orientado hacia la comprensión fundamental de los límites en las prestaciones de los algoritmos de reconstrucción. La comprensión de este límite de prestaciones es importante. Por ejemplo, esto puede dar luz al diseño de cámaras de SR, ayudando a analizar factores tales como modelos de error, niveles de zoom y número de frames a combinar. Si bien es difícil perfilar conclusiones consistentes para diferentes técnicas de SR en términos de evaluación de sus prestaciones, es claro que se necesitan bancos de pruebas y conjuntos de secuencias reales y realistas que proporcionen una comparación justa y una comprensión adecuada de los algoritmos desarrollados. En el caso particular de la presente Tesis Doctoral, se han diseñado bancos de prueba específicos, ajustados para proporcionar información fidedigna de los resultados obtenidos. Al mismo tiempo, se han desarrollado sistemas que permiten determinar los máximos teóricos de calidad objetiva que se podrían alcanzar con los algoritmos propuestos.
CAPÍTULO 1.- INTRODUCCIÓN 6 1.3 OBJETIVOS DE LA TESIS DOCTORAL La finalidad de esta Tesis Doctoral consiste en aportar soluciones algorítmicas de SR por fusión para mejorar la calidad y reducir el tiempo de cómputo, partiendo de un algoritmo de referencia (BSR, Baseline Super-Resolution), desarrollado en el seno de la división de Diseño de Sistemas Integrados (DSI) del Instituto Universitario de Microelectrónica Aplicada (IUMA) de la Universidad de Las Palmas de Gran Canaria (ULPGC). Para conseguir este propósito, esta Tesis Doctoral se centra en alcanzar los siguientes objetivos: Estudio del Estado del Arte de SR y en especial, de las posibles soluciones a considerar con respecto a los principales retos que plantea la SR. En este caso, resulta vital determinar las aproximaciones seguidas por otros autores con el fin de desarrollar una estrategia de trabajo adecuada. Determinación de las líneas de investigación más adecuadas, partiendo del estudio del Estado del Arte realizado, centrando el interés en explotar la información espacial y temporal integrada en secuencias de vídeo, tomadas en sistemas que integren múltiples cámaras. En este contexto, los desafíos clave en el desarrollo y aplicación de las técnicas de SR enunciados en la sección anterior, influyen claramente en la toma decisiones. Así, será fundamental disponer de la información adecuada, para optimizar la calidad subjetiva y objetiva obtenida a partir de los algoritmos desarrollados, estudiando cómo mejorar estos aspectos, desde el punto de vista del registro de la imagen y buscando además la eficiencia en el cómputo. Creación de un entorno de análisis que permita investigar en profundidad los procesos de los algoritmos estudiados, dando lugar a que se puedan vislumbrar conclusiones adecuadas a partir de los resultados obtenidos. Este aspecto resulta además básico para ser capaces de comparar la situación previa frente a la propuesta y poder así discernir los límites en las prestaciones del proceso de Súper-Resolución. Validación del correcto funcionamiento de las contribuciones propuestas en un entorno de aplicación específico para demostrar su robustez. En este caso se ha tomado como punto de partida, el entorno submarino, ya que como se comentó en la introducción, es un campo que se encuentra actualmente en investigación para la mejora de resolución en entornos submarinos en secuencias captadas por vehículos tipo ROV, así como por otros tipos de vídeos submarinos [YU14, CY13, CYX+12]. Con este objetivo se presentarán los principales aspectos a considerar en este entorno y cómo afectan a los parámetros de los algoritmos de SR.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 7 1.4 ORGANIZACIÓN DE LA TESIS DOCTORAL El trabajo desarrollado en esta Tesis Doctoral se ha estructurado en siete capítulos, de los cuales el primero de ellos lo constituye la presente introducción. El contenido del resto de los capítulos se describe a continuación: Capítulo 2: Estado del Arte Este capítulo introduce el Estado del Arte sobre las técnicas de Súper-Resolución, plantea la relación de la Súper-Resolución con los sistemas Multi-Cámara, analiza las métricas de calidad utilizadas para determinar la aportación de los algoritmos estudiados, y establece las principales limitaciones del proceso de Súper-Resolución, así como las contribuciones aportadas en la presente Tesis Doctoral. Capítulo 3: Contribuciones algorítmicas Una vez presentados los conceptos necesarios para comprender el ámbito de aplicación de la presente Tesis Doctoral, en este capítulo se introducen las aportaciones algorítmicas desarrolladas. La exposición del capítulo se desarrolla de forma evolutiva, es decir, de cómo a partir de la situación inicial se pasa a desarrollar nuevos algoritmos con el objetivo de mejorar la calidad de la imagen, disminuir el tiempo de cómputo y en definitiva construir soluciones eficientes. Capítulo 4: Resultados y análisis: filtros selectivos y topología de Macro-Bloques adaptable En este capítulo, se presenta el entorno de trabajo utilizado para validar las aportaciones relacionadas con la primera contribución de esta Tesis Doctoral: los filtros selectivos y la topología de Macro-Bloques adaptable. Este entorno se utiliza para analizar los resultados más significativos. Se introducen y se analizan entonces los resultados de simulación, desglosando cada contribución particular. Capítulo 5: Resultados y análisis: Entorno Multi-Cámara En este capítulo, se presentan los resultados y el análisis correspondientes a la segunda contribución de la presente Tesis Doctoral: entorno Multi-Cámara, incluyendo los diferentes bancos de pruebas diseñados y los principales resultados alcanzados. Capítulo 6: Análisis del sistema global Una vez presentados los resultados de cada una de las contribuciones de la Tesis Doctoral por separado, se integran ambas en este capítulo con el objetivo de evaluar el funcionamiento global del sistema propuesto.
CAPÍTULO 1.- INTRODUCCIÓN 8 Capítulo 7: Conclusiones y Líneas Futuras Se presentan en este último capítulo las conclusiones extraídas a partir del trabajo desarrollado en esta Tesis Doctoral, así como las líneas de investigación a considerar. Anexos Se incluyen cuatro anexos. El primero de ellos se centra en introducir las diferentes secuencias de vídeo usadas como referencia, el segundo presenta las características de las secuencias submarinas y de las técnicas de mejora de imagen asociadas, el tercero introduce un cuestionario utilizado para la medida de la calidad subjetiva, y finalmente el cuarto muestra el conjunto de publicaciones que se han elaborado en el transcurso del desarrollo de la Tesis Doctoral [C1-C12, R1-R7].
9 Capítulo 2 ESTADO DEL ARTE Índice del capítulo Página 2.1.- Introducción ……………………………..…...…………………………………………………... 10 2.2.- Estado del Arte en técnicas de Súper-Resolución ……………………………...... 11 2.3.- Estado del Arte de sistemas Multi-Cámara ………..……………………………...... 22 2.4.- Métricas sobre calidad de imagen ........................................................... 37 2.5.- Desafíos de la Súper-Resolución y contribuciones …………......…………….... 44 2.6.- Conclusiones ……………………………………………………………………………………….. 48 Cada generación piensa que puede ser más inteligente que la anterior Aldous Huxley, novelista, ensayista y poeta inglés (1894 – 1963)
CAPÍTULO 2.- ESTADO DEL ARTE 10 2.1 INTRODUCCIÓN La aproximación de Súper-Resolución (SR) sobre la que se centran las aportaciones de la presente Tesis Doctoral se basa en la construcción de imágenes de HR a partir de varias observaciones de LR (técnicas de SR por fusión). Cada frame de LR es una versión diezmada y con aliasing de la escena original. La SR en este caso es posible sólo si existen movimientos subpíxel entre los frames de LR. En este capítulo se presentará, tanto esta aproximación, como un Estado del Arte general de las técnicas de Súper-Resolución introducidas a lo largo de los últimos años. La Figura 2.1 muestra un diagrama simplificado en el que se describe la idea básica de la reconstrucción del proceso de SR usado en la presente Tesis Doctoral. En el proceso de captura de la imagen, la cámara obtiene varios frames de LR, lo que equivale a aplicar un submuestreo partiendo de la secuencia HR real con desplazamientos subpíxel entre una y otra imagen. El proceso de SR trata de invertir este proceso, alineando las observaciones con una precisión subpíxel y combinándolas en una rejilla de imagen de HR, superando así las limitaciones del sensor de la cámara. Figura 2.1.- Proceso de SR: reconstrucción de imagen HR a partir de varias imágenes en LR El presente capítulo introduce un Estado del Arte de las técnicas de SR, plantea la relación de la SR con los sistemas Multi-Cámara (MC), analiza las métricas de calidad utilizadas para determinar las prestaciones de los algoritmos estudiados, y establece las principales limitaciones de la SR.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 11 2.2 ESTADO DEL ARTE EN TÉCNICAS DE SÚPER-RESOLUCIÓN 2.2.1 Introducción En cuanto a técnicas de procesamiento de imagen se refiere, la SR ha sido uno de los campos más activos desde el trascendental trabajo de Tsai y Huang [TH84] hace ya 30 años, en 1984. A partir de entonces se han propuesto diversas técnicas, presentando aproximaciones desde el dominio frecuencial al dominio espacial, y desde la perspectiva del procesamiento de la señal hasta la perspectiva del aprendizaje automático. Los primeros trabajos en SR siguieron principalmente la teoría de Tsai y Huang, explorando las propiedades de desplazamiento y aliasing de la Transformada de Fourier. Sin embargo, estas aproximaciones en el dominio de la frecuencia estaban muy restringidas en el modelo de observación que podían adoptar, encontrándose que los problemas reales eran mucho más complicados con respecto al modelo inicialmente propuesto. Hoy en día se aborda el problema generalmente en el dominio espacial, debido a su flexibilidad al modelar todos los tipos de degradaciones de la imagen [BS98, PPK03, EFR+04, BK02]. En esta sección se tratan las diferentes técnicas de Súper-Resolución, comenzando por el modelo de observación. 2.2.2 Modelo de observación El sistema digital de adquisición de la imagen no es perfecto debido fundamentalmente a limitaciones hardware, adquiriendo imágenes con varios tipos de degradación. Así, el tamaño de apertura finito causa el efecto de desenfoque óptico (optical blur), modelado por la función PSF (Point Spread Function). El tiempo de apertura finito resulta en un desenfoque por movimiento (motion blur), el cual es muy común en secuencias de vídeo. El tamaño finito del sensor provoca desenfoque debido al sensor (sensor blur). La limitada densidad del sensor lleva a efectos de aliasing, constriñendo la resolución espacial de la imagen obtenida. Estas degradaciones se modelan parcial o completamente en las diferentes técnicas de SR. La Figura 2.2 muestra un modelo de observación típico que relaciona la imagen de HR con los frames de vídeo de LR [PPK03, EFR+04]. La entrada al sistema de imagen se basa en escenas naturales continuas, aproximadas como señales limitadas en banda. Estas señales pueden estar contaminadas por turbulencia atmosférica antes de alcanzar el sistema de imagen. Al muestrear la señal cumpliendo el criterio de Nyquist, se genera una imagen digital de alta resolución (Figura 2.2.a). En el esquema planteado normalmente existe algún tipo de movimiento entre la cámara y la escena a capturar. Las entradas a la cámara se considera que representan múltiples frames de la escena, con movimiento local o global entre ellos, tal y como se presenta en la Figura 2.2.b. A través de la cámara, estos frames de alta resolución incurrirán en diferentes tipos de desenfoque. Estas imágenes desenfocadas (Figura 2.2.c) son entonces submuestreadas en los sensores de imagen, por ejemplo detectores CCD (Charged Coupled Device), o CMOS (Complementary Metal Oxide Semiconductor) en píxeles, mediante la integral de la imagen que presenta el área de cada sensor. A las imágenes submuestreadas les afecta además el ruido del sensor y el ruido del filtro de color. Por tanto, los frames capturados por el sistema de imagen de baja resolución se corresponden con versiones desenfocadas, diezmadas y ruidosas de la secuencia original.
CAPÍTULO 2.- ESTADO DEL ARTE 18 𝑤𝑠=arg min𝑤𝑠||𝒚𝑘𝑡−∑𝑤𝑠𝑦𝑠𝑦𝑠∈𝑁𝑡||2 , sujeto a ∑𝑤𝑠=1 𝑦𝑠∈𝑁𝑡 (2.12) Los pesos de reconstrucción se aplican entonces para generar el bloque de HR correspondiente 𝑥𝑘𝑡=∑𝑤𝑠𝑥𝑠𝑦𝑠∈𝑁𝑡. Para tratar el problema de compatibilidad entre bloques adyacentes, se realiza un promediado simple entre las regiones solapadas. El algoritmo funciona incluso con bloques más pequeños [YFW01]. Sin embargo, fijar k para cada bloque de LR puede resultar en un sobreajuste o en un subajuste. Yang et al. [YWH+08] propusieron otro método de SR de frame simple basado en patrones. El método deriva de la teoría de compressive sensing, que asegura que las relaciones lineales entre señales de HR pueden recuperarse de forma precisa a partir de sus proyecciones de baja resolución como propusieron Candes [Can06] y Donoho [Don06a]. El algoritmo modela los conjuntos de entrenamiento como dos diccionarios: Dh = [x1, x2, …, xn] y Dl = [y1, y2, …, yn]. Dado un bloque de imagen de test de LR 𝒚𝑘𝑡, la aproximación busca básicamente los apoyos mediante una minimización l1 [Don06b]. 𝑤 =arg min𝑤||𝑤||𝑙1, sujeto a ||𝑦𝑡−𝐷𝑙𝑤||2≤𝜎2, (2.13) donde 𝜎 es la desviación estándar. La ecuación (2.13) puede rescribirse con un multiplicador de Lagrange como un problema de optimización sin restricciones conocido como Lasso en la literatura de la estadística tal y como introdujo Tibshirani en [Tib96]. El correspondiente bloque de HR se recupera como 𝒙𝑘𝑡=𝐷ℎ𝑤. Comparado con el método de inclusión de vecinos con k vecinos, el método de Yang elige adaptativamente los pocos apoyos necesarios para la reconstrucción, evitando de esta manera el sobreajuste. Además, la formulación por minimización l1 es más robusta al ruido que los métodos previos basados en patrones. En una versión posterior de Huang et al. [HYW+10], el caso previo se extendió usando un diccionario de parejas en lugar de bloques simples, permitiendo al algoritmo ser mucho más eficiente. Una crítica a los mencionados métodos con patrones directos es que operar en los patrones locales no garantiza la optimización global de la estimación. Otro tipo de aproximación basada en patrones busca realizar una estimación MAP con información local a priori. El trabajo pionero de Baker y Kanade [BK02] formuló una regularización explícita que demanda proximidad entre los derivados espaciales de la imagen desconocida y los ejemplos encontrados. Los patrones se forman haciendo uso de una pirámide de conjuntos de características en lugar de usar la información cruda directamente. Pickup et al. [PRZ03] propusieron un método similar para la SR de textos. Datsenko y Elad [DE07] presentaron una estimación global MAP donde la regularización basada en patrones se realiza mediante un promedio de pesos binarios en lugar de usar una aproximación al vecino más cercano, evitando valores extremos debidos al ruido. Otra aproximación de SR basada en patrones digna de destacar es la propuesta por Protter et al. [PET+09], generalizada a partir de un algoritmo de eliminación de ruido introducido por Buades et al. [BCM05]. En lugar de muestrear ejemplos a partir de otras imágenes de entrenamiento, el algoritmo explora autosimilitudes dentro de la imagen (o secuencia) y extrae los patrones de ejemplo de la imagen objetivo (o secuencia). El uso de patrones puede ser mucho más efectivo cuando se trata con conjuntos reducidos de imágenes, como ocurre con imágenes textuales o faciales. En los últimos años ha surgido un grupo de algoritmos que toman como objetivo la imagen facial debido a su importancia en escenarios de videovigilancia. La SR facial es conocida habitualmente como “alucinación facial”, tomando como referencia el trabajo inicial de Baker y Kanade [BK02]. Capel y Zissersman [CZ01] propusieron un algoritmo donde los modelos del subespacio PCA (Principal Component Analysis) introducido por Jolliffe [Jol02] se usan para aprender partes de
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 19 las caras. Liu et al. [LSF07, LSZ01] propusieron una aproximación en dos pasos para la SR facial, donde el primer paso usa el Eigenface, introducido por Turk y Pentland en [TP91], para generar una cara de media resolución, seguida por una aproximación no paramétrica basada en patrones en el segundo paso [FJP02]. Yang et al. [YTM+08] propusieron una aproximación similar en dos pasos. En lugar de usar el subespacio PCA, [YTM+08] usa localmente una Factorización de Matriz No-negativa (NMF, Nonnegative Matrix Factorization) propuesta por Lee y Seung [LS99] para modelar las caras y el modelo basado en patrones del segundo paso se adopta de [YWH+08]. Jia y Gong [JG05, JG08] propusieron la aproximación de tensor para tratar con más variaciones faciales, tal como iluminaciones y expresiones. Aunque estos algoritmos de alucinación facial trabajan sorprendentemente bien, sólo se aplican en caras frontales, y únicamente algunos trabajos se han basado en evaluar la alucinación facial para reconocimiento, como los propuestos por Gunturk et al. [GBA+03] o Hennings-Yeomans et al. [HBK08]. La regularización basada en ejemplos resulta efectiva en la SR cuando existen observaciones insuficientes. Existen aún varias cuestiones que han de responderse con respecto a este tipo de aproximaciones: Primero, cómo elegir el tamaño de bloque óptimo dada una imagen objetivo. Quizás se requiere un tratamiento de multi-resolución. En segundo lugar, cómo elegir la base de datos. Imágenes diferentes presentan estadísticas distintas, y por lo tanto necesitan bases de datos diferentes. Se puede obtener una solución mediante un método eficiente de adaptación a partir de un diccionario objetivo. En tercer lugar, cómo usar la información a priori basada en ejemplos de una forma más eficiente. El aspecto relativo a la computación puede presentar una dificultad en aplicaciones prácticas. Elad y Datsenko [ED07] realizan un análisis detallado de regularización basada en ejemplos para problemas inversos. 2.2.7 Projection Onto Convex Sets (POCS) Además de las aproximaciones de optimización derivadas de la visión estocástica discutida en la sección anterior, otro conjunto de métodos se basan en un algoritmo bien conocido como es POCS (Projection Onto Convex Sets) que parten normalmente de la versión utilizada por Youla y Webb [YW82]. Los métodos POCS aproximan el problema de SR formulando múltiples conjuntos convexos que contienen la imagen deseada como un punto dentro de los conjuntos. La definición de los conjuntos convexos es flexible y puede incorporar diferentes tipos de restricciones o información a priori, incluyendo restricciones no lineales y no paramétricas. Como ejemplo, se introducen varios conjuntos convexos usados de forma habitual en los métodos POCS. La consistencia de la información o las restricciones de la reconstrucción pueden modelarse como K conjuntos convexos: 𝐶𝑘={𝑿|‖𝐷𝑘𝐻𝑘𝐹𝑘𝑿−𝒀𝑘‖𝟐≤𝜎2,1≤𝑘≤𝐾} , (2.14) donde 𝜎 es la desviación estándar. Las restricciones de uniformidad pueden definirse como: 𝐶𝛤={𝑿|‖𝛤𝑿‖𝑝<𝜎2}, (2.15) donde p = 1, 2, …, ∞ hace referencia a diferentes normas. Las restricciones de amplitud también se pueden modelar de acuerdo con la expresión (2.16). 𝐶𝐴={𝑿|𝐴1≤𝑿[𝑚,𝑛]≤𝐴2} (2.16)
CAPÍTULO 2.- ESTADO DEL ARTE 20 Con un grupo de M conjuntos convexos, la solución deseada se basa en la intersección de estos conjuntos 𝑿∈𝐶𝑠=∩𝑖=1 𝑀𝐶𝑖. POCS sugiere el siguiente algoritmo recursivo para encontrar un punto dentro del conjunto de la intersección a partir de la siguiente aproximación: 𝑿𝑘+1=𝑃𝑀𝑃𝑀−1…𝑃2𝑃1𝑿𝑘 , (2.17) donde X0 es una predicción inicial, y Pi es el operador de proyección que proyecta un punto dentro de un conjunto convexo cerrado Ci. Las primeras técnicas POCS para reconstrucción por SR fueron propuestas por Stark y Oskoui [SO89]. Patti et al. [PST94, PST97a, PST97b] propusieron extensiones para tratar con espacios variantes PSF, desenfoque por movimiento, desenfoque por sensor, y efectos de muestreado por aliasing. Muchos trabajos de SR sólo consideran un tamaño de apertura no nulo (el desenfoque de la lente, PSF), pero no un tiempo de apertura finito (desenfoque de movimiento) lo cual es bastante común en vídeos reales de LR. [PST97b] es el primer trabajo que considera desenfoque por movimiento en la reconstrucción por SR en secuencias de vídeo basadas en la técnica POCS. Como el desenfoque causado por un tiempo de apertura finito será en general dependiente del espacio, y en ocasiones del tiempo, no puede independizarse de forma general del problema de la restauración y realizarse como un paso de postprocesamiento independiente. La técnica POCS puede tratar convenientemente tales problemas. Extendiendo este método, Eren et al. [EST97] propusieron una aproximación basada en POCS para una SR robusta basada en objetos. El método propuesto emplea un mapa de validación para deshabilitar proyecciones basadas en observaciones con estimación de movimiento imprecisa, y un mapa de segmentación para procesamiento basado en objetos. Elad y Feuer [EF97] analizaron y compararon los métodos ML, MAP y POCS para SR y propusieron una aproximación híbrida. Patti y Altunbasak [PA01] extendieron su trabajo inicial en el modelo de observación de la imagen para permitir una interpolación de alto orden y modificar los conjuntos de restricciones para permitir artefactos de borde. La ventaja de POCS recae en su simplicidad a la hora de incorporar cualquier tipo de restricción o información a priori que pueda presentarse como imposible para estas aproximaciones estocásticas. Sin embargo, POCS es notorio por su elevado nivel de cómputo y su baja convergencia. La solución no es única, dependiendo de la predicción inicial. Los métodos POCS también asumen información a priori en los parámetros de movimiento y en los desenfoques del sistema. Estos métodos no pueden estimar los parámetros de registro y la imagen de HR de forma simultánea, como ocurría en las aproximaciones estocásticas. La aproximación híbrida que combina una visión estocástica y la filosofía POCS sugiere una forma prometedora de proseguir. 2.2.8 Topología de Macro-Bloques adaptable Una de las innovaciones introducidas en la presente Tesis Doctoral se basa en la selección de los Macro-Bloques (MB) más adecuados a utilizar en el proceso de SR. El paso previo a la selección de los MBs se sostiene en una disposición no uniforme de los MBs, esto es lo que se conoce como “topología de Macro-Bloques adaptable”, siendo éste un campo estudiado previamente en la literatura. Su et al. [STW+12] dividieron la imagen de salida de HR en bloques de tamaño adaptativo, seleccionando diferentes algoritmos de SR a partir del tamaño de los bloques y aplicando un proceso de “deblocking” para reducir artefactos. Este trabajo es una extensión de [STW+08] donde la imagen de salida de HR se dividía en MacroBloques de tamaño variable a partir de la textura local y del error de compensación de movimiento para eliminar la influencia de la imprecisión del flujo óptico (optical flow).
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 21 La clave del trabajo publicado en [STW+12] está en la forma en la que se afronta el problema del error de registro. Existen razones para dividir la imagen de salida de HR en MBs de tamaño adaptable, en lugar de en regiones de formas arbitrarias, como hacen la mayoría de algoritmos de SR basados en regiones. En primer lugar, un análisis de bloques del algoritmo con una estrategia coarse-to-fine resulta computacionalmente más eficiente que un algoritmo de segmentación de regiones de píxeles. En segundo lugar, el ruido espacial es más sencillo de eliminar en áreas pequeñas o píxeles que no se adaptan bien al proceso de estimación de movimiento. Además, la SR basada en MBs presenta una facilidad natural en el procesamiento de secuencias de vídeo comprimido, ya que los algoritmos de compresión de vídeo dominantes están basados en MBs de tamaño fijo o MBs de tamaño adaptable [MWS06]. En la propuesta de [STW+12] la imagen de HR se divide en bloques rectangulares p x q del mismo tamaño minit como el conjunto de división de bloques ϐ = {bi|i = 1, …, p x q}. Entonces, las características de cada bloque bi se analizan para refinar el conjunto de división de bloques y etiquetar el patrón de bloques. Se usa entonces una matriz para examinar la continuidad alrededor de un píxel, donde la estructura de la matriz para un píxel simple I(x, y) en la imagen I se define como se presenta en la ecuación (2.18). 𝑆(𝑥,𝑦)=∇𝐼(𝑥,𝑦)·∇𝐼(𝑥,𝑦)𝑇 (2.18) De esta forma, en la ecuación (2.19) se define la estructura de la matriz del bloque bi. 𝑆𝑖=1 𝑛𝑖∑ 𝑆(𝑥,𝑦)= (𝑥,𝑦)∈𝑏𝑖1 𝑛𝑖∑ ∇𝐻(𝑥,𝑦)·∇𝐻(𝑥,𝑦)𝑇, (𝑥,𝑦)∈𝑏𝑖 (2.19) donde ni representa el número de píxeles del bloque bi. En la imagen de HR original, H es desconocido; usándose por tanto la predicción 𝐻 de la H original en lugar de ésta. 𝐻 se puede generar interpolando directamente la entrada de LR de la imagen, pero esto hace que la ecuación (2.19) sea imprecisa. Esta es una de las razones para usar MBs de tamaño adaptable, lo cual reduce el ruido espacial promediando la estructura de la matriz para cada bloque. Por otra parte, Anagün y Seke [AS12] implementaron un algoritmo de reconstrucción de tamaño de bloque variable con rotación en el registro de la imagen, consistente en tres pasos: Estimación de movimiento: Se aplica un proceso de estimación de movimiento de tamaño de MB variable con rotación. Se presenta un algoritmo que selecciona MBs de tamaño 32x32, 16x16 u 8x8 píxeles para la estimación de movimiento. Esto reduce la complejidad computacional y proporciona una calidad visual similar o mejor con respecto a un tamaño de MB fijo. Tras determinar el tamaño de MB adecuado, se busca el MB en el frame en evaluación mediante una búsqueda angular (que considera rotación del MB). Registro: El método registra las imágenes localmente (basándose en los MBs). Se aplica entonces un registro global para obtener la imagen de HR. El registro se realiza con parámetros de movimiento subpíxel, que se obtienen a partir de la descripción de registro de imágenes de Irani y Peleg [IP91]. Interpolación: Finalmente, a partir del conjunto de imágenes de HR generadas, se crea la imagen de salida de HR haciendo uso de la interpolación.
CAPÍTULO 2.- ESTADO DEL ARTE 22 2.3 ESTADO DEL ARTE DE SISTEMAS MULTI-CÁMARA 2.3.1 Introducción En esta sección, se realiza una revisión del Estado del Arte de sistemas Multi-Cámara (MC), que es una de las líneas de desarrollo de la presente Tesis Doctoral. Se presentarán diferentes propuestas, así como las principales investigaciones que se están llevando a cabo en este ámbito. Posteriormente, se procederá a analizar aquellas propuestas en las que se usan sistemas MC en combinación con algoritmos de SR. Por último, se expondrán una serie de conclusiones que surgen como resultado de las diferentes fuentes analizadas en el Estado del Arte. Un sistema o array MC está formado por un conjunto de cámaras que se agrupan con un propósito común. Las cámaras se pueden agrupar y posicionar, de forma que capten diferentes ángulos de un mismo objeto, permitiendo mediante un post-procesamiento de esas imágenes obtener un modelo 3D del objeto. Otro propósito puede ser conseguir una secuencia de mejor calidad o mayor resolución a partir de las imágenes capturadas por el array MC, como es el caso de los algoritmos de SR. Existen diversos tipos de sistemas o arrays MC, los cuales presentan una amplia variedad de aplicaciones, que van desde la mejora de la calidad de las imágenes, generalmente en términos de resolución, a videovigilancia, estabilización de vídeo, etc. En general, la distribución de las cámaras en el array MC está íntimamente ligada con la aplicación a la que este sistema esté destinado. Como es previsible, estos sistemas requieren de anchos de banda de transmisión elevados, lo que depende directamente del número de cámaras y de la resolución de las imágenes capturadas, así como la tasa de frame establecida en la grabación. Por tanto, dentro de las propuestas estudiadas se usan diferentes estándares de transmisión en función del número de cámaras de las que dispone el array MC, así como de si el sistema opera en tiempo real o no. Los estándares de transmisión utilizados para la implementación de arrays MC se basan en diferentes estándares de comunicación, usando puertos GPIO (General Purpose Input-Output), Ethernet, Bluetooth, USB (Universal Serial Bus) 2.0 y USB 3.0. Por otra parte, también existen sistemas a medida, los cuales surgen como solución a los elevados requisitos de ancho de banda. Estos sistemas se encargan de procesar, a partir de la compresión de las imágenes a transmitir o el filtro de aquellas partes de la imagen innecesarias para la aplicación, con el fin de reducir el ancho de banda. 2.3.2 Propuestas de sistemas Multi-Cámara Generación de modelos tridimensionales de objetos 2.3.2.1 Los sistemas MC se han utilizado para obtener modelos 3D digitalizados de objetos. Así, Weinmann et al. [WSR+11] proponen el diseño de un array MC fijo en forma de semiesfera, representado en la Figura 2.5, y cuyas condiciones de luz se prepararon para este tipo de procesos, de forma que tanto la disposición de las cámaras como las condiciones de iluminación favorecieran la captura de la información 3D del objeto.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 23 Figura 2.5.- Array MC con geometría semiesférica Aunque el número de cámaras del array es fijo, dependiendo de la complejidad de la figura a modelar se emplea un subconjunto de cámaras, estableciéndose de este modo un punto de equilibrio entre el coste computacional y la resolución del objeto 3D alcanzada con el sistema. A través de cada cámara se obtiene un mallado de la figura desde la posición en la que se encuentra, que se combina con uno o varios mallados adyacentes, creando con esta combinación un mallado de mayor resolución, tal y como se muestra en la Figura 2.6.a, y por tanto obteniendo una mejor calidad del modelo 3D final. En la Figura 2.6.b se presenta un ejemplo de los resultados obtenidos por esta propuesta, haciendo uso de 150 cámaras del array MC. a) b) Figura 2.6.- Propuesta de Weinmann et al.[WSR+11] a) Mallado de HR, b) Resultados obtenidos Otro ejemplo de uso de un array MC en modelado 3D es el aportado por Zaharescu et al. [ZCI+08], donde el array MC empleado está formado por un conjunto de cámaras situadas alrededor del objeto a modelar, tal y como se muestra en la Figura 2.7.a y en la Figura 2.7.c, las cuales, a la hora de realizar el procesamiento, se agrupan en clusters de cámaras. El número de clusters en los que se dividirá el array MC dependerá de la complejidad de la figura a modelar, dividiendo en un mayor número de clusters el array MC cuando la figura presente una mayor complejidad. Estos clusters, a su vez, pueden estar solapados entre sí, es decir, una o varias cámaras pueden pertenecer a varios clusters, siempre y cuando sean clusters adyacentes, tal y como se puede ver en las Figuras 2.7.a y 2.7.c, donde se observa que los tres clusters comparten cámaras del array MC entre sí. Finalmente, las Figuras 2.7.b y 2.7.d, muestran el modelo 3D obtenido tras haber empleado procesamiento a través de este array MC y su organización en clusters.
CAPÍTULO 2.- ESTADO DEL ARTE 24 a) b) c) d) Figura 2.7.- Disposición de cámaras (a y c) y modelo 3D (b y d) de dinosaurio y ruinas [ZCI+08] Generación de espacios tridimensionales 2.3.2.2 Otra de las aplicaciones en las que se usan arrays MC consiste en focalizar una parte de la escena que pueda ser de interés, o incluso generar una nueva cámara virtual a partir de la información capturada por el resto de las cámaras, de forma que el usuario se pueda mover por la escena como si de un espacio 3D se tratase. Ejemplo de ello es el propuesto por Yang et al. [YEB+02], cuyo trabajo permite a diferentes usuarios ver en tiempo real partes de una escena captada por el array MC. El array MC utilizado consta de 64 cámaras distribuidas con geometría cuadrada en una matriz de 8x8, mostrado en la Figura 2.8. Para conseguir que el sistema funcione en tiempo real se procesa la imagen localmente en la cámara, de modo que sólo se envíe la parte de la imagen que es de interés para el resultado final. Para ello existe un sistema denominado Compositer que funciona como interfaz entre el usuario y la cámara. Este sistema se encarga de recibir la petición del usuario, traducirla en la información que necesita la cámara para obtener la parte de la imagen deseada, y finalmente componer la imagen final que será enviada posteriormente al usuario. Figura 2.8.- Array MC de 64 cámaras distribuidas en una matriz cuadrada de 8x8 En esta propuesta, se plantean dos configuraciones distintas: una que permite acceder a todos los puntos de vista (All-Viewpoint), la cual no ha sido implementada debido al alto ancho de banda necesario, al permitir elegir cualquier punto de vista de la escena a procesar, con lo que sería necesario almacenar los frames completos de cada cámara con este propósito, no cumpliendo con los requisitos de tiempo real, y otra que trabaja únicamente con un número finito de puntos (Finite-Viewpoint), permitiendo únicamente seleccionar un subconjunto de vistas de la escena con el objetivo de que el sistema pueda operar en tiempo real. Con esta configuración se obtienen los resultados mostrados en la Figura 2.9, donde se puede ver que se enfoca en cada imagen a una persona distinta en planos diferentes.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 25 Figura 2.9.- Tres vistas donde se enfoca a la persona de la izquierda, centro y derecha Por otro lado, Smith et al. [SZJ+09] proponen un algoritmo de estabilización de vídeo cuya función es compensar el movimiento producido por el operador de la cámara cuando se graba una secuencia de vídeo mientras éste se desplaza, es decir, conseguir un algoritmo cuyo resultado sea el mismo que el de una Steadicam, que muestra imágenes similares al punto de vista subjetivo del personaje. Para conseguir este efecto se usa un array MC comercial, en concreto el dispositivo ProFusion-25C [PFS15], que contiene 25 cámaras fijas, tal y como se muestra en la Figura 2.10.a. De estas 25 cámaras se usan 4 de ellas en sus ejemplos, siendo las cámaras elegidas las centrales situadas en los extremos superior, inferior, izquierda y derecha, formando de este modo una cruz. A partir de las grabaciones capturadas por estas cámaras se detectan los bordes, estableciendo de este modo puntos de referencia con el fin de conocer la información de movimiento de la secuencia a lo largo del tiempo. Posteriormente, mediante un proceso de minimización del movimiento, se crea una cámara virtual respecto a una cámara de referencia, también conocida como Free-ViewPoint, la cual no tiene restricciones en cuanto a su posición, y que pasará finalmente por un proceso de regularización de este movimiento para obtener la secuencia estabilizada. En la Figura 2.10 se puede observar el movimiento de los puntos de referencia a lo largo del tiempo, tanto en la secuencia original de la Figura 2.10.b, como en la procesada, que se representa en la Figura 2.10.c. a) b) c) Figura 2.10.- Propuesta de Smith et al. [SZJ+09]. a) Cámara ProFusion-25C, b) secuencia original con movimiento y c) secuencia una vez procesada para minimizar el movimiento Baker y Tanguay [BT06] proponen un sistema modular que puede soportar hasta 24 cámaras. Estas cámaras están conectadas a un banco de concentradores, los cuales usan el bus PCI-X (Peripheral Component Interconnect eXtended) para transferir los datos al PC. Este array MC, mostrado en la Figura 2.11.a, es configurable, habiéndose realizado montajes correspondientes con arrays de dimensiones 2x3, 2x9 cóncavo y 3x6, mostrados en la fila superior de la Figura 2.11.b, y de 22 cámaras y 3x6 convexo en la fila inferior. El propósito de este array MC es obtener vídeo de definición variable, mediante la técnica de mosaicos o Mosaicing. Para obtener las imágenes de resoluciones variables, el array MC se configura de forma que el solape entre las imágenes de las cámaras varíe entre un 20% y 50%, lo que
CAPÍTULO 2.- ESTADO DEL ARTE 26 combinado con los distintos montajes permiten lograr este propósito. En la Figura 2.12 se muestra un ejemplo de esta propuesta, consiguiendo una imagen con gran ángulo de visión, tomada mediante el montaje de cámara cóncava de dimensiones 2x9 mostrado en la Figura 2.11.b. a) b) Figura 2.11.- Sistema modular propuesto por Baker y Tanguay [BT06] a) Sistema MC configurable, b) Montajes del Sistema MC realizados Figura 2.12.- Imagen con gran ángulo de visión tomada mediante un array de dimensiones 2x9 Videovigilancia 2.3.2.3 Otra de las aplicaciones posibles en MC es la de videovigilancia. Así, Bellotto et al. [BSB+09] emplean un sistema que consta de cámaras destinadas al seguimiento de personas en un sistema de videovigilancia, donde se puede cambiar el sujeto a seguir de forma dinámica. Para ello se usan 3 cámaras, donde una de ellas es fija y el resto son móviles, es decir, pueden moverse con la intención de seguir al sujeto que se tenga como objetivo. Estas cámaras proporcionan la opción de controlar el zoom, consiguiendo de esta forma agrandar y centrar el seguimiento con mayor precisión. La disposición final de las cámaras se presenta en la Figura 2.13.a, en la cual se puede apreciar la cámara estática en la parte superior, y la cámara activa en la parte inferior. Por otro lado, en la Figura 2.13.b se muestra el momento de detección del sujeto, mientras que en la Figura 2.13.c se observa cómo, una vez detectado, se lleva a cabo un zoom sobre el sujeto mientras se realiza el seguimiento. a) b) c) Figura 2.13.- Propuesta de Bellotto et al. [BSB+09]. a) Disposición de las cámaras del sistema, b) detección del sujeto y c) seguimiento del sujeto
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 27 Camera Processing Board MICROPROCESSOR 32MB DRAM EEPROM FPGA 8KB FIFO IEEE1394 CHIPSET SRAM SDRAM MPEG2 ENCODER CLOCKS TRIGGERS SYNCS IMAGE SENSOR control timing video In Out a) b) Figura 2.14.- Propuesta de Wilburn et al. [WJV05]. a) Imagen de una cámara a medida y b) Diagrama de bloques de la placa de procesado de cada cámara Dentro de las propuestas de arrays MC más completas que se han estudiado, se encuentra la aportada por Wilburn et al. [WJV05], de la Universidad de Stanford, donde se ha creado un sistema a medida en el que la geometría del array es configurable para adaptarlo a las diversas aplicaciones que se presentan en esta propuesta. Este sistema incluye, desde las propias cámaras, hasta la placa de procesamiento para cada cámara. Las cámaras usadas se muestran en la Figura 2.14.a, y el diagrama de bloques de la placa de procesado de las cámaras se puede ver en la Figura 2.14.b. Por otra parte, en la Figura 2.15.a y en la Figura 2.15.b se muestran algunos ejemplos de los montajes de arrays MC que se han llevado a cabo en la Universidad de Stanford. Como ejemplo de aplicaciones que se han desarrollado a partir de este sistema MC, se presenta en su propuesta la de vídeo de resolución escalable mediante la técnica de mosaicos o Mosaicing, donde estas imágenes se obtienen a partir del solape entre las cámaras del array MC. Por otro lado, se consigue vídeo de alta velocidad, es decir, el efecto de tener una cámara con una elevada tasa de frame, de modo que se puedan obtener secuencias a cámara lenta, capturando para ello un frame por cada cámara del array de forma consecutiva. El resultado final produce el efecto de haber aumentado la tasa de frame. Como última aplicación a destacar, se ha implementado un algoritmo que crea lo que han denominado Fotografía de Apertura Sintética No Lineal, a través del cual se consigue eliminar o poder visualizar lo que hay detrás de objetos a partir de las diferentes perspectivas capturadas de la misma escena, al estar las cámaras del array MC en diferentes puntos del espacio, como se observa en las imágenes de la Figura 2.16. a) b) Figura 2.15.- Arrays MC de la Universidad de Stanford. a) Array MC con teleobjetivos de dimensiones 8x12 y b) Array MC donde las cámaras tienen una amplia separación a) b) Figura 2.16.- Secuencia de vídeo procesada con Fotografía de Apertura Sintética No Lineal
CAPÍTULO 2.- ESTADO DEL ARTE 34 La ecuación (2.20) representa que una imagen de LR 𝑔𝑛 está relacionada con la imagen de HR 𝑓, mediante una transformación geométrica 𝑇𝑛 de tipo proyectiva (Homografía 2D), teniendo en cuenta la función de transferencia de la óptica, modelada en este caso a través de la PSF. Finalmente, se realiza un proceso de diezmado 𝑠↓, al cual se le añade un término de ruido ɳ, que se asume de distribución gaussiana con media cero. Lo interesante del modelo aquí presentado es que establece que la relación entre las imágenes de HR y de LR se da a través de una transformación proyectiva. Este concepto puede verse con una perspectiva más amplia, en la cual entre los frames de una secuencia de vídeo que han sido grabados en distintos instantes temporales existirá también una relación proyectiva, puesto que puede haber movimiento entre los frames, ya sea porque la cámara está en movimiento, o porque sea la escena la que se mueva. De igual forma, existirá la misma relación entre los frames capturados en el mismo instante de tiempo por un array MC, donde la relación proyectiva entre estos frames se debe a una relación espacial basada en la posición de las cámaras en el array MC. Sin embargo, se plantea la posibilidad de que, teniendo una serie de imágenes captadas por un array MC, de las cuales se ha obtenido la relación de transformación de las cámaras respecto a una de referencia (pudiendo ser esta transformación proyectiva o no), se pueda aplicar un proceso de corrección de estas diferencias de alineamiento, escala, etc. Se considerarían entonces únicamente las traslaciones entre las cámaras, por lo que estas secuencias corregidas podrían ser muy apropiadas para el algoritmo de SR que se ha tomado como base para implementar los métodos propuestos en esta Tesis Doctoral. Resumen de propuestas que incluyen arrays Multi-Cámara 2.3.3.7 Dentro de la variedad de propuestas de arrays MC que se han presentado en el apartado 2.3.2, y teniendo en cuenta las características del algoritmo de SR usado como base en esta Tesis Doctoral, que se beneficia de la información subpíxel que pueda encontrar entre las imágenes de la secuencia LR, se consideran como más adecuados aquellos arrays MC que presenten o minimicen la transformación proyectiva producida por la propia geometría del array MC. Por tanto, aquellos arrays MC cuyas cámaras estén lo más alineadas posibles y se encuentren situadas en el mismo plano, se consideran que son los que mejor se adaptan a los algoritmos de SR por fusión, pretendiendo con ello que no presenten cambios de escala o rotaciones en la perspectiva de las cámaras. Por otro lado, no se establece a priori pauta alguna en cuanto al beneficio que puede presentar la disposición de las cámaras en el array MC, es decir, si las cámaras deben estar dispuestas formando una geometría cuadrada, rectangular, circular, en forma de cruz, u otra que pueda ser de especial interés. Sin embargo, tal y como se muestra en la Figura 2.25, se prevé que sea en la parte solapada entre los frames capturados por cada cámara (resaltada con líneas oblicuas), donde exista una mayor posibilidad de encontrar la información necesaria para reconstruir la secuencia HR. Desde otro punto de vista, al estar grabando cada cámara la misma escena desde diferentes puntos del espacio, tendrá en la zona solapada un mayor muestreo de la misma parte de la escena, y por tanto, se aumenta la posibilidad de capturar la información necesaria para el proceso de SR del frame.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 35 Solape Figura 2.25.- Solape entre las imágenes capturadas por las cámaras Como consecuencia, aquellas geometrías que aporten un mayor solape serán las que a priori presenten un mejor resultado, siendo las formas cuadrada y rectangular las consideradas como mejores candidatas, tal y como se puede apreciar en la Figura 2.26, aunque pueden resultar igualmente válidas otras geometrías. Con el mismo fin, el de aumentar la dimensión del solape, cuanto más cerca se encuentren las cámaras unas de otras en el array MC, mayor será la parte solapada, y por tanto se espera un mejor resultado en la calidad de la secuencia de salida. a) b) Figura 2.26.- Array MC de dimensiones 2x2 a) Geometría rectangular y b) Geometría en cruz Como se ha podido ver en el apartado 2.3.3, existen diversos estudios que combinan SR con las imágenes captadas por un array MC. Sin embargo, en este estudio del Estado del Arte no se han encontrado propuestas que combinen la información temporal y espacial que proporciona el array MC para aportar una mejora en la calidad de las imágenes súperresueltas. Por ello, no se dispone de una referencia en la que basarse para implementar un algoritmo con el fin de lograr dicho objetivo, así como para comparar adecuadamente los resultados obtenidos en la presente Tesis Doctoral. Finalmente, la Tabla 2.1 presenta un resumen de aquellas propuestas que combinan un array MC junto con algoritmos de SR.
CAPÍTULO 2.- ESTADO DEL ARTE 36 Tabla 2.1.- Resumen de referencias que emplean un array Multi-Cámara con Súper-Resolución Aplicación Renderizado Renderizado Aeroespacial Renderizado Videovigilancia Renderizado Algoritmo de SR Bayesiano multicanal POCS de Ponderación Global POCS POCS POCS Registro − − Homografía Homografía Matriz fundamental Warping + Traslaciones + Homografía Nº de cámaras 9 3 2 2 25 Dimensión del array 3x3 Array de tres líneas 2x1 2x1 5x5 Entidad Yonsei University Institute, Corea del Sur Tianjin University, China McMaster University, Canadá University of Rochester, EEUU Carleton University, Canadá Título Multi-Camera imaging system using Super-Resolution [HMG08] Super resolution reconstruction of three view remote sensing images based on global weighted POCS algorithm [ZWM+11] Wireless camera network for image SuperResolution [DSC04] Super-Resolution recovery for Multi-Camera surveillance imaging [CTH03] Regularized SuperResolution of Multi-View Images [Fan09] Sección 2.3.3.1 2.3.3.2 2.3.3.3 2.3.3.4 2.3.3.5
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 37 2.4 MÉTRICAS SOBRE CALIDAD DE IMAGEN Con el objetivo de establecer una medida de calidad objetiva de las secuencias súperresueltas, tras estudiar cuidadosamente el Estado del Arte, en la presente Tesis Doctoral se ha hecho uso de las métricas de calidad PSNR (Peak Signal-to-Noise Ratio) y SSIM (Structural SIMilarity index). En esta sección se presentan ambas métricas de calidad y las razones de su utilización, además de otras métricas estudiadas en el proceso de selección, comparadas en un último apartado a modo de conclusión. 2.4.1 Peak Signal-to-Noise Ratio (PSNR) La métrica PSNR se calcula obteniendo el error cuadrático medio (MSE, Mean Square Error) en relación con el valor máximo posible de luminancia (usando 8 bits este valor se corresponde con 28 – 1 = 255), como sigue: 𝑴𝑺𝑬=∑ ∑ [𝑓(𝑖,𝑗)−𝐹(𝑖,𝑗)]2 𝑁 𝑗=1 𝑀 𝑖=1 𝑀 𝑥 𝑁 (2.21) 𝑷𝑺𝑵𝑹=20𝑙𝑜𝑔10(255 √𝑀𝑆𝐸), (2.22) donde f(i,j) es la señal original en el píxel (i,j), F(i,j) es la señal reconstruida (súper-resuelta o interpolada), y M x N es el tamaño de la imagen. El resultado es un valor en decibelios (dB), que va desde 30 a 40 dBs para vídeo de calidad medio-alta. Aunque se han propuesto varios modelos para medir la calidad objetiva, el PSNR continúa siendo uno de los más populares en lo que se refiere a la evaluación de la diferencia de calidad entre imágenes. Recientemente Korhonen y Junyong [KJ12] presentaron que las bajas prestaciones de PSNR se deben frecuentemente a casos en los que existe mucho movimiento local. En escenarios con contenido fijo y con tipos de distorsión relacionados con aplicaciones de comunicación visual, PSNR es una métrica apropiada, y en algunos casos incluso mejor que modelos de calidad objetivos conocidos en la literatura. 2.4.2 Structural SIMilarity index (SSIM) Wang et al. [WBS+04] presentaron una aproximación diferente para la evaluación objetiva de la calidad de vídeo. Este método difiere del PSNR y de la mayoría de los métodos de medida objetiva de la calidad de la imagen en que no está basado en el error, sino en la medida de distorsión estructural. La idea que subyace en este planteamiento es que el sistema de visión humano está altamente especializado en extraer la información estructural del campo de visión y no lo está en la extracción de errores. De esta forma, una medida de la distorsión estructural debería dar una mayor correlación a la impresión subjetiva. Partiendo de la asunción inicial comentada, se pueden desarrollar diversos métodos de evaluación de calidad. La ventaja de SSIM es que representa un método simple y efectivo que es cada vez más frecuente en muchos trabajos científicos. SSIM se puede expresar de la siguiente manera: Sea x = {xi | i = 1, 2, …, N} la señal original e y = {yi | i = 1, 2, …, N} la señal distorsionada, el índice de similitud estructural se puede calcular como:
CAPÍTULO 2.- ESTADO DEL ARTE 38 𝑺𝑺𝑰𝑴=(2𝑥𝑦+𝐶1)(2𝜎𝑥𝑦+𝐶2) [(𝑥)2+(𝑦)2+𝐶1](𝜎𝑥2+𝜎𝑦2+𝐶2) , (2.23) donde: 𝑥 es la media de x. 𝑦 es la media de y. 𝜎𝑥 es la varianza de x. 𝜎𝑦 es la varianza de y. 𝜎𝑥𝑦 es la covarianza entre x e y. C1 y C2 son constantes. El valor de SSIM es 1 si xi = yi para todos los valores de i. Este índice de calidad se aplica normalmente a cada imagen usando una ventana deslizante de una función de pesos gaussiana simétrica y circular, y calculando el índice total de la imagen como el promedio de todos los índices de calidad de la imagen. 2.4.3 Otras métricas objetivas estudiadas VQM (Video Quality Metric) 2.4.3.1 VQM (Video Quality Metric) propuesta por Pinson y Wolf [PW04] fue desarrollada por ITS (Institute for Telecommunication Science) para proporcionar una medida objetiva que permitiera evaluar la calidad de las secuencias de vídeo. Esta métrica considera los efectos de las deficiencias perceptuales en vídeo incluyendo desenfoque, movimiento errático, ruido global, distorsión por bloques y distorsión por color, y los combina en una única métrica. VQM presenta una alta correlación con la evaluación subjetiva de la calidad y fue adoptada por ANSI (American National Standards Institute) como una métrica objetiva estándar de calidad de vídeo. VQM toma la secuencia de vídeo original y la secuencia de vídeo procesada como entradas, y las analiza de acuerdo con los siguientes pasos: Calibración: Este paso calibra el vídeo muestreado. Estima y corrige el desplazamiento espacial y temporal, así como el contraste y el desplazamiento de brillo de la secuencia de vídeo procesada con respecto a la secuencia de vídeo original. Extracción de características de calidad: Este paso extrae un conjunto de características de calidad que caracteriza cambios perceptuales en las propiedades espaciales, temporales y de crominancia de las subregiones espacio-temporales de secuencias de vídeo usando una función matemática. Cálculo de parámetros de calidad: Este paso computa un conjunto de parámetros de calidad que describen cambios perceptuales en la calidad de vídeo comparando las características extraídas de las secuencias de vídeo procesada y original. Cálculo VQM: La métrica VQM se obtiene mediante una combinación lineal de los parámetros calculados en los pasos anteriores. VQM puede ejecutarse usando varios modelos basados en ciertos criterios de optimización. Estos modelos incluyen televisión, videoconferencia, uso general, modo desarrollador y modo PSNR. El modelo general usa una combinación lineal de siete parámetros: cuatro están basados en características extraídas de gradientes espaciales de la componente de luminancia (Y), dos están basados en características extraídas del vector formado por las dos componentes de crominancia (Cb y Cr), y el último parámetro está basado en el contraste y en características temporales, extraídas de Y.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 39 MPQM (Moving Pictures Quality Metric) 2.4.3.2 PSNR no toma en consideración el fenómeno del enmascaramiento visual. En otras palabras, cada error de píxel individual contribuye a una disminución en PSNR, incluso si dicho error no se percibe. Este hecho se afronta incorporando un modelo del sistema de visión humano. En particular, se han estudiado en detalle dos fenómenos de la percepción humana: la sensibilidad al contraste y el enmascaramiento. El primer fenómeno se refiere al hecho de que una señal se detecta por el ojo sólo si el contraste es mayor que un determinado umbral. La sensibilidad al ojo varía en función de la frecuencia espacial, la orientación y la frecuencia temporal. El segundo fenómeno está relacionado con la respuesta del sistema de visión humano a la combinación de varias señales. Un estímulo consiste en dos tipos de señales (foreground y background). El umbral de detección de foreground se modifica en función del contraste de background. MPQM (Moving Pictures Quality Metric), propuesta por Labrech y Verscheure [LV96], es una métrica de calidad objetiva de imagen móvil que incorpora las dos características de la visión humana que se han comentado. En primer lugar descompone la secuencia original y su versión distorsionada en dos canales perceptuales. Se calcula entonces una medida de distorsión considerando tanto la sensibilidad al contraste como el enmascaramiento. Finalmente, los datos se analizan sobre todos los canales para calcular la calificación de calidad que se escala entonces de 1 a 5 (de malo a excelente, respectivamente). Sin embargo, MPQM no toma en consideración el color, y por ello se introdujo el método CMPQM (Color Moving Pictures Quality Metric). El primer paso consiste en convertir las componentes de color a valores RGB que son lineales con la luminancia. Entonces los valores RGB se convierten para coordinar valores que corresponden a los canales de luminancia (Black / White), Rojo-Verde (Red / Green) y Azul-Amarillo (Blue / Yellow). Cada componente de las secuencias error y original se analiza con un banco de filtros. El denominado canal “Black / White” se procesa como luminancia, pero como “Red / Green” y “Blue / Yellow” son mucho menos sensibles, sólo se usan 9 filtros espaciales y uno temporal para estas señales. El resto del cálculo es el mismo que para MPQM. MPQM representa los típicos modelos de evaluación de calidad basados en la sensibilidad al error. La asunción ampliamente adoptada de estos modelos es que la pérdida de la calidad perceptual está directamente relacionada con la visibilidad de la señal error. La mayoría de las aproximaciones de evaluación perceptual propuestas en la literatura intentan pesar diferentes aspectos de la señal error de acuerdo con su visibilidad, como se determina mediante medidas psicofísicas en humanos o fisiológicas en animales. El principio subyacente de la aproximación de la sensibilidad a errores consiste en que la calidad perceptual se estima mejor cuantificando la visibilidad de los errores. Esto se consigue esencialmente estimulando las propiedades funcionales de las primeras etapas del sistema de visión humano, caracterizado tanto mediante experimentos psicosociales como fisiológicos. Aunque esta aproximación Top-Down al problema presenta aceptación casi universal, es importante reconocer sus limitaciones. En particular, el sistema de visión humano es un sistema complejo y altamente no lineal, pero la mayoría de los modelos de visión temprana están basados en operadores cuasi-lineales que se han caracterizado usando estímulos simples y restringidos.
CAPÍTULO 2.- ESTADO DEL ARTE 40 NQM (Noise Quality Measure) 2.4.3.3 En esta métrica de calidad, la imagen degradada se modela como la imagen original sujeta a distorsión lineal de frecuencia e inyección de ruido aditivo. Estas dos fuentes de degradación se consideran independientes y están desacopladas en dos medidas de calidad: una medida de distorsión (DM, Distortion Measure) y una medida de calidad de ruido (NQM, Noise Quality Measure), introducida por Damera-Venkata et al. [DGE+00] para medir el efecto del ruido aditivo. NQM toma en consideración los siguientes aspectos: Variación de la sensibilidad al contraste con la distancia y con las dimensiones de la imagen. Variación en la media local de luminancia. Contraste en la interacción entre frecuencias espaciales. Efectos de enmascaramiento de contraste. AQI (Anysotropic Quality Index) 2.4.3.4 La anisotropía es por definición la propiedad de ser dependiente de la dirección y es uno de los aspectos considerados por los investigadores para encontrar la relación entre la estructura operacional del sistema visual y el contenido real. No es posible determinar un patrón de dirección común para todas las escenas reales, ya que la composición de la escena varía, y con ello la dirección de muestra a muestra. Los estudios realizados por Li et al. [LPF03] indican que las neuronas alineadas en dirección horizontal son más prevalentes que las alineadas en dirección vertical. La relación existente entre la prevalencia de la escena natural a diferentes orientaciones y la habilidad visual de detectar la dirección de la escena han sido estudiados por Hansen y Essock [HE04]. Kei y Cristóbal [KC00] llevaron a cabo una comparación sistemática entre el contenido horizontal y vertical en función de la frecuencia espacial y encontraron una mayor influencia horizontal a determinadas frecuencias con preponderancia del contenido vertical a otras frecuencias espaciales. Estos experimentos, así como las diferencias que encontraron en la distribución de energía para imágenes naturales en el dominio espacio-frecuencial, sugieren que las medidas entrópicas, tal como la entropía de Rényi, basada en medir el contenido de las frecuencias de las imágenes a través de PWD (Pseudo-Wigner Distribution) [WBH91], son apropiadas para medir la anisotropía. La ecuación (2.24) muestra la entropía Rényi R3[n] asociada a una posición n en función de PWD, que se identifica con una probabilidad de distribución 𝑃𝑛. 𝑅3[𝑛]=−12𝑙𝑜𝑔2(∑𝑃𝑛3[𝑘] 𝑁 𝑘=1 ) (2.24) Para formalizar los cálculos requeridos con el fin de medir la anisotropía de las imágenes, se usa la ecuación (2.24). Esta expresión proporciona un valor de entropía R3[n, ϴs] para cada píxel. ϴs ϵ [ϴ1, ϴ2, …, ϴS] representa S orientaciones diferentes para medir la entropía. Por tanto, Gabarda y Cristóbal [GC07] introdujeron la ecuación (2.25) con el fin de definir una figura de mérito para la imagen (índice anisotrópico AQI, Anystropic Quality Index). 𝑅 [𝑡,𝜃𝑠]=∑𝑅3[𝑛,𝜃𝑠]/𝑀 𝑛, (2.25) donde M representa el tamaño de la imagen y t ϵ [1, 2, …, T] se introduce para considerar las T diferentes imágenes que integran el conjunto de datos.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 41 Así mismo, suponiendo que 𝑅 (𝑡,𝜃𝑠) es el valor esperado de entropía para una imagen t ϵ [1, 2, …, M], medido en direcciones ϴs ϵ [ϴ1, ϴ2, …, ϴS], la desviación estándar para el conjunto resultante de valores, referidos a la imagen t, puede definirse como se representa en la ecuación (2.26). 𝐴(𝑋𝑡)=𝜎(𝑡)=√∑(𝜇𝑡−𝑅 (𝑡,𝜃𝑠))2/𝑆 𝑆 𝑠=1 , (2.26) identificando A(Xt) como la anisotropía de una imagen Xt, y donde μt es la media de los valores 𝑅 (𝑡,𝜃𝑠), como se define en la expresión (2.27): 𝜇𝑡=∑𝑅 (𝑡,𝜃𝑠)/𝑆 𝑆 𝑠=1 , (2.27) definiéndose el rango en la imagen t en la ecuación (2.28). 𝑟𝑔(𝑡)=max{𝑅 (𝑡,𝜃𝑠)}−min{𝑅 (𝑡,𝜃𝑠)} (2.28) Una vez que la relación entre la anisotropía y la calidad de la imagen ha quedado establecida, se puede extender fácilmente a una medida de calidad logarítmica para poder comparar con otras medidas similares basadas en anisotropía. Callicó et al. [CLG+09] definieron una medida logarítmica LQM (Logarithmic Quality Measure) que estima en dBq la calidad absoluta de las imágenes (q se refiere a calidad y se ha añadido para identificar su carácter absoluto) Xt como se presenta en la ecuación (2.29): 𝐿𝑄𝑀(𝑋𝑡)= 𝐵·log10 (𝐴(𝑋𝑡)), (2.29) donde B es una constante que ha de determinarse con el fin de fijar el rango de valores operativos. 2.4.4 Comparativa entre métricas objetivas Además de los métodos comentados anteriormente, se han propuesto otros, pero ninguno de ellos se acepta de forma general. La Tabla 2.2 presenta una comparativa entre las métricas previamente presentadas, basándose en el trabajo realizado por Wang [Wan06], así como los análisis presentados por Sheikh et al. [SSB06] y Korhonen y Junyong [KJ12]. Tabla 2.2.- Comparativa entre métricas objetivas de calidad de imagen Métrica Complejidad Matemática Correlación con métodos subjetivos AQI [GC07] Muy compleja Buena PSNR [KJ12] Simple Media SSIM [WBS+04] Compleja Buena VQM [PW04] Muy compleja Buena MPQM [LV96] Compleja Variante NQM [DGE+00] Compleja Media
CAPÍTULO 2.- ESTADO DEL ARTE 42 El análisis presentado en la Tabla 2.2, así como la evaluación de una amplia cantidad de artículos científicos, demuestran que la métrica PSNR sigue siendo ampliamente usada, y que SSIM se está adaptando cada vez más. Esto justifica la selección de ambas métricas para la presente Tesis Doctoral, a partir de las cuales se podrá realizar una medida de calidad objetiva adecuada, además de servir como punto de referencia para comparar con las contribuciones propuestas en la literatura. 2.4.5 Métricas subjetivas El objetivo de la evaluación subjetiva de calidad es conocer, para un conjunto determinado de frames (o de secuencias de vídeo), la opinión de un usuario medio. En este sentido, la mejor forma de saberlo es preguntando directamente a los usuarios. Los métodos de calidad objetivos proporcionan guías de cómo preguntar sobre calidad de una forma eficiente. Existen varios estándares que proporcionan estos métodos de evaluación objetiva, principalmente ITU-R BT.500 [ITU02], ITU-T P.910 [ITU08] e ITU-T P.911 [ITU98]. Todos ellos son bastante similares en la forma que proponen estructurar, realizar y evaluar los tests. La mayoría de los tests de evaluación subjetiva en la literatura están basados en estos estándares, siendo los tests VQEG (Video Quality Experts Group) el ejemplo más relevante [Win09]. En las sesiones de test se le solicita a un número determinado de sujetos que visualicen un determinado conjunto de frames o de secuencias de vídeo y que evalúen su calidad. El número total de evaluadores ha de estar comprendido entre 4 y 40, pudiendo estar distribuidos en diferentes sesiones. De forma general: Al menos 15 observadores deberían participar en el experimento. No han de ser profesionales en la evaluación de calidad. Deberían disponer de una capacidad visual normal o corregida para ser normal (uso de lentillas o gafas). En el caso de presentar secuencias de vídeo en los tests, la localización y los monitores donde se realizan los tests deben cumplir con una serie de requisitos en términos de luz, iluminación y contraste de la pantalla, o distancia y ángulo de observación, entre otros. Existen también guías para trabajar, tanto con monitores profesionales, como con televisiones domésticas. Las sesiones realizadas no deberían durar más de media hora. Normalmente al comienzo de la sesión se les presenta a los observadores un conjunto de secuencias de vídeo o frames donde pueden ver el tipo de defectos detectables. Las muestras a evaluar pueden estar precedidas de presentaciones de prueba, cuyos resultados no se toman en consideración, para estabilizar la opinión de los observadores. Además, los frames o secuencias a evaluar deberían distribuirse aleatoriamente a lo largo de las sesiones. Aunque existen variaciones en los detalles entre estándares, las estrategias que se usan principalmente, son las siguientes [ITU98]: Evaluación de Categoría Absoluta (ACR, Absolut Category Rating), o Método de Estímulo Simple (SS, Single Stimulus). Las secuencias de test se presentan una única vez y se evalúan independientemente con una escala. Después de cada presentación se le solicita a los sujetos que evalúen la calidad de la secuencia presentada usando una escala absoluta, normalmente con cinco niveles (ver Tabla 2.3). A veces se utilizan escalas de nueve niveles o incluso de once niveles para aumentar la resolución, pero
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 43 en la mayoría de las ocasiones esto no da lugar a una variación significativa de los resultados. Se muestra además a modo de ejemplo el modelo de presentación de estímulo para el método ACR según ITU-T P.911 en la Figura 2.27. Evaluación de Categoría de Degradación (DCR, Degradation Category Rating), o método de Escala de Deficiencias de Doble Estímulo (DSIS, Double Stimulus Impairment Scale). En este caso, cada presentación consiste en dos muestras diferentes: el contenido de referencia (sin deficiencias) y la versión procesada o con deficiencias del mismo contenido. Se evalúan las dos muestras de forma consecutiva, y se le solicita al sujeto que evalúe el grado de deficiencia del segundo estímulo con respecto al de referencia. En este caso se usan también escalas de 5 niveles, mostrándose en la Tabla 2.3 la relación existente entre las escalas de evaluación ACR y DCR. Método de Comparación por Pares (PCO, Pair Comparison). Las secuencias de vídeo o frames de test se presentan por pares, al igual que en el caso de DCR, pero ahora las secuencias de vídeo o frames son dos versiones procesadas de la misma muestra original (por ejemplo con dos niveles diferentes de una misma deficiencia o con tipos diferentes de deficiencias). Tras presentar cada par, el sujeto ha de seleccionar su preferida. Evaluación de Calidad Continua de Simple Estímulo (SSCQS, Simple Stimulus Continuous Quality Scale). Este método se aplica cuando se plantean como punto de partida secuencias de vídeo de larga duración (de 3 a 30 minutos). Mientras la secuencia se está reproduciendo, se les solicita a los sujetos que evalúen su calidad de forma continua. Tabla 2.3.- Comparativa entre métricas de evaluación subjetivas ACR y DCR Evaluación ACR DCR 5 Excelente Imperceptible 4 Bueno Perceptible pero no molesto 3 Neutro Ligeramente molesto 2 Pobre Molesto 1 Malo Muy molesto Figura 2.27.- Modelo de presentación de estímulo para el método ACR según ITU-T P.911 Cuando se presentan secuencias de vídeo, la duración propuesta de las secuencias es de 10 segundos, incluyendo otro período de 10 segundos (consistente en una pantalla en gris) para votar cada una de las secuencias, como se puede ver para ACR en la Figura 2.27. Cuando se usan pares de secuencias (DCR y PCO), los pares de secuencias deben separarse haciendo uso de un período de 2 segundos basado en una pantalla en gris.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 50 3.1 INTRODUCCIÓN Una vez presentados los conceptos necesarios para comprender el ámbito de aplicación de la presente Tesis Doctoral, en este capítulo se introducen las contribuciones algorítmicas desarrolladas. Las aportaciones pasan por dos grandes bloques: el primero de ellos está basado en una etapa de filtro y determinación del tamaño de Macro-Bloque más adecuado en el proceso de Súper-Resolución, mientras que el segundo consiste en describir cómo se pueden integrar las técnicas de Súper-Resolución por fusión en un sistema basado en múltiples cámaras (sistema Multi-Cámara). La Figura 3.1 presenta un esquema general de los principales conceptos que se integran en la Tesis Doctoral. La etapa de filtro y determinación del tamaño de Macro-Bloque consiste en un filtro inteligente capaz de seleccionar los frames más adecuados a usar en el proceso de SR en una primera aproximación con el fin de optimizar el resultado y reducir el tiempo de cómputo (Filtro Selectivo de Ventana, Window Selective Filter – WSF) hasta llegar a determinar si se debe o no utilizar un determinado MB en el proceso de SR (Filtro Selectivo de Macro-Bloque, Block Selective Filter – BSF). Por último, se plantea que cada Macro-Bloque pueda dividirse generando topologías que sean capaces de maximizar, tanto la calidad objetiva como la calidad subjetiva (topología de Macro-Bloques adaptable basada en un tamaño de MB variable, Variable Block Size – VBS). La integración de las técnicas de Súper-Resolución por fusión en sistemas MultiCámara pasa por la presentación de varios métodos que explotan la información temporal (frames capturados en distintos instantes de tiempo por una cámara determinada) y espacial (frames tomados en un mismo instante de tiempo por cámaras diferentes), conformando los métodos Temporal-Espacial, Espacial-Temporal y Mixto, así como un conjunto de modos de pre-procesamiento para adecuar la información tomada como punto de partida. Figura 3.1.- Esquema general de las contribuciones de la presente Tesis Doctoral
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 51 3.2 ALGORITMO BASE DE SÚPER-RESOLUCIÓN El algoritmo base de SR tomado como referencia en la presente Tesis Doctoral (BSR, Baseline Super-Resolution) ha sido desarrollado en el seno de la división de Diseño de Sistemas Integrados (DSI) del Instituto Universitario de Microelectrónica Aplicada (IUMA) [Mar03, CLN+02] de la Universidad de Las Palmas de Gran Canaria (ULPGC). El algoritmo se encuadra dentro de la categoría de fusión, más concretamente dentro de la fusión mediante SR dinámica, como se presenta en la Figura 3.2, ofreciendo resultados de alta calidad siempre y cuando la entrada al sistema sea una secuencia correlacionada de imágenes con vectores de movimiento relativamente pequeños en comparación con el tamaño de las imágenes. Lo común es aplicar este tipo de procesos a secuencias filmadas, como por ejemplo una grabación realizada por una cámara de vídeo estándar [BCL+05]. Figura 3.2.- Diagrama de bloques de algoritmo de SR dinámica tomado como referencia 3.2.1 Pseudo-código En la Figura 3.3 se detalla el pseudo-código del algoritmo base de SR. El algoritmo se ejecuta para cada uno de los frames de la secuencia de entrada, tal y como se representa en la Figura 3.2. El algoritmo BSR genera para cada frame una Ventana de Trabajo asociada, donde se almacenan los n frames anteriores y posteriores al actual. A continuación, se divide el frame actual en Macro-Bloques (MB) de tamaño fijo y se ejecuta el proceso de Estimación de Movimiento entre dicho frame y cada uno de los frames que se encuentran en la Ventana de Trabajo, buscando el mejor vector dentro del Área de Búsqueda (Search Area) correspondiente. Una vez hallados todos los vectores de movimiento necesarios, se ejecuta el proceso de Compensación de Movimiento generando una imagen compensada de resolución VHR (Very High Resolution) de acuerdo con el Factor de Escala (Scale Factor) que se haya definido entre LR y VHR. Sobre dicha imagen compensada se realiza el proceso de Rellenado de Huecos, cubriendo los huecos para dejar la imagen completamente tratada (imagen rellenada) previo a un paso final de diezmado, que proporciona como resultado la imagen en HR (High Resolution) súper-resuelta que se almacenará.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 52 Figura 3.3.- Proceso de BSR descrito en pseudo-código 3.2.2 Descripción de bloques del algoritmo Estimación de Movimiento 3.2.2.1 El proceso de Estimación de Movimiento se realiza sobre los frames de la Ventana de Trabajo. Para ello se divide el frame actual en Macro-Bloques (MBs) de tamaño M x N píxeles y se realiza una Estimación de Movimiento sub-píxel sobre cada uno de ellos. Una vez obtenidos los vectores de movimiento con menor distorsión para cada frame dentro de la Ventana de Trabajo, se procede a realizar la Compensación de Movimiento. En la Figura 3.4 se muestra el proceso de Estimación de Movimiento partiendo de la Ventana de Trabajo y obteniendo como resultado los vectores de movimiento, por MB. El algoritmo BSR soporta dos algoritmos de búsqueda: la búsqueda exhaustiva o Full-Search y la búsqueda de tres pasos TSS (Three Steps Search) [CLT+08]. Figura 3.4.- Proceso de Estimación de Movimiento for frame actual = primer frame: último frame Ventana de Trabajo = Generar Ventana de Trabajo del frame actual for frame de referencia = frame inicial de Ventana de Trabajo: frame final de Ventana de Trabajo for fila de Macro-Bloque = 1 : filas de Macro-Bloque for columna de Macro-Bloque = 1 : columnas de Macro-Bloque Macro-Bloque actual = Recortar Macro-Bloque de fila y columna vector de movimiento en el frame de referencia con fila y columna = Estimación de Movimiento en frame de referencia del Macro-Bloque en fila y columna con Área de Búsqueda SA y algoritmo X imagen compensada = Compensación de Movimiento de Ventana de Trabajo con vectores de movimiento imagen rellenada = Rellenado de Huecos de (1/Factor de Escala) Píxel de imagen compensada frame actual de imagen súper-resuelta = Diezmar imagen rellenada almacenar frame actual de imagen súper-resuelta almacenar secuencia
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 53 Compensación de Movimiento 3.2.2.2 El proceso de Compensación de Movimiento consiste en generar una malla de resolución VHR que viene determinada por la precisión sub-píxel deseada, siendo dicha malla de tamaño igual a 2precisión veces el frame de LR. Esto es debido a que la nueva malla de resolución VHR tiene que poder alojar el desplazamiento generado por un vector de movimiento con precisión 1/2precisión de píxel. Dicha malla estará formada en principio por huecos o píxeles vacíos. En el proceso de Compensación de movimiento se rellenan esos huecos con píxeles súper-resueltos que provengan de los frames de la Ventana de Trabajo procesada. Como mínimo se podrán cubrir los huecos de los píxeles de LR que provienen del frame actual y cuyo vector de movimiento es nulo. En la Figura 3.5 se representa la malla de resolución VHR para un Factor de Escala de 2, donde se aprecian los distintos tipos de posiciones. Las líneas gruesas representan posiciones de precisión entera. Esto quiere decir que para colocar un píxel sobre ellas, el vector de movimiento ha de presentar en alguna de sus coordenadas un valor entero. Los píxeles correspondientes al frame actual o de baja resolución (color azul), presentan un vector de movimiento nulo, con lo que en la malla de resolución VHR para una precisión de cuarto de píxel, se colocan cada cuatro píxeles. La línea más fina y continua representa posiciones de medio píxel de precisión, es decir, para un píxel colocado sobre ella el vector de movimiento asociado ha de presentar en alguna de sus componentes un valor de medio píxel. Por último, la línea discontinua representa las posiciones de un cuarto de píxel. Los píxeles en amarillo representan los píxeles compensados. En su interior se lee un número que representa el frame del que proviene, cuya correspondencia se presenta en la Tabla 3.1. Tabla 3.1.- Píxeles compensados y vectores de movimiento asociados Nº Vector de Movimiento - (0, 0) 1 (0.5, 0.25) 2 (0, 0.5) 3 (0.25, 0.75) Figura 3.5.- Proceso de Compensación de Movimiento
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 54 Figura 3.6.- Ejemplo de colisiones en la malla de VHR En el proceso de Compensación de Movimiento puede ocurrir que un MB tenga el mismo vector de movimiento para dos frames diferentes, por lo que ambos frames intentarían colocar un píxel en la misma posición de la malla de VHR, lo que se denomina colisión entre frames o colisión inter. Esta situación también puede producirse entre dos MBs diferentes de un mismo frame. A este tipo de colisión de MBs se le denomina colisión intra. El método más común para solucionar las colisiones es usar la media aritmética de los diferentes valores de píxel. En la Figura 3.6 se muestran ambos casos: marcadas en rojo se representan las colisiones Inter Frame, en las que los frames 1 y 3 pretenden establecer un valor de píxel en la misma posición. En color amarillo se representan las colisiones Intra Frame, donde se observa cómo dos MBs, a y b, del frame 2 pretenden establecer en la misma posición el valor de un mismo píxel. Por último, dentro de la Compensación de Movimiento hay que considerar que los MBs de los diferentes frames sólo rellenan los huecos que estén situados dentro del mismo MB en la malla de VHR. En la Figura 3.7 se muestran las posiciones de la malla VHR, en la que, en las posiciones sombreadas en rojo, es posible colocar un píxel súper-resuelto, ya que coincide con el MB actual. Los cuadros azules son los píxeles de LR, y representan el valor del MB al que pertenecen, mientras que en amarillo se representan los píxeles compensados. Los píxeles compensados, tachados con una cruz roja, son los que se encuentran fuera del MB actual y por tanto no se establece un valor sobre la malla de VHR para este MB. Figura 3.7.- Compensación de Movimiento por MB
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 55 Rellenado de Huecos 3.2.2.3 La imagen súper-resuelta se obtiene al diezmar la malla de resolución VHR. Si se diezmase directamente la malla tras realizar el proceso de Compensación de Movimiento, existe la posibilidad de que haya píxeles sobre los que no se ha podido colocar ningún píxel súper-resuelto. Estos píxeles son los huecos, y hay que rellenarlos. Para realizar el Rellenado de Huecos se lleva a cabo una interpolación bilineal de los píxeles súper-resueltos próximos al píxel a interpolar. Como referencia, en la Figura 3.8.a se representan los píxeles compensados en color amarillo, mientras que en la Figura 3.8.b se muestran los píxeles compensados en color amarillo y los píxeles interpolados en color verde. Además se representa el área de interpolación para cada uno de ellos enmarcada en rojo, donde se muestran los píxeles que se han tenido en cuenta para la interpolación, sombreados en rojo. Una vez completado el proceso de Rellenado de Huecos se diezma la imagen a HR, constituyendo la imagen súper-resuelta final. Para el Rellenado de Huecos la interpolación bilineal utiliza los píxeles que se encuentren en un área de (2precisión + 1) centrado en el píxel a interpolar, puesto que representa un buen compromiso entre calidad y coste computacional [Ban09]. Figura 3.8.- Malla de VHR a) Antes del Rellenado de Huecos b) Después del Rellenado de Huecos ´
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 56 3.2.3 Parámetros del algoritmo BSR Descripción de parámetros 3.2.3.1 El algoritmo BSR incluye un conjunto de parámetros de configuración, cuyo valor se selecciona dependiendo de las características de la secuencia de entrada de LR que se esté procesando y de la resolución de la secuencia / imagen de HR que se desee generar. En esta sección se describen estos parámetros, así como los posibles valores que pueden tomar: VIDEO_OUTPUT = 0|1: Este flag determina si la salida súper-resuelta será un único frame (0) o una secuencia de vídeo (1) del mismo número de frames que la secuencia de entrada. REF_FRAME = #FRAME: En el caso de tomar como salida un frame (VIDEO_OUTPUT = 0), se ha de proporcionar el número de frame que se usará como referencia. El movimiento de los otros frames en la secuencia se ajustará a la posición del número de frame proporcionado. El número de frame ha de estar incluido en el rango de los frames especificados. En el caso de tomar como salida una secuencia de vídeo, el frame de referencia será alternativamente cada frame de entrada, a los cuales se les denomina frames de referencia actuales (current reference frame). SCALE_FACTOR = #SCALE: Factor de Escala que será aplicado a la secuencia de entrada para generar la secuencia súper-resuelta. Se han probado valores entre 2 y 10, si bien en la presente Tesis Doctoral se usarán valores de 2 y 4, como se presentará más adelante. SEARCH_AREA = #SA: El Área de Búsqueda determina el número de píxeles alrededor de cada Macro-Bloque (MB) que se considera en el proceso de búsqueda del vector de movimiento adecuado. Para escenas con mucho movimiento se requieren altos valores de SA. Para escenas con poco movimiento, elevados valores de SA son contraproducentes, en el sentido de que no incrementarán en gran medida la calidad y sin embargo darán lugar a una gran cantidad de carga computacional ineficiente. Valores entre 8 y 16 son normalmente suficientes para la mayoría de las secuencias. MB_SIZE_LR = #MB: Tamaño de los MBs de baja resolución en los que se dividirán las imágenes de la secuencia de entrada. Bajos valores de MB permiten disponer de un mayor número de vectores de movimiento independientes, pero esto incrementa significativamente la carga computacional. Valores elevados de MB incrementan la coherencia de los vectores de movimiento pero degradan la calidad si se consideran varios objetos con diferentes movimientos dentro de un mismo MB. Tamaños de MB entre 4 y 32 son normalmente suficientes para la mayoría de las secuencias. MAX_PIX_DIF = #MPD: Esta es la máxima diferencia de píxel (en valor absoluto) permitida entre un píxel candidato de otro frame y el valor interpolado en el frame de referencia actual. Valores elevados de MPD implican que se combinarán más píxeles, lo cual incrementará potencialmente la calidad de la SR si existe correlación temporal entre frames, pero al mismo tiempo, la contrapartida es que podrían aparecer más artefactos. Bajos valores de MPD evitan en gran medida los artefactos, pero también limitan las mejoras de la SR. Para 8 bits, el máximo valor es 255 (todo SR) y el mínimo valor es siempre cero (todo interpolación). WIN_BACK_FRAMES = #WBF: Número de frames temporalmente localizados antes del frame de referencia actual en la secuencia de vídeo de entrada, que se usarán para combinarse con los píxeles del frame de referencia actual. Valores altos de WBF incrementan la probabilidad de obtener mejoras con las técnicas de SR, pero al mismo tiempo también incrementan la probabilidad de generar artefactos si los frames están poco correlacionados.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 57 WIN_FORWARD_FRAMES = #WFF: Número de frames temporalmente localizados después del frame de referencia actual en la secuencia de vídeo, que se usarán para combinarse con los píxeles del frame de referencia actual. Valores altos de WFF incrementan la probabilidad de obtener mejoras con las técnicas de SR, pero al mismo tiempo incrementan la probabilidad de generar artefactos si los frames están poco correlacionados. KEEP_TMP_FILES = 0|1: Si este valor se fija a 1, se almacenarán varios archivos temporales con el objetivo de realizar un proceso de depuración. SILENT = 0|1: Si este valor se fija a 1, no se presentarán mensajes durante la ejecución. KEEP_TRACK = 0|1: Si este valor se fija a 0, el algoritmo se comporta tal y como se ha descrito previamente. Si se fija a 1, se generará una copia del archivo de configuración con un nombre que incluye una extensión que reflejará los parámetros usados. Las secuencias súper-resuelta e interpolada presentarán el mismo nombre de extensión. Tal extensión tendrá, por ejemplo, el formato que se indica a continuación: FF10_LF25_SC2_SA8_MB16_MPD20_WB2_WF2. El significado de cada substring es: o FF: Primer frame (First Frame, 10 en el ejemplo). o LF: Último frame (Last Frame, 25 en el ejemplo). o SC: Factor de Escala (Scale Factor, 2 en el ejemplo). o SA: Área de Búsqueda (Search Area, 8 en el ejemplo). o MB: Tamaño de macro-bloque (Macro-Block size, 16 en el ejemplo). o MPD: Máxima Diferencia de Píxel (Maximum Pixel Difference, 20 en ejemplo). o WBF: Tamaño de ventana hacia atrás (Window Back Frames, 2 en el ejemplo). o WFF: Tamaño de ventana hacia adelante (Window Forward Frames, 2 en el ejemplo). FIRST_FRAME = #FF: Si se asigna un valor de -1, se usarán todos los frames de la secuencia (sea cual sea el valor de LAST_FRAME). En caso de asignar un valor positivo, este valor se usará como primer frame. LAST_FRAME = #LF: Si se asigna un valor de -1, se usarán todos los frames de la secuencia (sea cual sea el valor de FIRST_FRAME). En caso de asignar un valor positivo, este valor se usará como último frame. Como referencia, en la Figura 3.9 se representan gráficamente los parámetros SCALE_FACTOR, MB_SIZE_LR, SEARCH AREA, WIN_BACK_FRAMES y WIN_FORWARD FRAMES. a) b) c) d) Figura 3.9.- Parámetros de SR a) SCALE_FACTOR, b) MB_SIZE_LR, c) SEARCH AREA y d)WIN_BACK y WIN_FORWARD FRAMES
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 58 Parametrización del algoritmo BSR 3.2.3.2 La calidad del frame o de la secuencia de vídeo resultante del proceso de SR depende del conjunto de parámetros utilizado. Los parámetros deben ajustarse a las características de la entrada a súper-resolver. Si los parámetros no son los apropiados, la calidad de la secuencia de salida se podrá degradar significativamente. Los parámetros que afectan principalmente a la calidad del frame o de la secuencia súper-resuelta son: El Factor de Escala (SCALE_FACTOR): A medida que se incrementa su valor se requiere número mayor de frames a la entrada. Idealmente, si cada frame contiene un desplazamiento sub-píxel diferente, para un Factor de Escala de 2, serán necesarios 4 frames (medio píxel a la izquierda y a la derecha, y medio píxel arriba y abajo). Para un Factor de Escala de 3, serán necesarios 9 frames (con desplazamientos de precisión 1/3 de píxel) y así sucesivamente, de tal forma que el número de frames idealmente necesarios se calcula como la potencia cuadrática del Factor de Escala. En el último caso, usando un Factor de Escala de 10, se necesitarían 100 frames. En una situación real, es prácticamente imposible asegurar que todos los desplazamientos sub-píxel estén disponibles (salvo que un sistema mecánico proporcione los desplazamientos) y por tanto, serían necesarios frames adicionales para obtener estadísticamente tanta información como fuera posible. El número de frames a combinar dependerá de los frames disponibles y del movimiento entre frames. El Área de Búsqueda (SEARCH_AREA): Se permite cualquier valor por debajo del tamaño del frame. Valores elevados aseguran que los vectores de movimiento se tomarán adecuadamente, a expensas de contar con una carga computacional mucho más elevada. Valores más bajos aceleran la ejecución, pero ponen en compromiso el resultado si existe mucho movimiento entre frames. En tal caso, los vectores de movimiento no se calcularán apropiadamente. El tamaño de Macro-Bloque de baja resolución (MB_SIZE_LR): Se permite cualquier valor por debajo del tamaño del frame. Se prefieren valores grandes de tamaño de MB para movimiento global y valores más pequeños para movimiento local. Idealmente, el tamaño de MB debería coincidir con los objetos presentes en la escena. El método Block-Matching usado en el proceso de Estimación de Movimiento: Se permiten Full-Search (FS), New Three Steps (NTS) o vectores de movimiento desde un archivo. Los vectores de movimiento desde archivo son sólo para test. NTS es más rápido que FS, pero el vector de movimiento no se obtendrá con una distorsión mínima. Por otra parte, FS siempre obtiene el vector de movimiento con menor distorsión, a expensas de un coste computacional más elevado. El número de frames hacia atrás o hacia adelante en la Ventana de Trabajo de SR (WIN_BACK_FRAMES y WIN_FORWARD_FRAMES): Estos dos valores están sólo limitados por el número de frames disponibles en la secuencia de entrada. Debe considerarse no incluir frames no correlacionados dentro de la Ventana de Trabajo. La Máxima Diferencia de Píxel (MAX_PIX_DIF): Este parámetro constituye un umbral para evitar la inclusión de píxeles no correlacionados en el frame súper-resuelto. Un píxel candidato (de otro frame diferente al actual) se incluirá en la nueva rejilla de SR si su valor es próximo al correspondiente píxel interpolado. En otras palabras, el píxel candidato se incluirá si la diferencia entre éste y el píxel interpolado está por encima de un umbral denominado MPD (Maximum Pixel Difference). Un MPD nulo hará que todos los píxeles sean interpolados, evitando de esta forma artefactos, pero eliminando también las mejoras del proceso de SR. Por el contrario el valor máximo considerando 8 bits (255) permitirá usar todas las contribuciones de la SR, pero con el riesgo de combinar píxeles inadecuados y producir artefactos.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 59 3.2.4 Limitaciones del algoritmo BSR Una vez explicado el algoritmo BSR y los parámetros que lo caracterizan, se presentan en este apartado las principales limitaciones que presenta el algoritmo BSR y, en general, los algoritmos que se encuadran dentro de la categoría de fusión. Se describirán en este apartado dos conceptos básicos que complementan los parámetros del algoritmo BSR recientemente introducidos, y su caracterización en la presente Tesis Doctoral; estos son la información temporal y la información espacial. Información temporal 3.2.4.1 La información temporal se refiere a los frames captados en diferentes instantes de tiempo por una cámara de vídeo. En el algoritmo BSR la información temporal se identifica directamente con la Ventana de Trabajo WW (Working Window), relacionada con los parámetros WIN_BACK_FRAMES y WIN_FORWARD_FRAMES, que determinan el tamaño de la Ventana de Trabajo considerando el Frame Actual (CF, Current Frame), según la ecuación 3.1. 𝑊𝑊 = 𝑊𝐼𝑁_𝐵𝐴𝐶𝐾_𝐹𝑅𝐴𝑀𝐸𝑆+𝑊𝐼𝑁_𝐹𝑂𝑅𝑊𝐴𝑅𝐷_𝐹𝑅𝐴𝑀𝐸𝑆+1 (3.1) La Figura 3.10 representa cómo se forma la Ventana de Trabajo en el algoritmo BSR. En ésta se presenta una secuencia de 11 frames y se supone que CF = 6, así como que la Ventana de Trabajo es de +/-5 (#WBF = 5 y #WFF = 5). Figura 3.10.- Ejemplo de Ventana de Trabajo de +/- 5 (#WBF = 5 y #WFF = 5) con CF = 6 La determinación de la Ventana de Trabajo tomada como punto de partida en los algoritmos de fusión, que obtienen su resultado a partir de los frames anteriores y posteriores al frame actual, es fundamental para obtener resultados adecuados a la salida del algoritmo en forma de una imagen o una secuencia de vídeo de alta resolución. Valores elevados del tamaño de Ventana de Trabajo incrementan la probabilidad de obtener mejoras con las técnicas de SR, pero al mismo tiempo aumentan también la probabilidad de generar artefactos en el caso de que los frames estén poco correlacionados. Para comprender mejor este concepto se presentan a continuación tres ejemplos con tres de las secuencias consideradas en la presente Tesis Doctoral, que cubren casos muy generales en lo que se refiere a movimiento global y local, y cuyas características principales se pueden encontrar en el Anexo I, las cuales son Galdar, Mobcal y Reef. Mientras que la secuencia Galdar presenta un movimiento global puro, basado en el movimiento de una cámara en un plano fijo, la secuencia Mobcal combina tanto movimiento global como movimiento local de un calendario desplazándose hacia arriba y un tren moviéndose hacia la izquierda. Por último, la secuencia Reef presenta el caso de una secuencia real grabada en un entorno submarino que presenta movimiento local. La secuencia Galdar presenta unas características muy adecuadas para los algoritmos de fusión, proporcionando mejores resultados cuando la secuencia de partida tiene movimiento global, y no tanto con movimiento local. Para contrastar gráficamente este hecho se presentan a continuación varias gráficas obtenidas a partir del algoritmo BSR que relacionan la calidad objetiva de la imagen y el tiempo de cómputo, con el tamaño de la Ventana de Trabajo de SR.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 66 2. Se compara el frame actual (6) con los frames posteriores en la línea temporal: a. Al comparar con el frame “7”, se cumple la condición del umbral propuesto, por lo que se incluye este frame en el proceso. b. Al comparar con el frame “8”, se cumple la condición del umbral propuesto, por lo que se incluye este frame en el proceso. c. Al comparar con el frame “9”, NO se cumple la condición del umbral propuesto, por lo que NO se incluye este frame en el proceso y se deja de evaluar adelante, fijando un nuevo valor de #WFF=2. Por tanto, el efecto global del WCF es una reducción (si procede) de la Ventana de Trabajo de SR. En el caso del ejemplo, la Ventana de Trabajo se ha reducido de +/-5 a +/- 2, tal y como se representa en la Figura 3.15, donde el umbral se representa como WCFTHR. El tamaño de la Ventana de Trabajo del WCF (WCFWW, Window Cutting Filter Working Window) queda pues definida por la ecuación 3.2 a partir de los frames de la Ventana de Trabajo original (FWW, Frame of Working Window) que cumplan la condición del umbral WCFTHR de forma consecutiva. 𝑊𝐶𝐹𝑊𝑊 =1(𝐶𝐹)+∑𝐹𝑊𝑊/𝑆𝑆𝐼𝑀(𝑊𝑊,𝐹𝐴)>𝑊𝐶𝐹𝑇𝐻𝑅 (3.2) El Filtro de Ventana Cortante está limitado por el hecho de que una vez se encuentra un frame que no cumple la condición del umbral WCFTHR deja de evaluar frames anteriores (en caso de que se estén evaluando frames temporalmente previos al actual) o frames posteriores (en el caso de que se estén evaluando frames temporalmente posteriores al actual) que podrían cumplir la condición establecida por el umbral y aportar información al proceso de SR. Por esta razón se decidió implementar una segunda versión basada en un Filtro Selectivo de Ventana. Figura 3.15.- Aplicación del Filtro de Ventana Cortante a Ventana de Trabajo de Figura 3.10
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 67 Filtro Selectivo de Ventana 3.3.1.2 El Filtro Selectivo de Ventana (WSF, Window Selective Filter) recibe su nombre debido a que funciona en modo “selectivo”. El frame actual es comparado con la totalidad de frames de la secuencia, y si se cumple la condición del umbral, esto querrá decir que los frames son estructuralmente similares uno con respecto a otro y por tanto se considerarán en el proceso de SR. Como referencia se presenta un caso particular en la Figura 3.16 a partir del caso expuesto en la Figura 3.10. Se observa en el ejemplo que se evalúa la condición de filtrado para todos los frames de la secuencia. Esto incrementa ligeramente el coste computacional, al tener que realizar comparaciones para todos los frames, pero sin embargo considera frames que en el caso del Filtro de Ventana Cortante se podrían perder en el proceso. Este caso particular se da en los frames 1, 2 y 10. El tamaño de la Ventana de Trabajo del WSF (WSFWW, Window Selective Filter Working Window) queda pues definida por la ecuación 3.3 a partir de los frames de la Ventana de Trabajo original (FWW, Frame of Working Window) que cumplan la condición del umbral WSFTHR (Window Selective Filter THReshold). 𝑊𝑆𝐹𝑊𝑊 =1(𝐶𝐹)+∑𝐹𝑊𝑊/𝑆𝑆𝐼𝑀(𝑊𝑊,𝐹𝐴)> 𝑊𝑆𝐹𝑇𝐻𝑅 (3.3) Figura 3.16.- Aplicación de Filtro Selectivo de Ventana a la Ventana de Trabajo de Figura 3.10 Filtro Selectivo de Macro-Bloques 3.3.1.3 Las secciones anteriores han presentado Filtros Selectivos de Ventana, que consideran frames con un cierto grado de similitud para realizar el proceso de SR. Sin embargo, es posible que para ciertos frames cuyo contenido general sea distinto al frame actual, determinadas regiones presenten similitudes a nivel local. Una de las innovaciones introducidas en la presente Tesis Doctoral se basa en la selección de los Macro-Bloques (MB) más adecuados a utilizar en el proceso de SR.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 68 En secuencias con movimiento local, los objetos se pueden desplazar y cambiar de diferentes maneras dentro de un mismo frame, pudiendo aparecer oclusiones y vectores de movimiento fuera del Área de Búsqueda. En el mismo frame de referencia, es posible encontrar MBs que encajen y contribuyan a mejorar la resolución de la imagen súper-resuelta, mientras que otros introducen artefactos y ruido, y en consecuencia empeoran la calidad de la secuencia de SR. Así, se planteó un filtro a nivel de MB que mejorara la calidad de la imagen basándose en una selección apropiada de MBs a combinar. Para lograr mejores resultados con el algoritmo de SR evitando la aparición de artefactos en la imagen, la combinación de MBs se debe realizar en relación a su semejanza. Se determina si un MB debe utilizarse en el proceso de SR o si debe rechazarse antes de la etapa de Compensación de Movimiento, haciendo uso de un umbral a nivel de MB (BSFTHR, Block Selective Filter THReshold) basado en la diferencia media absoluta (MAD, Mean Absolute Difference) entre MBs. El MAD se calcula entre el bloque actual (currentBlock) y el bloque de referencia (refBlock) utilizando la expresión (3.4), donde M·N es el tamaño de los bloques, e i y j los índices de píxeles. La condición a cumplir para considerar o no un bloque en el proceso de SR se presenta en la Figura 3.17. 𝑀𝐴𝐷 =1 𝑀·𝑁 ∑ ∑|𝑐𝑢𝑟𝑟𝑒𝑛𝑡𝐵𝑙𝑜𝑐𝑘𝑖𝑗 −𝑟𝑒𝑓𝐵𝑙𝑜𝑐𝑘𝑖𝑗| 𝑁−1 𝑗=0 𝑀−1 𝑖=0 (3.4) Figura 3.17.- Condición necesaria para considerar un MB en el proceso de SR (Filtro Selectivo de MB) Una vez presentados el Filtro Selectivo de Ventana (Window Selective Filter, WSF) y el Filtro Selectivo de MB (Block Selective Filter, BSF) es coherente pensar que una combinación de ambos podría ser muy adecuada para establecer un filtro a dos niveles: un primer nivel grueso, a nivel de Ventana de Trabajo, y un segundo nivel fino, a nivel de MB; a este filtro conjunto se le ha denominado Filtro Selectivo de Ventana y MB (WBSF, Window & Block Selective Filter) y opera de tal manera que selecciona en primer lugar los frames a incluir en el proceso de SR haciendo uso del umbral WSFTHR, y partiendo de los frames seleccionados decide los MBs a utilizar comparando con el umbral BSFTHR.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 69 3.3.2 Topología de MBs adaptable – Tamaño de MB variable En el algoritmo de referencia BSR, el tamaño de MB es un parámetro que se debe ajustar para cada secuencia. Este parámetro tiene una influencia fundamental en la etapa de Estimación de Movimiento. En secuencias con movimiento global es preferible por lo general utilizar MBs de mayor tamaño, ya que los vectores de movimiento obtenidos son más precisos, lo que se traduce en una mejora de los resultados de SR. Sin embargo, en secuencias con movimiento local, MBs de tamaño elevado pueden contener objetos con vectores de movimiento diferentes, y la Estimación de Movimiento presentará una precisión inferior. En este caso, los MBs deben ser de un tamaño menor, tratando de dividir la imagen en MBs que contienen sólo los objetos con el mismo movimiento. La consideración de una topología de MBs adaptable se basa pues en un tamaño de MB variable (VBS, Variable Block Size) y consiste en una modificación del algoritmo BSR en el que la división de MBs se realiza de forma dinámica utilizando bloques de diferentes tamaños. La división variable de MBs se basa en la consideración de dos umbrales que se identifican directamente con los umbrales WSFTHR y BSFTHR. El primer umbral, VBSTHR1, decide si dividir o no un MB, comparando el SSIM entre bloques. En caso de que se verifique la condición de SSIM se calcula el MAD entre MBs y se utiliza para decidir el tamaño de un MB. Si el MAD de un MB grande es mayor que un umbral VBSTHR2, el MB se divide. El MAD se calcula iterativamente para los nuevos bloques más pequeños y se compara sucesivamente con el umbral VBSTHR2. Este proceso se repite hasta que se alcanza un tamaño de bloque mínimo de 4x4. El MAD se calcula entre el MB actual (currentBlock) y el MB de referencia (refBlock) utilizando una vez más la expresión (3.4). El proceso queda reflejado en la Figura 3.18. La primera aproximación que se implementó estaba basada sólo en el contenido del frame actual. Se buscó un criterio que fuese capaz de dividir la imagen según la textura del fotograma. Las zonas más homogéneas mantenían MBs de gran tamaño mientras que las zonas con más cambios de textura eran divididas iterativamente en MBs de menor de tamaño. Como resultado, se obtenía una única división de MBs del frame actual que se aplicaba a toda la Ventana de Trabajo de SR. Para realizar esta división, se utilizó como criterio el SADintra por píxel. El SADintra proporciona información sobre la diferencia que hay entre los píxeles de un MB y su valor medio. Mientras mayor sea esta diferencia, se observarán mayores contrastes en un MB. El criterio de decisión basado en la textura del frame actual no dio los resultados esperados y quedó patente que el criterio de división debía incluir información no sólo del frame actual sino que también debía incluir información del frame de referencia. Esto llevó a la búsqueda de nuevos criterios de decisión para dividir cada frame. Además, utilizar criterios que implicasen la fusión de información proveniente del frame de referencia con el frame actual conlleva a que se debe realizar una división distinta para cada frame de referencia dentro de la Ventana de Trabajo. Los siguientes criterios que se escogieron para realizar la división de MBs, estaban basados en los gradientes temporales y espaciales del frame. Como resultado, se alcanzaron ciertas mejoras en determinadas secuencias con mucho movimiento local utilizando como criterio el gradiente temporal. Estos resultados no eran adecuados en secuencias donde dominaba el movimiento global. El algoritmo dividía innecesariamente los frames provocando una pérdida de calidad en comparación con el uso de MBs de tamaño fijo. Analizando los resultados, se desarrolló el criterio definitivo. La combinación idónea para realizar la división de MBs resultó de la combinación de dos criterios: el SSIM entre los frames de referencia y el actual, y su gradiente temporal.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 70 Cuando el SSIM entre dos frames es alto, no es necesario realizar una división irregular del frame, los MBs de mayor tamaño son los que mejor se adaptan para obtener buenos resultados de calidad. En cambio, cuando el SSIM es menor, hay una mayor diferencia entre los frames y puede suponer un indicador de la aparición de movimiento local. En este caso, realizar una subdivisión de ciertos MBs aplicando como criterio el gradiente de movimiento mejora la calidad de la secuencia de vídeo. Figura 3.18.- Condiciones para dividir MBs en el proceso de SR usando VBS
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 71 El Filtro Selectivo de Ventana, el Filtro Selectivo de MB y la adaptación de la topología de los MBs (tamaño de MB variable) establecen un amplio abanico de variantes dependiendo de cuáles de ellos se activen, o no, con el objetivo de mejorar los resultados de BSR. En la Tabla 3.2 se desglosan las 7 variantes posibles (se considera como “0” la situación inicial presente en la BSR) dependiendo de las siguientes características: Selección a nivel de WW (Working Window) WSF (Window Selective Filter). Selección a nivel de MB (Macro-Block) BSF (Block Selective Filter). Tamaño de MB variable VBS (Variable Block Size). Tabla 3.2.- Nomenclatura asociada a Filtros Selectivos de Ventana y Macro-Bloque ID Acrónimo Nomenclatura WSF BSF VBS 0 BSR Baseline SR 0 0 0 1 VBSSR Variable Block Size SR 0 0 1 2 BSFSR Block Selective Filter SR 0 1 0 3 VBSFSR Variable Block Selective Filter SR 0 1 1 4 WSFSR Window Selective Filter SR 1 0 0 5 VBSWSFSR Variable Block Size & Window Selective Filter SR 1 0 1 6 WBSFSR Window & Block Selective Filter SR 1 1 0 7 WVBSFSR Window & Variable Block Selective Filter SR 1 1 1 3.3.3 Análisis del valor de los umbrales Los Filtros Selectivos de Ventana y MB presentados permiten obtener una disminución del tiempo de cómputo y una mejora de la calidad de la imagen, siempre y cuando el valor del umbral establecido sea adecuado. Ocurre lo mismo cuando se plantea mejorar la calidad con los umbrales establecidos para la división de MBs en VBS, aunque en este caso, por contra, el tiempo de cómputo se incrementará. Con el objetivo de modelar un valor de umbral del Filtro Selectivo de Ventana WSFTHR adecuado es fundamental entender cómo funciona éste: El valor de WSFTHR está directamente relacionado con la métrica SSIM, que varía entre 0 y 1 (o entre 0 y 100 de forma porcentual) para determinar la calidad global de una imagen. La caracterización del filtro se ha realizado utilizando valores porcentuales para una mayor claridad. Cada frame analizado se compara con respecto al frame actual usando la métrica de SSIM comparándola con el umbral (WSFTHR), de forma que si se cumple la condición de que SSIM (Frame Analizado, Frame Actual) > WSFTHR entonces el frame analizado se considerará en el proceso de SR. Esto da lugar a que: o Un valor WSFTHR = 100, hará que ningún frame analizado se incluya en el proceso de SR, ya que SSIM(Frame Analizado, Frame Actual) siempre será menor o igual a 100 (valor máximo del umbral). Este caso de umbral máximo se corresponde por tanto con la interpolación (sólo se considera el frame actual para el tratamiento de la imagen). o Un valor WSFTHR = 0, hará que todos los frames analizados se incluyan en el proceso de SR, ya que SSIM(Frame Analizado, Frame Actual) siempre será mayor a 0 (valor mínimo del umbral). Este caso de umbral mínimo se corresponde por tanto con la versión inicial del algoritmo de SR (BSR, Baseline Super-Resolution).
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 72 Atendiendo a las características del umbral utilizado, sería adecuado realizar un cálculo experimental del umbral del filtro a partir de las características de la secuencia. En primer lugar cabe destacar que en secuencias con movimiento global el valor de WSFTHR ha de ser bajo para asegurar de esta forma que los frames a descartar sean lo suficientemente diferentes, mientras que en secuencias con movimiento local acusado habrá que incrementar el valor de WSFTHR para de esta forma evitar incluir frames que introduzcan artefactos. El análisis de un amplio abanico de secuencias demostrará que valores alrededor de un 20% funcionan apropiadamente en secuencias con movimiento global, mientras que valores alrededor de un 80% presentan buenas prestaciones cuando se combina movimiento global con movimiento local. Un valor por debajo del 50% asegura que se eliminen los frames que se parecen muy poco de acuerdo con una evaluación subjetiva basada en MOS (Mean Opinion Score) [ZMZ+14] tal y como se presenta en la Tabla 3.3, por tanto, esto se podrá tener en cuenta para la gran mayoría de secuencias que no incluyan un movimiento local acusado. Tabla 3.3.- Relación entre SSIM y MOS SSIM MOS Calidad Deficiencia ≥ 0.99 5 Excelente Imperceptible [0.95, 0.99) 4 Buena Perceptible pero no molesta [0.88, 0.95) 3 Media Un poco molesta [0.5, 0.88) 2 Pobre Molesta < 0.5 1 Mala Muy molesta Así mismo, el criterio utilizado para tomar la decisión de filtrar a nivel de MB se basa en el MAD calculado durante la etapa de Estimación de Movimiento, comparándolo con el umbral BSFTHR. De esta manera, se incrementan las métricas de calidad de PSNR y SSIM de la secuencia en alta resolución. La condición sobre BSFTHR está invertida con respecto a WSFTHR con el fin de mantener coherencia con el cálculo establecido con MAD, y que los valores de umbral se mantengan cercanos a 0. El valor de MAD oscila entre 0 y 255, pero se ha normalizado para que varíe entre 0 y 100. Por tanto: Un valor BSFTHR = 0, hará que ningún MB analizado se incluya en el proceso de SR, ya que nunca se cumplirá que MAD(MB Referencia, MB Actual) sea menor que 0. Este caso de umbral mínimo se corresponde por tanto con la interpolación. Un valor BSFTHR = 100, hará que todos los MBs analizados se incluyan en el proceso de SR, ya que siempre se cumplirá que MAD(MB Referencia, MB Actual) sea menor que 100 (valor máximo del umbral). Este caso de umbral máximo se corresponde por tanto con la versión inicial del algoritmo de SR (BSR, Baseline Super-Resolution). En la Figura 3.19, se muestran los MBs filtrados para la secuencia Suzie en color negro, resaltándose a su izquierda que se trata de un frame de 160x128 píxeles formado por 20 MBs de 32x32 píxeles, de los cuales 15 han sido seleccionados para realizar el proceso de SR al superar la condición del umbral. El análisis de un amplio abanico de secuencias demuestra que al trabajar a un nivel mucho más fino a nivel de MB que a nivel de frame, un valor normalizado de BSFTHR 20 (MAD = 50) hace que un MB prácticamente no se parezca a otro, por lo que en este caso se verá en el próximo capítulo de la presente Tesis Doctoral que lo más adecuado es mantener un valor de BSFTHR bajo para secuencias con movimiento local y algo más elevado para secuencias con movimiento global.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 73 Figura 3.19.- Selección de MBs para aplicar SR en un frame de la secuencia Suzie utilizando FBS En la Figura 3.20 se muestran dos ejemplos de MB por división adaptativa utilizando VBS para dos frames de las secuencias Mobile y Foreman. La división en cada frame se modifica dinámicamente con el contenido de la secuencia. Las regiones de mayor complejidad se dividen en bloques de tamaño inferior para aumentar la precisión durante la etapa de Estimación de Movimiento. La definición de los umbrales VBSTHR1 y VBSTHR2 se identifica con la determinación de los umbrales WSFTHR y BSFTHR, respectivamente. a) b) Figura 3.20.- División de MBs en frames de las secuencias Mobile(a) y Foreman(b) usando VBS Finalmente, se ha de considerar que en la primera implementación del Filtro Selectivo de MB el umbral de decisión, para descartar o incluir MBs en el proceso de SR era estático y debía fijarse al configurar los parámetros del algoritmo. Con el objetivo de mejorar la respuesta del algoritmo en secuencias con características cambiantes y reducir la dependencia de los resultados con el umbral establecido en los parámetros de configuración del algoritmo, se desarrolló un filtro de MB con un umbral dinámico adaptativo que se adaptase al contenido de la secuencia de vídeo. Para conseguir este objetivo, se desarrolló un umbral de decisión que se modula para cada MB utilizando como criterio los vectores de movimiento resultantes del proceso de Estimación de Movimiento. En la mayoría de las situaciones, se observa que al realizar el proceso de Estimación de Movimiento de los MBs del frame actual con respecto al frame de referencia, aquellos MBs con vectores de movimiento mayores suelen dar como resultado una peor correspondencia entre MBs. Como resultado, en el proceso de SR estos MBs presentan mayor probabilidad de introducir artefactos en la secuencia de HR. Por ello, es coherente introducir un umbral que sea más restrictivo cuando se detecte en la imagen mayor movimiento entre MBs. Así, el criterio de decisión se modificó aplicando la expresión 3.5 como criterio para realizar el filtro de los MBs. 𝑀𝐴𝐷 <𝐵𝑆𝐹𝑇𝐻𝑅∗[1−(|𝑀𝑉|/𝑆𝐴)], (3.5) donde MV es el vector de movimiento considerado y SA el Área de Búsqueda. Con este criterio de decisión, se obtuvieron mejores resultados de calidad en varias secuencias, especialmente en aquellas en las que existe mayor variación de su contenido, tal y como se presentará en el capítulo de Resultados.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 74 3.3.4 Pseudocódigo del algoritmo Se realizó un estudio exhaustivo con el fin de determinar la forma óptima de integrar las aportaciones de WSFSR, BSFSR así como la topología de MBs adaptable [R4]. El resultado de este estudio se presenta en la Figura 3.21, que introduce el pseudocódigo asociado. Se observa en el pseudocódigo que se siguen los siguientes pasos: Se realiza una selección de los frames a considerar en el proceso de SR en caso de que el flag WSF esté activado. Para ello se compara el resultado del SSIM del frame actual con el frame tomado como referencia en el proceso de SR, de forma que si este valor se encuentra por debajo del valor del umbral WSFTHR, se descarta dicho frame. Partiendo de los frames de la Ventana de Trabajo considerados, se realiza el proceso de Estimación de Movimiento haciendo uso de un tamaño de MB fijo o variable, dependiendo de si el flag VBS está activado o no, respectivamente. Si VBS está activado se considera MB variable y se dividen los MBs considerando el valor de los umbrales VBSTHR1 y VBSTHR2, tal y como se ha explicado en el apartado anterior. Finalmente se realiza una selección de los MBs a considerar en el proceso de SR en caso de que el flag BSF esté activado. Para ello se compara el resultado del MAD del MB actual (multiplicado por [1-|MV|/SA] si se considera umbral adaptativo) con el MB tomado como referencia en el proceso de SR, de tal forma que si este valor se encuentra por debajo del valor de umbral BSFTHR, se descarta dicho MB. Figura 3.21.- Pseudocódigo incluyendo filtros selectivos y topología de MBs adaptable Entradas: Secuencia de frames de LR : primer_frame:último_frame Flags: WSF, VBS, BSF Umbrales: WSFTHR, VBSTHR1, VBSTHR2, BSFTHR Número de frames de la Ventana de Trabajo: tamaño_ventana Salidas: secuencia_SR for frame_actual = primer_frame : último_frame imagen_SR = Muestrear con huecos(frame_actual) Crear Ventana de Trabajo = min(frame_actual-tamaño_ventana,primer_frame):max(frame_actual+tamaño_ventana,último_frame) for ref_frame = frame en Ventana de Trabajo excepto frame_actual if WSF if SSIM(frame_actual, ref_frame) >= WSFTHR, máscara de Ventana de Trabajo (frame_actual) = 1 else máscara de Ventana de Trabajo (frame_actual) = 0 end if if(máscara de Ventana de Trabajo (frame_actual) = 1) if VBS if SSIM(frame_actual, ref_frame) <= VBSTHR1 VBS_frame_division(frame_actual, ref_frame, VBSTHR2) for i = 1 : número de Macro-Bloques MB_actual[i][j] = seleccionar MB i,j en frame_actual ref_MB[i][j] = seleccionar MB i,j en ref_frame vector_movimiento[i],MAD = Estimación de Movimiento(MB_actual[i][j],ref_MB[i][j]) end if else for i = 1 : filas_MB for j = 1 : columnas_MB MB_actual[i][j] = seleccionar MB i,j en frame_actual ref_MB[i][j] = seleccionar MB i,j en ref_frame vector_movimiento[i][j], MAD = Estimación de Movimiento con tamaño de MB fijo (MB_actual[i][j], ref_MB[i][j]) end if end if BSFTHR = BSFTHR*(1-|vector_movimiento|/SA) if BSF & (MAD < BSFTHR) imagen_SR = imagen_SR + Sobremuestreo(ref_MB[i+vector_movimiento.x[i][j], j+vector_movimiento.y[i][j]) end if imagen_SR = Rellenado de Huecos(imagen_SR) almacenar SR_image en secuencia_SR almacenar secuencia_SR
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 75 3.4 ENTORNO MULTI-CÁMARA En esta sección, se describen los métodos propuestos para combinar la información temporal y espacial proporcionada por un sistema MC mediante el uso del BSR explicado en la sección 3.2. El objetivo de estos métodos es conseguir combinar la información temporal y espacial de manera que se aumente la calidad de la secuencia de salida de una de las cámaras del array MC [C5, R3]. Por otra parte, se han implementado una serie de algoritmos de preprocesamiento para estudiar qué partes de las secuencias de vídeo aportan más información a la secuencia súper-resuelta. Este estudio tiene una doble finalidad: primero, valorar si es posible descartar partes de los frames de las secuencias de vídeo para reducir el coste computacional; y segundo, analizar el efecto que tiene la cantidad de solape entre las cámaras del array MC sobre la calidad de la secuencia súper resuelta. 3.4.1 Métodos de SR con MC propuestos Se presentan aquí, los diferentes métodos de SR usando MC propuestos en la presente Tesis Doctoral. Para ello, se han implementado un total de tres métodos diferentes, donde dos de ellos hacen uso de procesos de SR temporal y SR espacial para obtener la secuencia súper-resuelta de salida. Finalmente un tercer método combina la información temporal y espacial (método Mixto). La SR espacial hace referencia a la posición de las cámaras en el mismo instante de tiempo, mientras que la SR temporal está relacionada con el flujo temporal que sigue cada cámara. Método Temporal-Espacial (Temporal-Spatial SR) 3.4.1.1 El método aquí expuesto, hace uso de la información temporal y espacial aportada por el sistema MC para obtener la secuencia súper-resuelta de salida en dos fases. En una primera fase se combina únicamente la información temporal, y en una segunda fase se combina la información espacial. Es por ello que este método se ha denominado Temporal-Espacial (Temporal-Spatial SR), queriendo expresar que la secuencia final obtenida será el resultado de realizar dos procesos de SR consecutivos, así como el orden en que se combina la información temporal y espacialmente. Tal y como se aprecia en la Figura 3.22, en primer lugar se súper-resuelven las secuencias de las cámaras del array MC aplicando un proceso de SR haciendo uso de la información temporal de cada una de ellas. Este proceso de SR se realiza haciendo uso de una Ventana de Trabajo Temporal definida por el usuario (Temporal Working Window, TWW), donde se decidirá la cantidad de frames a considerar en este proceso, tal y como sucedería en el algoritmo BSR. A la salida de esta primera fase se dispondrá por tanto de K secuencias súper-resueltas, donde el valor K estará determinado por las dimensiones del array MC R×S, siendo R las filas y S las columnas que definen el tamaño del array, o incluso podrían representar las dimensiones de un subconjunto de cámaras dentro de ese array MC. La secuencia resultante de este primer proceso de SR será considerada como secuencia de Resolución Mediatemporal (Medium Resolutiontemporal, MRt), tal y como se indica en la Figura 3.21. La relación entre la resolución de la secuencia de entrada (secuencia de Baja Resolución, LR) y la resolución de la secuencia de salida (MRt), es un Factor de Escala de tipo entero definido por el usuario, denominado “EscaladoTemporal”.
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 82 3.4.3 Pseudocódigo del algoritmo Los métodos de SR MC y los modos de pre-procesamiento introducidos se integraron algorítmicamente tal y como se presenta en el pseudocódigo de la Figura 3.28. Del pseudocódigo se desprende que el principal aspecto a tener en cuenta en la integración del sistema MC en el algoritmo de SR consiste en la definición de la Ventana de Trabajo o las Ventanas de Trabajo apropiadas para cada método de SR, considerando adicionalmente el modo de pre-procesamiento seleccionado en cada caso [R3]. Para integrar la información aportada por el array MC en el algoritmo de SR es necesario establecer un conjunto de nuevos parámetros de entrada, cuya finalidad es poder activar el modo de pre-procesamiento correspondiente, así como el método de SR deseado. Estos parámetros indican: Cámara del array MC que se va súper-resolver (cámara_referencia). Modo de pre-procesamiento que se va a aplicar (modo_procesamiento) incluyendo como opciones Full_Frame, Overlap u Overlap+Borders). Método MC que se va a emplear (Método), cuyas opciones se corresponden con Temporal-Espacial, Espacial-Temporal, Mixto y BSR. Número de cámaras (num_cámaras) que contiene el array MC, que combinándolo con el valor de la cámara de referencia, permite determinar las dimensiones de la Ventana de Trabajo espacial, así como de la Ventana de Trabajo del método Mixto. Para considerar esto último hace falta conocer además el número de instantes de tiempo (num_instantes_tiempo), anteriores y posteriores al frame actual, que se deseen considerar en el método de SR MC Mixto. Para la ejecución de los métodos de SR MC, se ha de determinar en primer lugar el tamaño de la Ventana de Trabajo que se va a usar en el proceso de SR Espacial. Para ello se determinan cuáles son el primer frame y último frame que componen la Ventana de Trabajo a partir de los parámetros de entrada num_cámaras y cámara_referencia. Posteriormente, para cada frame de la cámara a súper-resolver se creará una Ventana de Trabajo que contiene los frames correspondientes a cada método (usando la función Crear_Ventana_Trabajo). En el caso del método de SR MC Temporal-Espacial y del método de SR MC Espacial-Temporal, se crearán una Ventana de Trabajo para cada proceso de SR. Posteriormente, si se ha seleccionado el modo de pre-procesamiento Overlap u Overlap+Borders, se obtendrá el offset que existe entre las cámaras. Este offset servirá para dividir los frames de la Ventana de Trabajo en el solape y los bordes, en función del modo de pre-procesamiento seleccionado. El modo de pre-procesamiento elegido se aplicará directamente en el método de SR MC Mixto y en la primera fase del método de SR MC Espacial-Temporal, mientras que en el método de SR MC Temporal-Espacial se procesará en la segunda fase, puesto que es donde existe una relación espacial entre los frames. Una vez preprocesada la Ventana de Trabajo, según el modo de pre-procesamiento elegido, se procede a ejecutar el proceso de SR sobre el frame actual considerando la información que éste contiene. De este modo se obtiene la versión súper-resuelta del frame actual, la cual en el método de SR MC Mixto se corresponde con la secuencia HR súper-resuelta. Sin embargo para los métodos de SR MC Temporal-Espacial y de SR MC Espacial-Temporal, el resultado será un frame de la secuencia MR, que constituirá la entrada del segundo proceso de SR. En esta segunda fase se creará una nueva Ventana de Trabajo, temporal o espacial, a partir de los frames de la secuencia MR para generar finalmente la versión súper-resuelta HR del frame actual.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 83 Figura 3.28.- Pseudocódigo del algoritmo de SR incluyendo métodos Multi-Cámara Entradas: Secuencia de frames de Baja Resolución: for primer_frame to último_frame Número de frames para formar la Ventana de Trabajo: tamaño_ventana Cámara a ser súper-resuelta: cámara_referencia Número de cámaras del array Multicámara: num_cámaras // cuando BSR -> 1 Método de SR: Método // BSR, Temporal-Espacial, Espacial-Temporal o Mixto Modo de pre-procesamiento: modo_procesamiento // Full Frame, Overlap, Overlap+Borders Número de instantes de tiempo a considerar en la SR Mixta: num_instantes_tiempo Salida: Secuencia_SR for frame_actual = primer_frame : num_cámaras : último_frame imagen_SR = Muestrear con huecos(frame_actual) case Método when BSR || Temporal-Espacial Ventana de Trabajo = Crear_Ventana_Trabajo(SR Temporal) when Espacial-Temporal Ventana de Trabajo = Crear_Ventana_Trabajo(SR Espacial) others // SR Mixto Ventana de Trabajo = Crear_Ventana_Trabajo(SR Mixta) if Método: not BSR and not Full_Frame offset = offset_cámaras (Ventana de Trabajo) end if if Método: not (Temporal-Espacial or BSR) preprocesar(Ventana de Trabajo, offset, modo_procesamiento) end if if Método: Temporal-Espacial for cámara_actual = 1:num_cámaras imagen_MR (cámara_actual) = SR(Ventana de Trabajo, frame_actual) end for Ventana de Trabajo = Crear_Ventana_Trabajo(SR Espacial) preprocesar(Ventana de Trabajo, offset, modo_procesamiento) imagen_SR = SR(Ventana de Trabajo, frame_actual) else if Método: Espacial-Temporal imagen_MR = SR(Ventana de Trabajo, frame_actual) Ventana de Trabajo = Crear_Ventana_Trabajo(SR Temporal) imagen_SR = SR(Ventana de Trabajo, frame_actual) else // SR Mixto imagen_SR = SR(Ventana de Trabajo, frame_actual) end if imagen_SR = Rellenado de Huecos(imagen_SR) almacenar imagen_SR en Secuencia_SR almacenar Secuencia_SR Función Crear_Ventana_Trabajo(Tipo_SR) offset_primera_cámara = cámara_referencia + 1 offset_última_cámara = num_cámaras - cámara_referencia case tipo_SR when SR Temporal Ventana de Trabajo = max(frame_actual – tamaño_ventana, primer_frame) to min(frame_actual + tamaño_ventana, último_frame) when SR Espacial Ventana de Trabajo = max(frame_actual – offset_primera_cámara, primer_frame) to min(frame_actual + offset_última_cámara, último_frame) others // SR Mixto primera_cámara_mixto = offset_primera_cámara + (num_cámaras x num_instantes_tiempo) última_cámara_mixto = offset_última_cámara + (num_cámaras x num_instantes_tiempo) Ventana de Trabajo = max(frame_actual – primera_cámara_mixto, primer_frame) to min(frame_actual + última_cámara_mixto, último_frame) return Ventana de Trabajo end Función
CAPÍTULO 3.- CONTRIBUCIONES ALGORÍTMICAS 84 3.5 CONCLUSIONES En este capítulo, se han introducido las aportaciones algorítmicas desarrolladas en la presente Tesis Doctoral. Aunque la exposición desarrollada en el capítulo se ha presentado de forma evolutiva con respecto al esquema temporal de la presente Tesis Doctoral, como conclusión al capítulo se presenta en la Figura 3.29 un esquema global de las aportaciones, tomando como referencia una secuencia de entrada de baja resolución LR hasta llegar a una secuencia de vídeo de salida de alta resolución HR. Se observa en la Figura 3.29 que tras un reordenamiento de los frames de las cámaras de entrada de un array MC (por ejemplo aquí 2x2), se pasa a realizar el pre-procesamiento MC seleccionando la opción Full-Frame (se considera toda la información), el solape (Overlap), o la información combinada de solape y bordes (Overlap+Borders). Se aplica entonces uno de los tres métodos de SR con MC desarrollados: Temporal-Espacial, Espacial-Temporal o Mixto. Finalmente, se aplica el Filtro Selectivo de Ventana o de MB, además del uso de la topología Macro-Bloques adaptable (si se selecciona esta opción), obteniendo una secuencia de HR a la salida. Figura 3.29.- Diagrama global de las aportaciones algorítmicas desarrolladas
85 Capítulo 4 RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Índice del capítulo Página 4.1.- Introducción …………………………………..…………………………………………………... 86 4.2.- Entorno de simulación y análisis …....………………………………………………...... 87 4.3.- Simulaciones ...………………………................................................................. 92 4.4.- Conclusiones ……………………………….…………………………………………………….... 125 Si buscas resultados distintos, no hagas siempre lo mismo Albert Einstein, científico alemán nacionalizado estadounidense (1879 – 1955)
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 86 4.1 INTRODUCCIÓN Una vez presentadas las contribuciones algorítmicas aportadas en la presente Tesis Doctoral, se dedica este capítulo a introducir el entorno de simulación específico desarrollado para validar las aportaciones relativas a filtros selectivos y topología de Macro-Bloques adaptable, así como para analizar los resultados más significativos obtenidos a partir del proceso de caracterización de prestaciones. El entorno de simulación, que se introduce en la sección 4.2, está basado en un banco de pruebas o testbench que integra un modelo de verificación completo para el conjunto de contribuciones realizadas, introduciendo el pre-procesamiento y el post-procesamiento necesarios para ejecutar la validación de los algoritmos desarrollados. Los resultados de simulación siguen el flujo de desarrollo de la Tesis Doctoral, tal y como se presentaron en el capítulo anterior, partiendo del Filtro Selectivo de Ventana, pasando por el Filtro Selectivo de Macro-Bloques hasta llegar a la topología de Macro-Bloques adaptable. Por otra parte, si bien el filtro constituye la salida del sistema completo presentado en las conclusiones del capítulo anterior, tal y como se presenta en la Figura 4.1, en este capítulo se presentará con independencia de dicho sistema, aplicándolo a secuencias tomadas por cámaras simples. Figura 4.1.- Diagrama global de las aportaciones algorítmicas desarrolladas destacando filtros
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 87 4.2 ENTORNO DE SIMULACIÓN Y ANÁLISIS Es necesario validar el procedimiento empleado en esta Tesis Doctoral y verificar el flujo de diseño en lo que se refiere a las aportaciones relacionadas con filtros selectivos y topología de Macro-Bloques adaptable. Para ello se ha implementado un banco de pruebas o testbench, que no constituye un sistema aislado, sino que se integra en el código de partida. Por este motivo, la implementación de este banco de pruebas representa la modificación más compleja a realizar. Además, se debe tener especial cuidado a la hora de tratar con tamaños de imágenes variados en cada fase del proceso. Todo ello es fundamental para poder establecer comparaciones con otras aportaciones desarrolladas en el Estado del Arte. En la Figura 4.2 se muestra el diseño del banco de pruebas desarrollado. En éste se puede observar la evolución de las imágenes y de sus tamaños, aspecto que será tratado posteriormente. En primer lugar, se recibe una secuencia de imágenes de alta resolución como entrada y se recortan para adecuar las imágenes de forma previa al diezmado. En el siguiente paso se diezma la secuencia de imágenes desplazadas según el factor indicado por el parámetro Scale Factor asociado al proceso de SR, para así crear la secuencia de baja resolución que simula la entrada original al proceso. Esta secuencia es almacenada en un archivo, cuyo nombre puede indicar el usuario a través del fichero de configuración. A partir de este punto se aplican, tanto el proceso de SR como el proceso de interpolación. El resultado obtenido es de alta resolución, si bien no es necesariamente el mismo tamaño que la secuencia original, pues recuérdese la posibilidad de tener que recortar las imágenes originales para realizar el diezmado. El proceso de SR se puede ejecutar en las diferentes aproximaciones introducidas en la presente Tesis Doctoral. Los posibles modos de trabajo del algoritmo son: Baseline Super-Resolution (BSR): Es el algoritmo que se toma como punto de partida para la presente Tesis Doctoral, adaptado para cumplir con los requisitos exigidos que permitan obtener a la salida, tanto frames, como secuencias de vídeo con el formato adecuado. Window Selective Filter (WSF): Modo Filtro Selectivo de Ventana activado. Block Selective Filter (BSF): Filtro Selectivo de MB activado. Variable Block Size (VBS): Tamaño de MB Variable activado. Para poder aplicar la relación señal a ruido de pico, PSNR (Peak Signal to Noise Ratio), y el índice de similitud estructural, SSIM (Structural SIMilarity index) con el fin de obtener una medida objetiva de la calidad entre la imagen original y las obtenidas como resultado de aplicar los procesos de SR e interpolación, es necesario recortar también la imagen original. Así, las imágenes tienen el mismo tamaño y pueden ser comparadas adecuadamente. Para el estudio de secuencias MC se han desarrollado testbenches específicos para cada método, que se explicarán posteriormente.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 88 Figura 4.2.- Diseño del Banco de Pruebas (Testbench) 4.2.1 Análisis de la adecuación del tamaño de la imagen Supóngase que el tamaño de la imagen original es de m x n píxeles. Este tamaño puede no ser compatible con el factor de diezmado, por lo que se utiliza la función cropborders(), que elimina las filas y columnas necesarias de modo que se pueda diezmar la imagen resultante. Suponiendo que el número de filas a recortar es cropRowsSC, y que cropColsSC representa el número de columnas, tras cropBorders() la secuencia tendrá un tamaño de (m - cropRowsSC) x (n - cropColsSC) píxeles.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 89 El formato de muestreo que se utiliza en la presente Tesis Doctoral es el 4:2:0, que es uno de los formatos de muestreo de crominancias (chroma) más utilizados (ver en Figura 4.3.a diferentes formatos). En el formato 4:2:0 se muestrea toda la información de luminancia y las crominancias se muestrean a la mitad de frecuencia, tanto en horizontal como en vertical, tal y como se representa en la Figura 4.3. Se ha de considerar que para que la secuencia recortada tras cropBorders(), cuya resolución se denominará LHR (Lower High Resolution), pueda ser diezmada, ha de cumplir las siguientes condiciones: 1. Las columnas y filas de resolución LHR han de ser divisibles por el Factor de Escala (Scale Factor). 2. Tras dividir por el Factor de Escala, las columnas y filas resultantes han de ser divisibles por 2 para poder mantener de forma adecuada la relación entre crominancias y luminancias. Por tanto, para que la resolución LHR pueda ser diezmada, las columnas y filas de resolución LHR han de ser divisibles por un valor doble al Factor de Escala. a) b) Figura 4.3.- Formatos de muestreo (a) y representación de píxeles en formato 4:2:0 (b) En el código de partida se comprueba la compatibilidad del tamaño de la imagen de entrada con el tamaño seleccionado para el MB. Para lograr que esto se cumpla tras haber diezmado se emplea de nuevo la función cropBorders(), que recorta las columnas necesarias de la imagen de modo que el tamaño resultante no presente problemas de compatibilidad. Si las filas que es necesario recortar se denominan cropRowsMB, y las columnas cropColsMB, la secuencia de LR será de resolución [((m - cropRowsSC) / Scale Factor) - cropRowsMB] x [((n - cropColsSC) / Scale Factor) - cropColsMB] píxeles.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 90 Como se puede observar, en función de los parámetros seleccionados, el tamaño final de la imagen variará. Además, es necesario emplear diferentes identificadores para los tamaños que aparecen a lo largo del proceso. Hacer uso en dos ocasiones de la función cropBorders() requiere la creación de una nueva resolución, denominada en este caso ULR (Upper Lower Resolution). La Tabla 4.1 muestra la solución planteada para el siguiente caso de referencia: Secuencia: galdar_O_352x288.yuv. Factor de Escala: 3. Tamaño de MB: 16. Tabla 4.1.- Ejemplo de la compatibilidad de tamaños Situación Filas (píxeles) Columnas (píxeles) Resolución Imagen original 288 352 VHHR Secuencia tras cropBordersSC 288 348 LHR Secuencia diezmada 96 116 ULR Secuencia tras cropBordersMB 96 112 LR Imagen resultante 288 336 HR La Tabla 4.2 resume de manera genérica las resoluciones consideradas en el dimensionamiento de las imágenes descrito. Tabla 4.2.- Resoluciones consideradas Resolución Filas (píxeles) Columnas (píxeles) VHHR m n LHR (m - cropRowsSC) (n - cropColsSC) ULR [(m - cropRowsSC) / Scale Factor] [(n - cropColsSC) / Scale Factor] LR [((m - cropRowsSC) / Scale Factor) - cropRowsMB] [((n - cropColsSC) / Scale Factor) - cropColsMB] HR [m - cropRowsSC - (cropRowsMB x Scale Factor)] [n - cropColsSC - (cropColsMB x Scale Factor)] Finalmente, con el fin de generar la imagen necesaria para llevar a cabo el cálculo del PSNR y del SSIM en relación con la imagen súper-resuelta y la imagen interpolada, es necesario partir del resultado obtenido por la función cropBorders() para la compatibilidad del tamaño con el factor de diezmado, empleando de nuevo la misma función con el fin de recortar las filas y columnas necesarias para compensar el recorte que se realizará posteriormente, asegurando así la compatibilidad del tamaño de MB seleccionado. 4.2.2 Estudio sobre la unificación de la función cropBorders() Durante el desarrollo de la presente Tesis Doctoral, se intentaron unificar los dos bloques en los que se emplea la función cropBorders(). De acuerdo al procedimiento descrito, el primero se emplea para la compatibilidad con el Factor de Escala, y el segundo para la compatibilidad con el tamaño de MB seleccionado. A partir de la Figura 4.2, se ha desarrollado un estudio, con el fin de obtener las condiciones que se tendrían que cumplir para poder implementar un solo bloque que unifique los criterios requeridos por ambos. La primera secuencia, de tamaño VHHR (Very High Resolution), tiene unas dimensiones de m x n píxeles. De este modo:
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 91 Si [m / (2*Scale Factor)] ≠ entero m’ = m – resto[m / (2* Scale Factor)] (4.1) Si [n / (2* Scale Factor)] ≠ entero n’ = n – resto[n / (2* Scale Factor)] (4.2) Es decir, si estas dimensiones no son compatibles con el doble del Factor de Escala indicado, será necesario aplicar un recorte en los bordes de la imagen, un número de filas y columnas (cropRowsSC y cropColsSC) tal que el tamaño resultante obtenido, m’ y n’, respectivamente sea divisible por el factor de diezmado. Esta nueva resolución de imagen se denomina LHR (Lower High Resolution). Resulta obvio que cropRowsSC y cropColsSC se obtienen a partir de las ecuaciones anteriores del siguiente modo: cropRowsSC = resto[m / (2* Scale Factor)] (4.3) cropColsSC = resto[n / (2* Scale Factor)] (4.4) Posteriormente se aplica el diezmado y se obtiene la secuencia de tamaño ULR (Upper Lower Resolution), de PxQ píxeles, donde: P = m’ / (2* Scale Factor) (4.5) Q = n’ / (2* Scale Factor) (4.6) Por otro lado, si este tamaño no es compatible con el correspondiente al tamaño de MB establecido, es necesario también recortar tantas filas y columnas (cropRowsMB y cropColsMB) como sea necesario para poder procesar la información: Si P/MB_SIZE ≠ entero P’ = P – resto(P / MB_SIZE) (4.7) Si Q/MB_SIZE ≠ entero Q’ = Q – resto(Q / MB_SIZE) (4.8) De estas expresiones se deduce que el modo de obtener el número filas y columnas a recortar es: cropRowsMB = resto(P / MB_SIZE) (4.9) cropColsMB = resto(Q / MB_SIZE) (4.10) Para poder integrar las dos funcionalidades en un solo bloque es imprescindible cumplir las siguientes condiciones, o conseguir que se unifiquen en una sola operación: [m/(2* Scale Factor)] ≡ entero , [n/(2* Scale Factor)] ≡ entero (4.11) P/MB_SIZE ≡ entero , Q/MB_SIZE ≡ entero (4.12) Para ello, habría que obtener el número de filas y columnas que es necesario recortar de forma que, a partir de este punto, los siguientes tamaños de imagen que se vayan obteniendo sean compatibles con cada uno de los procesos a ejecutar posteriormente. Ante la problemática que esto conlleva, y siendo posible que no exista una solución válida para este planteamiento, se decidió finalmente mantener dos bloques cropBorders() independientes.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 98 a) b) Figura 4.11.- Secuencia Galdar para umbral óptimo = 20%. a) PSNR, b) SSIM a) b) Figura 4.12.- Secuencia Flower para umbral óptimo = 30%. a) PSNR, b) SSIM Tamaño de Ventana de Trabajo en frames para cada frame analizado 4.3.1.4 Finalmente, sería interesante valorar cómo varía el tamaño de la Ventana de Trabajo (en frames) dependiendo del frame analizado en la secuencia. Para ello se presentan gráficas que especifican el valor de la Ventana de Trabajo de SR utilizada para cada uno de los frames analizados en el proceso de SR considerando el valor óptimo del Filtro Selectivo de Ventana. Para el ejemplo de referencia se utilizará un número de frames totales de 30. Por otra parte, la Ventana de Trabajo de SR utilizada por BSR es de +/-20. Esto significa que, como se representa en la Figura 4.13, los frames utilizados en el proceso de SR para BSR irán desde 21 para el frame nº1 (el actual más los 20 posteriores) y el frame nº 30 (el actual y los 20 anteriores) hasta un máximo de 30 (caso particular de los frames 10 hasta el 21). Por otra parte, los frames utilizados para WSFSR se seleccionarán dependiendo de la decisión tomada por la métrica SSIM con respecto al umbral de decisión establecido. Así, en la Figura 4.13 se pueden ver los siguientes casos: Para el frame nº1, WSFSR utiliza tan solo 2 frames (el actual y 1 posterior) frente a los 21 frames utilizados en BSR. Esto se traduce en un incremento de calidad de 0.2 dB en PSNR (0.05% en SSIM) frente a INT y de casi 3 dB (3% en SSIM) frente a BSR. Para el frame nº5, WSFSR utiliza 4 frames frente a los 25 frames utilizados en BSR. Esto se traduce en un incremento de calidad de 1.4 dB (2% en SSIM) frente a INT y de 1.3 dB (1% en SSIM) frente a BSR. Para el frame nº16, WSFSR utiliza 8 frames, frente a los 30 frames utilizados en BSR. Es el único caso de los 30 frames analizados en el que BSR se encuentra por encima de WSFSR en PSNR (0.2 dB) y SSIM (0.2%). En cualquier caso, la diferencia es prácticamente nula.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 99 Figura 4.13.- Ventana de SR, PSNR y SSIM con respecto a número de frame – secuencia Foreman. Se analizan diferentes valores de umbral (de arriba abajo: 0, 80 y 100)
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 100 Tal y como se comentó en la sección 4.3.1.2, la disminución del tiempo de cómputo a medida que aumenta el umbral se debe al descarte del número de frames. Se presentan aquí los casos particulares de las secuencias Galdar y Suzie, en los que se observa cómo para Galdar, cuyas curvas de tamaño de Ventana de Trabajo están representadas en la Figura 4.14, se presenta una disminución progresiva a medida que aumenta el umbral, mientras que para Suzie, la situación, representada en la Figura 4.15, es más abrupta, descartando frames a valores altos del umbral. Figura 4.14.- Ventana de Trabajo de SR con respecto a número de frame – secuencia Galdar. Se usan diferentes valores de umbral (de arriba abajo: 0, 20, 40, 60, 80 y 100) Figura 4.15.- Ventana de Trabajo de SR con respecto a número de frame – secuencia Suzie. Se usan diferentes valores de umbral (de arriba abajo: 0, 70, 80, 90 y 100)
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 101 Medida subjetiva de calidad 4.3.1.5 La medida subjetiva de calidad se basa en la comparación directa de los frames de salida. Para ello se comparan WSFSR, BSR, e INT con la secuencia original. Aun siendo una medición que depende del sujeto que la realice, es adecuada para tomar decisiones en la mejora continua de los algoritmos propuestos. En la Figura 4.16 se presenta el frame 20 de la secuencia Foreman, observándose que en este caso, una selección adecuada de frames para el cálculo del frame súper-resuelto a la salida (WSFSR selecciona para este frame un total de 24 frames en lugar de los 30 frames utilizados por BSR), evita la aparición de artefactos a la vez que reduce el tiempo de cómputo. a) b) c) d) Figura 4.16.- Análisis del frame 20 de la secuencia Foreman QCIF para WSFSR. a) Original, b) WSFSR, c) BSR, d) Interpolación La mejora de calidad se da en la mayoría de los casos en la disminución de artefactos y el suavizado de bordes. En cualquier caso, cabría esperar que la aplicación de un filtro a nivel más fino (Macro-Bloque) mejorara aún más tanto la calidad objetiva como subjetiva a nivel de artefactos.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 102 4.3.2 Simulaciones con Filtro Selectivo de Macro-Bloque En este apartado se presentan las simulaciones realizadas con Filtro Selectivo de Macro-Bloque (Block Selective Filter SR, BSFSR) considerando las secuencias de referencia utilizadas en el apartado anterior. En la Tabla 4.5 se presenta un resumen de los resultados obtenidos. Esta tabla presenta las siguientes columnas: ID: Identificador de secuencia. Se presentan un total de 9 secuencias. Secuencia: Nombre de la secuencia. SA: Área de Búsqueda (Search Area), en píxeles, con la que se obtienen los mejores resultados. BSFTHR: Umbral (Block Selective Filter THReshold) óptimo para la secuencia en cuestión. En el siguiente capítulo se detalla el proceso de su obtención. MBS: Tamaño de MB (Macro-Block Size), en píxeles, con el que se obtienen los mejores resultados. Diferencia de PSNR: Diferencias del valor de PSNR entre BSR e interpolación bilineal (INT) y entre BSR y BSFSR, considerando el valor de umbral BSFTHR óptimo. Diferencia de SSIM: Diferencias del valor de SSIM entre BSR e INT en porcentaje y entre BSR y BSFSR, considerando el valor de umbral BSFTHR óptimo. T: Porcentaje de reducción de tiempo de BSFSR frente a BSR. Tabla 4.5.- Resumen de resultados con BSFSR ID Secuencia SA MBS BSFTHR PSNR (dB) SSIM T BSR-INT BSFSR-INT BSR-INT BSFSR-INT 1 Deadline 2 8 2% -0.3 0.01 -2.32% 0.1% 2% 2 Flower 4 32 6% -1.76 0.1 -13.66% 1.08% 33% 3 Football 16 4 2% -7.49 0.03 -31.30% 0.2% 4% 4 Foreman 4 16 4% -2.09 0.59 -5.33% 0.3% 26% 5 Galdar 2 32 8% 2.98 3.18 7.18% 0.76% 4% 6 Mobcal 4 32 5% -1.04 0.83 -2.68% 1.61% 3% 7 Mobile 4 16 6% 0.56 1.3 5.92% 7.49% 3% 8 Stockholm 8 16 8% -3.64 0.52 -3.09% 0.94% 2% 9 Suzie 4 4 1% 0.26 0.36 0.29% 1.81% 13% En la Tabla 4.5 se observa que el umbral óptimo del Filtro Selectivo de MB (BSFTHR) oscila entre valores comprendidos entre un 2% y un 8%. Dichos valores guardan una estrecha relación con la cantidad de movimiento local y /o global de la secuencia en cuestión. La Tabla 4.6 presenta una relación para cada secuencia entre la cantidad movimiento global y local medida subjetivamente, y el umbral BSFTHR óptimo del Filtro Selectivo de MB. Tabla 4.6.- Relación entre movimiento global, local y valor óptimo del umbral de BSFSR ID Secuencia SA MBS Tamaño (píxeles) Movimiento Global Movimiento Local BSFTHR 1 Deadline 2 8 352x288 Nulo Medio 2% 2 Flower 4 32 352x288 Medio Bajo 6% 3 Football 16 4 352x288 Bajo Muy Alto 2% 4 Foreman 4 16 176x144 Medio Medio 4% 5 Galdar 2 32 352x288 Bajo Nulo 8% 6 Mobcal 4 32 480x360 Medio Medio 5% 7 Mobile 4 16 176x144 Medio Bajo 6% 8 Stockholm 8 16 704x576 Medio Bajo 8% 9 Suzie 4 4 176x144 Nulo Alto 1%
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 103 En la Tabla 4.6 se observa cómo secuencias con movimiento global medio-bajo y movimiento local medio-bajo, se ajustan a valores del umbral de Filtro Selectivo de MB en torno al 6%. Esto ocurre para las secuencias Flower, Galdar, Mobile o Stockholm. Por otra parte, secuencias con movimiento local elevado y movimiento global reducido o nulo, presentan valores de umbral más bajos, como ocurre con las secuencias Deadline, Football, Foreman o Suzie. Esto es coherente considerando que la métrica que se usa para tomar decisiones con respecto al número de frames a utilizar es el MAD, que mide la diferencia de píxeles entre los frames. Cuando existe un movimiento local acusado los frames no se ajustarán según esta métrica y, por tanto, el valor del umbral tendrá que bajar para buscar un parecido adecuado entre frames. Por tanto, considerando la forma en la que se establece la comparación, la situación es inversa a la que se establecía en el Filtro Selectivo de Ventana. Así mismo, tal y como ocurría con los frames en el Filtro Selectivo de Ventana, en este caso se seleccionan los MBs adecuados para maximizar la calidad, de tal forma que en tanto en cuanto la información que aporte un MB resulte significativa para el proceso de SR se considerará, mientras que se prescindirá de éste en caso contrario. Con el objetivo de presentar adecuadamente los resultados obtenidos se obtuvieron gráficas que justificasen el correcto funcionamiento del filtro y que determinaran en qué medida la calidad se veía aumentada y el tiempo de cómputo disminuido cuando se utiliza un valor de umbral de Filtro Selectivo de MB adecuado. Las gráficas utilizadas para determinar los resultados fueron: Diferencias de métricas promedio frente al valor del umbral BSFTHR. Tiempo de ejecución frente al valor del umbral BSFTHR. Métricas para el valor óptimo del umbral BSFTHR para cada frame. Número de MBs utilizados para cada frame analizado. Medida subjetiva de la calidad. Diferencia de métricas promedio frente al valor del umbral BSFTHR 4.3.2.1 Tal y como se procedió en el caso del análisis del Filtro Selectivo de Ventana, se compara en este apartado la diferencia promedio de una determinada métrica (PSNR o SSIM) del número de frames analizados en el proceso de SR frente al valor del umbral del Filtro Selectivo de MB utilizado, de acuerdo con las ecuaciones (4.15) y (4.16). 𝐷𝐼𝐹_𝑃𝑆𝑁𝑅𝐵𝑆𝐹𝑇𝐻𝑅 =∑(𝑃𝑆𝑁𝑅_𝐵𝑆𝐹𝑆𝑅𝐵𝑆𝐹𝑇𝐻𝑅𝑖 − 𝑃𝑆𝑁𝑅_𝐵𝑆𝑅𝑖) 𝑛 𝑖=1 𝑛 (4.15) 𝐷𝐼𝐹_𝑆𝑆𝐼𝑀𝐵𝑆𝐹𝑇𝐻𝑅 =∑(𝑆𝑆𝐼𝑀_𝐵𝑆𝐹𝑆𝑅𝐵𝑆𝐹𝑇𝐻𝑅𝑖 − 𝑆𝑆𝐼𝑀_𝐵𝑆𝑅𝑖) 𝑛 𝑖=1 𝑛, (4.16) donde: PSNR_BSFSRBSFTHRi: Es el valor de PSNR del frame i súper-resuelto, considerando el umbral BSFTHR frente al frame i original. SSIM_BSFSRBSFTHRi: Es el valor de SSIM del frame i súper-resuelto, considerando el umbral BSFTHR frente al frame i original. PSNR_BSRi: Es el valor de PSNR del frame i súper-resuelto con el algoritmo BSR, frente al frame i original. SSIM_BSRi: Es el valor de SSIM del frame i súper-resuelto con el algoritmo BSR, frente al frame i original. n: Es el número de frames totales de la secuencia analizada. En el caso del presente ejemplo, n = 30.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 104 Se presentan en la Figura 4.17 las gráficas de diferencia de métricas promedio en términos de PSNR (izquierda) y SSIM (derecha) para la secuencia Foreman. En éstas se puede observar cómo se maximiza la calidad para un valor de BSFTHR = 4%, tanto para PSNR como para SSIM. Recuérdese que un valor de BSFTHR = 100% se corresponde con BSR, de ahí que la diferencia (PSNR_WSFR0i – PSNR_BSR0i) sea nula para todo i, aunque normalmente, como en el caso de esta secuencia, a partir de valores cercanos a BSFTHR = 20% se produce una saturación del umbral. Por otra parte, BSFTHR = 0% se identifica con la interpolación bilineal INT. a) b) Figura 4.17.- Diferencia entre BSFSR y BSR respecto a BSFTHR – Secuencia Foreman. a) PSNR, b) SSIM Tiempo de ejecución frente al valor del umbral BSFTHR 4.3.2.2 De forma similar a como se procedió con el Filtro Selectivo de Ventana, se compara en este apartado el tiempo de ejecución (en porcentaje con respecto al tiempo que utiliza BSR) del proceso de SR frente al valor del umbral del Filtro Selectivo de MB utilizado. El máximo tiempo de cómputo se corresponderá para un valor de BSFTHR = 100%, mientras que será mínimo para BSFTHR = 0% (para este caso se toma como referencia el tiempo asociado a la interpolación). Se presenta en la Figura 4.18 la gráfica de tiempo de ejecución en porcentaje con respecto al máximo para la secuencia Foreman. Se observa cómo para un valor de umbral de un 4% el tiempo de ejecución se reduce en aproximadamente un 29% para BSFSRBSFTHR=4%. Figura 4.18.- Tiempo de ejecución respecto a BSFTHR – Secuencia Foreman. Para BSFTHR = 4% el tiempo es un 71% respecto a BSR Tal y como se representa en la Figura 4.18, el tiempo de cómputo que optimiza la calidad para BSFSR es un 71% con respecto a BSR, mientras que el tiempo de ejecución que optimiza la calidad para WSFSR es un 44% con respecto a BSR.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 105 Métricas para el valor óptimo del umbral BSFTHR para cada frame 4.3.2.3 Habiendo caracterizado la calidad objetiva y el tiempo de ejecución con respecto al umbral BSFTHR, se busca representar el valor de una determinada métrica (PSNR o SSIM) para cada uno de los frames analizados en el proceso de SR, considerando el valor óptimo del umbral BSFTHR, y analizando tanto BSFSR como BSR e interpolación (INT). A modo de ejemplo, la Figura 4.19 representa los valores de PSNR (izquierda) y SSIM (derecha) de cada uno de los 30 primeros frames de la secuencia Foreman. a) b) Figura 4.19.- Secuencia Foreman para umbral óptimo = 4%. a) PSNR, b) SSIM Número de MBS utilizados para cada frame analizado 4.3.2.4 En este apartado, se presenta el procedimiento utilizado para visualizar el número de MBs utilizados para cada frame analizado, de forma análoga a como se representó el número de frames en la Ventana de Trabajo del Filtro Selectivo de Ventana para WSFSR. Se representa por tanto el valor del número de MBs utilizados con respecto al frame actual para cada uno de los frames analizados en el proceso de SR considerando el valor óptimo del Filtro Selectivo de MB. Para el ejemplo de referencia se utilizará, al igual que para el caso de WSFSR, un número de frames total de 30 y una Ventana de Trabajo de SR utilizada por BSR de +/-20. Esto significa que, como se representa en la Figura 4.28, los MBs utilizados en el proceso de SR para BSR irán desde 400 para el frame nº1 (20 MBs por frame, para un total de 20 frames posteriores) y el frame nº 30 (20 MBs por frame, para un total de 20 frames anteriores) hasta un máximo de 580 (caso particular de los frames 10 hasta el 21). Por otra parte, los MBs utilizados para BSFSR se seleccionarán dependiendo de la decisión tomada por la métrica SSIM con respecto al umbral establecido. Así, por ejemplo, considerando también la Figura 4.20 se pueden ver los siguientes casos: Para el frame nº1 BSFSR utiliza tan solo 295 MBs frente a los 400 MBs utilizados en BSR. Esto se traduce en un incremento de calidad de 0.2 dB en PSNR (0.05% en SSIM) frente a INT, y de casi 3 dB (3% en SSIM) frente a BSR, al igual que ocurría con WSFSR. Para el frame nº5 BSFSR utiliza 455 MBs frente a los 480 MBs utilizados en BSR. Esto se traduce en un incremento de calidad de 0.8 dB (1.5% en SSIM) frente a INT y de 0.6 dB (0.05% en SSIM) frente a BSR, que son valores ligeramente inferiores a los resultados de BSFSR. Para el frame nº16 BSFSR utiliza 560 MBs, frente a los 580 MBs utilizados en BSR. Se obtienen prácticamente los mismos resultados que para BSR, mejorando ligeramente los resultados de BSFSR.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 106 Figura 4.20.- Número de MBs con respecto a número de frame, PSNR y SSIM – Secuencia Foreman. Se analizan diferentes valores de umbral (de abajo a arriba: 0, 4 y 20)
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 107 Por otra parte, tal y como se comentó en el capítulo Contribuciones Algorítmicas, si se considera un umbral adaptativo los resultados pueden mejorar aún más. Particularmente para el caso de la secuencia Foreman (para los 100 primeros frames) se presenta a modo de referencia en la Tabla 4.7 y en la Figura 4.21 la mejora de PSNR, tanto en media como en varianza. Así, la calidad al comparar el filtro de MB con umbral adaptativo y con umbral estático mejora en 0.45 dB de promedio con máximos de 1.95 dB para determinados frames, reduciéndose la varianza en un 54%. La mejora con respecto al algoritmo BSR es mucho mayor, obteniéndose una mejora total de 2.78 dB de media con máximos de 5.98 dB. Así, en los resultados obtenidos al aplicar un Filtro Selectivo de MB con un umbral adaptativo se consigue una mejora de calidad y una mayor estabilidad con respecto al Filtro Selectivo de MB con umbral estático. Se han realizado pruebas con varias secuencias, obteniendo resultados apropiados en secuencias que incluyen movimiento local. Tabla 4.7.- Mejora de PSNR con umbral adaptativo BSR BSF BSF con umbral adaptativo Media PSNR (dB) 28.57 30.90 31.35 Varianza (dB) 3.03 0.51 0.28 Figura 4.21.- Mejora de PSNR con umbral adaptativo frame a frame Considerando las mejoras introducidas por WSFSR y por BSFSR de forma independiente, tanto en tiempo de cómputo como en calidad, surge el planteamiento de usar los dos filtros en cascada de forma que se use WSFSR como un filtro grueso y BSFSR como un filtro fino, conformando un filtro dual, que como se comentó en el capítulo Contribuciones Algorítmicas se denomina WBSFSR (Window & Block Selective Filter SR). Partiendo de esta idea se obtienen gráficas de calidad y tiempo de cómputo que comparan el funcionamiento de WSFSR con el de WBSFSR para diferentes valores del umbral WSFTHR considerando el valor de BSFTHR que optimiza la curva de WBSFSR. Los resultados, mostrados en la Figura 4.22, representan la comparativa con respecto a calidad y tiempo de cómputo, respectivamente. a) b) c) Figura 4.22.- Diferencias WSFSR-BSR y WBSFSR-BSR respecto a WSFTHR – Secuencia Foreman. a) PSNR, b) SSIM c) Tiempo de ejecución
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 114 Medida subjetiva de calidad 4.3.3.4 La medida subjetiva de calidad se basa en la comparación directa de los frames de salida. Para ello se compara INT con BSR y VBSSR. Se presenta en la Figura 4.29 el frame 20 de la secuencia Foreman. Se observa que en este caso una selección adecuada del tamaño de MB para el cálculo del frame súper-resuelto mejora la reconstrucción del frame en cuestión. Esto se presenta claramente en la definición del edificio que queda detrás del obrero. a) b) c) Figura 4.29.- Análisis del frame 20 de la secuencia Foreman QCIF para VBSSR. a) INT, b) BSR, c) VBSSR Variable Block Selective Filter Super-Resolution (VBSFSR) 4.3.3.5 Si bien los resultados de VBSSR mejoran claramente a BSR, estos son aún mejorables. Una solución adecuada para mejorar aún más la calidad es la incorporación a VBSSR de un Filtro Selectivo de MB, dando lugar al filtro VBSFSR (Variable Block Size Filter SR), representándose en la Figura 4.30 la diferencia de PSNR y de SSIM con respecto a BSR usando los filtros BSFSR y VBSFSR, en la que se puede observar claramente la mejora que supone VBSFSR cuando se considera un valor óptimo de BSFTHR = 4%, alcanzando una mejora en PSNR con respecto a BSR de 2.7 dB, y de un 6% en SSIM, tal y como se presenta en las Figuras 4.30.a y 4.30.b, respectivamente. Sin embargo, como contrapartida, el tiempo de cómputo pasa a ser de más del doble, como se puede ver en la Figura 4.30.c.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 115 a) b) c) Figura 4.30.- Prestaciones del filtro VBSFSR con respecto a BSFSR. a) Diferencia de PSNR promedio frente a BSR, b) Diferencia de SSIM promedio frente a BSR, c) Tiempo de ejecución Variable Block Size Window Selective Filter Super-Resolution (VBSWSFSR) 4.3.3.6 Ya que en la versión del filtro VBSFSR el tiempo de cómputo aparece como el principal obstáculo a considerar, se puede valorar como alternativa aplicar un Filtro Selectivo de Ventana a VBSSR, dando lugar al filtro VBSWSFSR (Variable Block Size Window Selective Filter SR). En la Figura 4.31 se presenta la diferencia de PSNR y de SSIM con respecto a BSR usando los filtros WSFSR y VBSWSFSR, donde se puede observar claramente la mejora que representa VBSFSR cuando se considera un valor óptimo de WSFTHR = 70%, alcanzando una mejora en PSNR con respecto a BSR de 2.75 dB, y de más de un 6% en SSIM, tal y como se presenta en la Figura 4.31.a y en la Figura 4.31.b, respectivamente. Además, el tiempo de cómputo para el filtro VBSWSFSR para el umbral óptimo es de menos de un 60% con respecto a BSR, tal y como se presenta en la Figura 4.31.c, mejorando mucho las prestaciones con respecto a BSFSR, que requería un tiempo de cómputo mayor que el doble del tiempo de cómputo de BSR.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 116 a) b) c) Figura 4.31.- Prestaciones del filtro VBSWSFSR con respecto a WSFSR. a) Diferencia de PSNR promedio frente a BSR, b) Diferencia de SSIM promedio frente a BSR, c) Tiempo de ejecución Window & Variable Block Selective Filter Super-Resolution (WVBSFSR) 4.3.3.7 Considerando las mejoras introducidas, tanto en calidad objetiva como en tiempo de cómputo por parte de WBSFSR, se añade finalmente la capacidad de que el tamaño de MB sea variable, conformando el filtro WVBSFSR (Window & Variable Block Selective Filter SR), que se introdujo en el capítulo Contribuciones Algorítmicas. Partiendo de esta propuesta se obtienen gráficas comparativas de calidad y tiempo que presenten el funcionamiento de WSFSR, WBSFR y WVBSFR con respecto a BSR para diferentes valores del umbral WSFTHR considerando umbrales óptimos para BSFTHR, VBSTHR1 y VBSTHR2. Los resultados se presentan en la Figura 4.32 y en la Figura 4.33, que representan la comparativa con respecto a calidad y tiempo de cómputo, respectivamente.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 117 a) b) c) d) Figura 4.32.- Prestaciones de filtros respecto a WSFTHR – Secuencia Foreman. a) PSNR, b) SSIM, c) Zoom de PSNR, d) Zoom de SSIM Figura 4.33.- Tiempos de ejecución respecto a WSFTHR – secuencia Foreman. Para WSFTHR = 60% el tiempo es un 70% sobre BSR
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 118 Tal y como se representa en la Figura 4.32, el aporte de los valores óptimos de umbral de VBSSR al Filtro Selectivo de Ventana y MB WBSFSR supone que el funcionamiento conjunto WVBSFSR se encuentre por encima de BSR y de la interpolación para cualquier valor de WSFTHR, obteniendo un máximo global superior a 2.8 dB en PSNR, y estando por encima de 6% en SSIM con independencia del valor del umbral WSFTHR. De aquí se deduce que si se optimizan los valores de los umbrales BSFTHR, VBSTHR1 y VBSTHR2, el umbral WSFTHR podría no ser necesario. Sin embargo esto implica como contrapartida los siguientes aspectos: Un mayor coste computacional; como se presenta en la Figura 4.33, el tiempo de ejecución es prácticamente el doble con respecto a BSR cuando WSFTHR = 0, siendo un 70% mayor que el correspondiente a BSR para un valor de WSFTHR que optimiza la calidad (60%). Una mayor complejidad en la selección de umbrales. Para WVBSFSR se han de seleccionar 4 valores de umbral con respecto a los 2 umbrales de WBSFSR. Considerando estos aspectos, que se plantean como contraproducentes, y añadiendo el hecho de que la mejora de calidad que obtiene con WVBSFSR no es por lo general significativa con respecto a WBSFR, se concluye que WBSFSR representa la opción más recomendable. Esta afirmación se extenderá en el apartado 4.3.5, en la que se realiza una comparativa con el Estado del Arte, determinando que WBSFSR presenta un compromiso óptimo entre calidad objetiva y tiempo de cómputo. 4.3.4 Comparativa global de resultados A modo de resumen se presentan los resultados de la secuencia Foreman para los 100 primeros frames de ésta. La Tabla 4.10 muestra los resultados promedio, donde destacan WBSFR y WVBSFSR, que se presentan frame a frame conjuntamente con INT y BSR en la Figura 4.34. Tabla 4.10.- Resultados promedio para los 100 primeros frames de la secuencia Foreman PSNR(dB) SSIM(%) WSFTHR(%) BSFTHR(%) VBSTHR1(%) VBSTHR2(%) INT 30.66 92.73 NA NA NA NA BSR 28.57 87.40 0 0 0 0 VBSSR 29.82 90.12 0 0 80 4 BSFSR 31.10 93.16 0 4 0 0 VBSFSR 31.33 93.51 0 4 70 4 WSFSR 31.24 93.53 80 0 0 0 VBSWSFSR 31.30 93.47 70 0 80 4 WBSFSR 31.34 93.52 70 4 0 0 WVBSFSR 31.35 93.56 60 4 80 4 Tal y como se presenta en la Figura 4.34, las mejoras introducidas por WBSFSR y WVBSFSR destacan en la secuencia Foreman en la que zona en la que ésta alcanza un máximo de movimiento local (frames entre 60 y 80), que es donde normalmente la SR funciona peor debido a la aparición de artefactos. Como referencia, en la Figura 4.35 se presenta el frame nº 70 donde se aprecia claramente la eliminación de artefactos , incrementándose la calidad en casi 6 dB en PSNR (13% en SSIM) con respecto a BSR, y 0.5 dB en PSNR (1% en SSIM) con respecto a INT. Por otra parte, en la Figura 4.36 se muestra el frame 20, que presenta menor movimiento, y para el que se obtiene una mejora de alrededor de 2 dB (2% en SSIM) tanto con frente a BSR e INT, que presentan resultados similares.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 119 a) b) c) d) Figura 4.34.- Resumen de aportación de WSFSR, BSFSR y VBSSR. a) PSNR, b) SSIM, c) PSNR de INT, BSR, WBSFSR y WVBSFSR, d) SSIM de INT, BSR, WBSFSR y WVBSFSR
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 120 a) b) c) Figura 4.35.- Frame 70 de la secuencia Foreman QCIF. a) INT, b) BSR, c) WVBSFSR a) b) c) Figura 4.36.- Frame 20 de la secuencia Foreman QCIF. a) INT, b) BSR, c) WVBSFSR Por último, comentar que para disponer de una referencia del máximo de calidad que el algoritmo puede alcanzar en todo momento, se ha hecho uso de máximos teóricos partiendo de estimaciones a priori.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 121 4.3.5 Comparativa con el Estado del Arte Una vez caracterizadas las siete variantes que proporcionan el Filtro Selectivo de Ventana, el Filtro Selectivo de MB y la topología de tamaño de MBs adaptable, se realizó una comparativa con el Estado del Arte [R4]. En concreto se compararon las propuestas introducidas en la presente Tesis Doctoral con los siguientes trabajos: Real-time image super resolution using an FPGA. Se usa técnica Iterative Back Projection (IBP), propuesta por Bowen et al [BB08]. Robust Super-Resolution (RSR), propuesto por Zomet et al [ZRP01]. Super-Resolution using variable size block-matching motion estimation with rotation, propuesto por Anagün et al [AS12]. La comparativa se realizó haciendo uso de las versiones CIF (352x288 píxeles) de las secuencias Flower, Football, Foreman, Mobcal y Mobile y la versión QCIF (176x144 píxeles) de la secuencia Suzie. La consideración de estas secuencias concretas se debe a que para una de las referencias utilizadas, la de Anagün et al [AS12], tan sólo se disponían datos de PSNR de algunos frames representativos de cuatro las secuencias introducidas (Foreman, Football, Mobile y Suzie). Así, se presenta en primer lugar en la Figura 4.37 la comparativa de resultados global de PSNR considerando los frames propuestos en [AS12]. Las simulaciones consideran un Factor de Escala (Scale Factor) y una Ventana de Trabajo inicial de 15 (frame actual +/-7). Figura 4.37.- Resultados de PSNR para frames concretos en secuencias Foreman, Football, Mobile y Suzie Por otra parte, la Figura 4.38 muestra los resultados promedio de PSNR y SSIM para los métodos descritos en [BB08] y [ZRP01], BSR y las propuestas introducidas en esta Tesis Doctoral. Se observa cómo las métricas objetivas calculadas para las secuencias consideradas mejoran el Estado del Arte actual. La mejora en secuencias complejas, como Football o Suzie, es destacable, obteniendo 32.54 dB en PSNR (0.915 en SSIM) y 35.86 dB en PSNR (0.941 en SSIM), respectivamente.
CAPÍTULO 4.- RESULTADOS Y ANÁLISIS: FILTROS SELECTIVOS Y TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE 122 a) b) Figura 4.38.- Resultados promedio para varios métodos (a) PSNR en dB, (b) SSIM Con el objetivo de minimizar el tiempo de ejecución del algoritmo BSR, para la comparativa de tiempos de cómputo sólo se considerarán las propuestas basadas en WSF (Window Selective Filter). Como se ha presentado en la Figura 4.38 los métodos WSFSR, WBSFSR y WVBSFSR mejoran el Estado del Arte. Esto se puede comprobar también con una inspección subjetiva a la Figura 4.39, donde se muestra el frame 70 de la secuencia Foreman (frame en una parte de la secuencia con elevado movimiento local) para IBP [BB08] (a), RSR [ZRP01] (b), BSR (c) y WVBSFSR (d). Finalmente, la Tabla 4.11 presenta el tiempo de cómputo medio (en segundos) para aplicar el proceso de SR a un frame con una Ventana de Trabajo de 15 (frame actual +/-7) considerando todas las secuencias estudiadas. Los tests se han ejecutado en un core 2 Quad (3 GHz, 4 GB RAM). Los resultados muestran que el tiempo de ejecución es mínimo para el filtro propuesto que usa un tamaño de MB fijo, y que las propuestas WSFSR, WBSFSR y WVBSFSR introducen una mejora notoria en términos de tiempo de cómputo frente al Estado del Arte.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 123 a) b) c) d) Figura 4.39.- Resultados visuales para la secuencia Foreman CIF (frame 70) a) IBP [BB08], b) RSR [ZRP01], c) BSR y d) WVBSFSR Tabla 4.11.- Tiempo de ejecución promedio (en segundos) para aplicar SR a un frame con una Ventana de Trabajo de 15 frames (frame actual +/-7) Método / Secuencia Flower Foreman Football Mobcal Mobile Suzie IBP [BBP08] 12.19 25.29 19.04 35.83 29.26 6.75 RSR [ZRP01] 23.99 26.10 34.99 38.12 27.26 10.52 BSR 2.35 6.95 12.42 3.93 8.63 3.25 WSFSR 1.81 2.40 5.22 3.72 4.01 1.45 WBSFSR 1.66 2.38 5.19 3.42 3.94 1.41 WVBSFSR 2.32 3.02 5.41 8.08 7.78 1.52 De acuerdo con los resultados de la Tabla 4.11, y considerando que los resultados de calidad objetivos del método WBSFSR son bastante similares al método WVBSFSR se puede concluir que el método WBSFSR es la opción más apropiada, ya que presenta el mejor compromiso en términos de calidad y tiempo de ejecución. Esto también se puede ver si se relaciona la calidad objetiva (SSIM) y el tiempo de ejecución de acuerdo con la Figura de Mérito (FM) presentada en la expresión (4.19), que se introduce como un porcentaje con un valor máximo igual a 100 y un valor mínimo igual a 0.
ANEXOS 226 Trucco y Olmos-Antillón [TO06] presentaron un filtro de restauración auto-ajustable basado en una simplificación del modelo Jaffe-McGlamery [McG79] de formación de una imagen submarina. El modelo simplificado es ideal para aguas poco profundas (superficiales), y condiciones de luz difusa con retrodispersión limitada, pero resultados experimentales sugieren que dicha mejoría también se consigue en una variedad de las condiciones de formación de imágenes, como se representa en la Figura A.21. El algoritmo presentado es de auto-sintonización, en el sentido de que los valores óptimos de los parámetros se estiman para cada imagen. Figura A.21.- Imágenes originales (arriba) y restauradas (abajo) [TO06] A.2.2.2 Técnicas de mejora de imagen submarina Estos métodos hacen abstracción total del proceso de formación de la imagen, y sin conocimiento a priori del entorno (no utiliza coeficientes de atenuación y dispersión por ejemplo). Son generalmente más simples y rápidos que las técnicas de restauración de imágenes. Se presentan a continuación algunos de estos trabajos. Iqbal et al. [ISO+07] utilizan un algoritmo de deslizamiento en expansión, tanto en los modelos de color RGB (Red, Green, Blue) como HSI (Hue, Saturation, Intensity) para mejorar las imágenes submarinas. En primer lugar, se realiza un ajuste del contraste en el modelo de color RGB, para ecualizar el contraste de color de la imagen. En segundo lugar, se realiza la saturación y la expansión de la intensidad en el modelo de color HSI. La ventaja de la aplicación de los dos modelos de expansión es que ayuda a equilibrar el contraste de color en las imágenes y también aborda el problema de la iluminación. La Figura A.22 muestra un ejemplo de mejora del color tras la aplicación de este método a nivel de imagen e histograma. Yang et al. [YCH+11] proponen un método de mejora de la imagen de baja complejidad. El enfoque propuesto contiene principalmente dos procedimientos: un filtro de mediana que se utiliza para estimar la transmisión de la imagen de entrada, y un cálculo de luz atmosférica que se obtiene mediante el uso de un canal pro-oscuridad. Para mejorar aún más la calidad visual, se emplea un método de corrección de color que actúa sobre el contraste de color del objeto bajo el agua. Los resultados experimentales muestran que el método propuesto puede mejorar la eficacia de la imagen bajo el agua, tal y como se presenta en la Figura A.23. Además, este método requiere menos recursos y es muy adecuado para la implementación en vigilancia y navegación subacuática en tiempo real.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 227 Figura A.22.- Ejemplo de mejora de color. Izquierda: imagen original e histograma, derecha: imagen mejorada e histograma [ISO+07] Figura A.23.- Imagen original (izquierda) y mejorada (derecha) [YCH+11] Finalmente, el método presentado por Petit et al. [PCC09] mejora el contraste y el color dinámico en las imágenes submarinas cambiando los píxeles de agua a gris o colores de baja saturación mientras que los objetos permanecen totalmente coloreados, como se puede observar en la Figura A.24. Se ha utilizado una transformación geométrica con cuaternios en torno a un eje de matiz, representando el color del agua. El contraste de los objetos mejora con bastante calidad, y los matices azulados de la imagen debido a la atenuación de la luz, se eliminan. Figura A.24.- Imágenes originales (a, c) y mejoradas (b, d) [PCC09]
ANEXOS 228
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 229 A.3.- TEST DE CALIDAD SUBJETIVA: CUESTIONARIO En este anexo, se presenta el cuestionario de test de calidad subjetiva realizado, que se presenta en la Figura A.25, así como los frames de test utilizados, que se muestran en la Figura A.26. Figura A.25.- Cuestionario de test de calidad subjetiva y ejemplo de pregunta para secuencia Stockholm
ANEXOS 230 1.- Stockholm 2.- Shields 3.- Parkrun 4.- Mobcal 5.- Reef 6.- Coral Figura A.26.- Frames de test, de izquierda a derecha: frame de LR, frame de BSR y frame de MCABMSR
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 231 A.4.- PUBLICACIONES En este anexo, se resumen las publicaciones realizadas en el ámbito de la presente Tesis Doctoral en orden cronológico, además de otras publicaciones desarrolladas como resultado del trabajo realizado en el Programa de Doctorado de Ingeniería de Telecomunicación Avanzada. A.4.1.- Congresos [C1] Eduardo Quevedo, Olivia Rodríguez, Gustavo M. Callicó, Félix Tobajas, and Valentín de Armas, “Image Resolution Enhancement in Underwater applications”, 27th Conference on Design of Circuits and Integrated Systems (DCIS), Avignon, France, Nov. 2012. [C2] Eduardo Quevedo, David Horat, Gustavo M. Callicó, and Félix Tobajas, “Computation Time Optimization in Super-Resolution applications”, 14th International Conference on Computer Aided Systems Theory, Las Palmas de Gran Canaria, Spain, pp. 110-111, Feb. 2013. [C3] Jorge Rodríguez, Alexis Quesada, David Horat, and Eduardo Quevedo “Web Georeferenced Video Player with Super-Resolution Screenshot Feature”, 14th International Conference on Computer Aided Systems Theory, Las Palmas de Gran Canaria, Spain, pp. 104105, Feb. 2013. [C4] Eduardo Quevedo, Luis Sánchez, Gustavo M. Callicó, Félix Tobajas, Jesús de la Cruz, and Roberto Sarmiento, “Selective filter with adaptive size macro-block for Super-Resolution applications”, The 17th IEEE International Symposium on Consumer Electronics, Hsinchu, Taiwan, pp. 101-102, June 2013. [C5] Eduardo Quevedo, Jesús de la Cruz, Gustavo M. Callicó, Félix Tobajas, and Roberto Sarmiento, “Spatial-Temporal Video Enhancement using Super-Resolution from a MultiCamera System”, Institute of Electrical and Electronic Engineers (IEEE) International Conference on Consumer Electronics, Las Vegas, USA, pp. 536-537, Jan. 2014. [C6] E. Quevedo, J. Rodríguez, D. Horat. A. Quesada-Arencibia, F. Tobajas, G.M. Callicó, and R. Sarmiento, “Improving underwater video navigation systems using Georeferencing and SuperResolution techniques”, Institute of Electrical and Electronic Engineers (IEEE) Marine Technology Society (MTS) OCEANS conference, Taipei, Taiwan, pp. 1-7, Apr. 2014. [C7] T. Szydzik, E. Quevedo, G. M. Callicó, A. Nunez, F. Tobajas, and R. Sarmiento, “Optimization of non-uniform grid projection image super-resolution algorithms by reduced granularity and modified addressing”, 29th Conference on Design of Circuits and Integrated Systems (DCIS), Madrid, Spain, Nov. 2014. [C8] Eduardo Quevedo, Jesús de la Cruz, Luis Sánchez, Gustavo M. Callicó, and Félix Tobajas, “Variable Size Block-Matching Super-Resolution Applied to a Multi-Camera System”, Institute of Electrical and Electronic Engineers (IEEE) International Conference on Consumer Electronics, Las Vegas, USA, pp. 662-663, Jan. 2015.
ANEXOS 232 A.4.2.- Revistas [R1] Eduardo Quevedo, David Horat, Gustavo M. Callicó, and Félix Tobajas, “Computation Time Optimization in Super-Resolution applications”, Lecture Notes in Computer Science, vol. 8112, pp. 101-108, Dec. 2013. [R2] Jorge Rodríguez, Alexis Quesada Arencibia, David Horat, and Eduardo Quevedo “Web Georeferenced Video Player with Super-Resolution Screenshot Feature”, Lecture Notes in Computer Science, vol. 8112, pp. 87-92, Dec. 2013. [R3] E. Quevedo, J. de la Cruz, G. M. Callicó, F. Tobajas and R. Sarmiento, “Video Enhancement using Spatial and Temporal Super-Resolution from a Multi-Camera System”, IEEE Transactions on Consumer Electronics, JCR = 1.157 , vol. 60, issue 3, pp. 420-428, Aug. 2014. [R4] E. Quevedo, L. Sánchez, G. M. Callicó, F. Tobajas, J. de la Cruz, V. de Armas, and R. Sarmiento, “Super-Resolution with selective filter based on adaptive window and variable macro-block size”, Journal on Real-Time Image Processing, JCR = 1.111 , 10.1007/s11554-0150489-3, Feb. 2015. [R5] E. Quevedo, E. Delory, G. M. Callicó, F. Tobajas, and R. Sarmiento, “Underwater Video Enhancement using Multi-Camera Super-Resolution”, IEEE Journal of Oceanic Engineering, JCR = 1.325, submitted, Feb. 2015. [R6] E. Quevedo, J. de la Cruz, L. Sánchez, G. M. Callicó, and F. Tobajas, “Super Resolution with Adaptive Macro-Block Topology Applied to a Multi Camera System”, IEEE Transactions on Consumer Electronics, JCR = 1.157, submitted after minor review, Mar. 2015. A.4.3.- Otras publicaciones Por ultimo, se presentan otras publicaciones desarrolladas como resultado del trabajo realizado en el Programa de Doctorado de Ingeniería de Telecomunicación Avanzada. Estos trabajos se han desarrollado en colaboración con la división MAGiC (MAtemáticas Gráficas y Computación) del IUMA. [C9] F. Perdomo, E. Quevedo, J.P Suárez, and A. Plaza, "Results on the convergence of the longest-edge trisection method for triangles”, Meeting on Applied Scientific Computing and Tools (MASCOT), Las Palmas de Gran Canaria, Spain, Oct. 2010. [C10] F. Perdomo, A. Plaza, E. Quevedo, and J.P Suárez, “A lower bound on the angles of triangles constructed by LE-trisection”, XIV Spanish Meeting on Computational Geometry, Madrid, Spain, June 2011. [C11] J.P Suárez , T. Moreno, E. Quevedo, F. Perdomo, A. Plaza, M.A. Padrón, and P. Abad, “Results on the Convergence of the Longest-Edge Trisection Method for Tetrahedral Meshes”, Meeting on Applied Scientific Computing and Tools - International Society for Grid Generation (MASCOT-ISGG), Las Palmas de Gran Canaria, Spain, Oct. 2012. [C12] E. Quevedo, J.P. Suárez, F. Perdomo, and A. Plaza, "Quality Assessment in Longest-Edge Refinement Schemes for Real-Time Terrain Triangulations”, (Meeting on Applied Scientific Computing and Tools - International Society for Grid Generation (MASCOT-ISGG), Las Palmas de Gran Canaria, Spain, Oct. 2012.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 233 [R7] Francisco Perdomo, Ángel Plaza, Eduardo Quevedo, and José P. Suárez, “A mathematical proof of how fast the diameters of a triangle mesh tend to zero after repeated trisection”, Mathematics and Computers in Simulation, vol. 106, pp. 95-108, JCR = 0.856, Aug. 2014.
ANEXOS 234
235 Bibliografía Mientras haya libros, no existe el pasado Edward George Bulwer-Lytton (1803-1873), escritor inglés. [ABG+14] W. van Aarle, K.J. Batenburg, G. van Golpel, E. van de Casteele, and J. Sijbers. SuperResolution for Computed Tomography Based on Discrete Tomography. IEEE Transactions on Image Processing, 23(3):1181-1193, 2014. [ABH+00] M. S. Alam, J. G. Bognar, R. C. Hardie, and B. J. Yasuda. Infrared image registration and high-resolution reconstruction using multiple translationally shifted aliased video frames. IEEE Transactions on Instrumentation and Measurement, 49(5):915–923, 2000. [AEH+14] H. Ashikaga, H.L. Estner, D. A. Herzka, E. R. Mcveigh, and H. R. Halperin. Quantitative Assessment of Single-Image Super-Resolution in Myocardial Scar Imaging. IEEE Journal of Transnational Engineering in Health and Medicine, 2:1-12, 2014. [AS12] Yıldıray Anagün and Erol Seke. Super Resolution Using Variable Size Block-Matching Motion Estimation With Rotation. Super resolution using variable size block-matching motion estimation with rotation. In Proceedings of the International Symposium on Innovations in Intelligent Systems and Applications, pp.1-5, 2012. [Ban09] Vivek Bannore, “Iterative-Interpolation Super-Resolution Image Reconstruction. A Computationally Efficient Technique”, Springer, 2009. [BB08] O. Bowen and C. S. Bouganis. Real-time image super resolution using an FPGA. In Proceedings of International Conference on Field Programmable Logic and Applications, pp. 89–94, 2008. [BCL+05] D. Barreto, G. Callicó, S. López, L. García, and A. Núñez, “Real-time super-resolution over raw and compressed video sequences”, International Society for Optics and Photonics (SPIE) Microtechnologies for the New Millenium conference, Seville, Spain, vol. 5837, pp. 628– 637, May 2005. [BCM05] A. Buades, B. Coll, and J. M. More. A non-local algorithm for image denoising. In Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 60–65, 2005.
BIBLIOGRAFÍA 242 [MWS06] D. Marpe, T. Wiegland, and G. Sullivan. The H.264/MPEG4 advanced video coding standard and its applications. IEEE Commmunications Magazine, vol. 44, nº 8, pp. 134-143, 2006. [NHB+07] B. Narayanan, R. C. Hardie, K. E. Barner, and M. Shao. A computationally efficient super-resolution algorithm for video processing using partition filters. IEEE Transactions on Circuits and Systems for Video Technology, 17(5):621–634, 2007. [NM00] N. Nguyen and P. Milanfar. An efficient wavelet-based algorithm for image superresolution. In Proceedings of International Conference on Image Processing, vol. 2, pp. 351– 354, 2000. [OFY+09] M. Ota, N. Fukushima, T. Yendo, M. Tanimoto, and T. Fujii. Rectification of Pure Translation 2D Camera Array. In Proceedings of the International Workshop on Advanced Image Technology, pp.245-249, 2009. [OII+14] H. Okuhata, R. Imai, M. Ise, R . Y. Omaki, H. Nakamura, S. Hara, and I. Shirakawa. Implementation of dynamic-range enhancement and super-resolution algorithms for medical image processing. In Proceedings of IEEE International Conference on Consumer Electronics, pp. 181-184, 2014. [PA01] A. J. Patti and Y. Altunbasak. Artifact reduction for set theoretic super resolution image reconstruction with edge adaptive constraints and higher-order interpolants. IEEE Transactions on Image Processing, 10(1):179–186, 2001. [Pap77] A. Papulis. Generalized sampling expansion. IEEE Transactions on Circuits and Systems, 24(11):652–654, 1977. [PCC09] F. Petit, A. Capelle-Laize, and P. Carr. Underwater image enhancement by attenuation inversion with quaternions. In Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing, pp. 1177-1180, 2009. [PET+09] M. Protter, M. Elad, H. Takeda, and P. Milanfar. Generalizing the nonlocal-means to super-resolution reconstruction. IEEE Transactions on Image Processing, 18(1):36–51, 2009. [PFS15] Point Grey: Innovation in imaging. ProFusion25-C [Online] Available: http://www.ptgrey.com/KB/10134 Last Visit: March 2015. [PNN15] Panoramic Ball Camera: Panono [Online] Available: http://www.panono.com/ Last visit: March 2015. [PPK03] Sung C. Park, Min K. Park, and Moon G. Kang. Super-resolution image reconstruction: a technical overview. IEEE Signal Processing Magazine, 20(3):21–36, 2003. [PRZ03] L. C. Pickup, S. J. Robert, and A. Zisserman. A sampled texture prior for image superresolution. In Proceedings of Advances in Neural Information and Processing System, pp. 1587– 1594, 2003. [PST94] A. J. Patti, M. I. Sezan, and A. M. Tekalp. High-resolution image reconstruction from a low-resolution image sequence in the presence of time-varying motion blur. In Proceedings of the IEEE International Conference on Image Processing, vol. 1, pp. 343–347, 1994.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 243 [PST97a] A. J. Patti, M. Sezan, and A. M. Tekalp. Robust methods for high quality stills from interlaced video in the presence of dominant motion. IEEE Transactions on Circuits and Systems for Video Technology, 7(2):328– 342, 1997. [PST97b] A. J. Patti, M. I. Sezan, and A. M. Tekalp. Superresolution video reconstruction with arbitrary sampling lattices and nonzero aperture time. IEEE Transactions on Image Processing, 6(8):1064–1076, 1997. [PVS06] T. Q. Pham, L. J. Vliet, and K. Schutte. Robust fusion of irregularly sampled data using adaptive normalized convolution. EURASIP Journal on Applied Signal Processing, 2006. [PW04] M. Pinson and S. Wolf. A New Standardized Method for Objectively Measuring Video Quality. IEEE Transactions on Broadcasting, 50(3):312-322, 2004. [RM04] D. Robinson and P. Milanfar. Fundamental performance limits in image registration. IEEE Transactions on Image Processing, 13(9):1185–1199, 2004. [RM06] D. Robinson and P. Milanfar. Statistical performance analysis of superresolution. IEEE Transactions on Image Processing, 15(6):1413–1428, 2006. [RRY+13] R. Raghavendra, K. B. Raja, B. Yang, and C. Bush. Comparative evaluation of superresolution techniques for multi-face recognition using light-field camera. In Proceedings of 18th International Conference on Digital Signal Processing (DSP), pp. 1-6, 2013. [SCN11] T. Szydzik, G.M. Callicó, and A. Núñez. Efficient FPGA Implementation of a HighQuality Super-Resolution Algorithm with Real-Time Performance. IEEE Transactions on Consumer Electronics. 57(2):664-672, 2011. [SCO15] Scopus Digital Library, 2015. [SK94] W. Su and S. P. Kim. High-resolution restoration of dynamic image sequences. International Journal of Imaging Systems and Technology, 5(4):330–339, 1994. [SK05] Y.Y. Schechner and N. Karpel. Recovery of underwater visibility and structure by polarization analysis. IEEE Journal of Oceanic Engineering, 30(3):570-587, 2005. [SKC+13] S. Sriwilai, T. Kasetkasem, T. Chanwimaluang, T. Srinark, and T. Isshiki. A superresolution mapping algorithm based on the level set method. In Proceedings of International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology, pp 1-6, 2013. [SO89] H. Stark and P. Oskoui. High-resolution image recovery from image plane arrays, using convex projections. Journal of Optical Society of America A, 6(11):1715–1726, 1989. [SS96] R. R. Schultz and R. L. Stevenson. Extraction of high-resolution frames from video sequences. IEEE Transactions on Image Processing, 5(6):996–1011, 1996. [SS13] Y. Swirski and Y. Y. Schechner. 3DFlicker from motion. In Proceedings of IEEE International Conference on Computational Photography, 2013.
BIBLIOGRAFÍA 244 [SSB06] H.R. Sheikh, M.F. Sabir, and A.C. Bovik. A statistical evaluation of recent full reference image quality assessment algorithms. IEEE Transactions on Image Processing, 15(11): 34403451, 2006. [SSH+10] Y. Swirski, Y. Y. Schechner, B. Herzberg, and S. Negahdaripou. Underwater stereo using natural flickering illumination. In Proceedings of IEEE OCEANS International Conference, pp. 1-7, 2010. [SSN11] Y. Swirski, Y. Y. Schechner, and T. Nir. Variational stereo in dynamic illumination. In Proceedings of IEEE International Conference on Computer Vision, pp. 1124-1131, 2011. [STW+08] H.Su, L. Tang, Y. Wu, D. Tretter and J. Zhou. A practical and adaptive framework for Super-Resolution. In Proceedings of 15th IEEE International Conference on Image Processing, pp 1236-1239, 2008. [STW+12] H. Su, L. Tang, Y. Wu, D. Tretter, and J. Zhou. Spatially Adaptive Block-Based SuperResolution. IEEE Transactions on Image Processing, 21(3): 1031-1045, 2012. [SZH+07] H. Shen, L. Zhang, B. Huang, and P. Li. A MAP approach for joint motion estimation, segmentation & superresolution. IEEE Transactions on Image Processing, 16(2):479–490, 2007. [SZJ+09] B.M. Smith, Li Zhang, H. Jin, and A. Agarwala. Light Field Video Stabilization. In Proceedings of the IEEE International Conference on Computer Vision, pp.341-348, 2009. [SZT+03] J. Sun, N. N. Zheng, H. Tao, and H. Shum. Image hallucination with primal sketch priors. In Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, vol. 2, pp. 729–736, 2003. [TA97] A. N. Tikhonov and V. A. Arsenin. Solution of ill-posed problems. Winston & Sons, Washington, 1997. [TH84] R. Y. Tsai and T. S. Huang. Multiple frame image restoration and registration. Advances in Computer Vision and Image Processing, pp 317–339. Greenwich, CT: JAI Press Inc., 1984. [Tib96] R. Tibshirani. Regression shrinkage and selection via the Lasso. Journal of Royal Statistical Society: Series B (Statistical Methodology), 59(1):267–288, 1996. [TKG94] B. C. Tom, A. K. Katsaggelos, and N. P. Galatsanos. Reconstruction of a high resolution image from registration and restoration of low resolution images. In Proceedings of IEEE International Conference on Image Processing, pages 553–557, 1994. [TKM07] H. Takeda, S. Farsiu, and P. Milanfar. Kernel regression for image processing and reconstruction. IEEE Transactions on Image Processing, 16(2):349–366, 2007. [TMP+09] H. Takeda, P. Milanfar, M. Protter, and M. Elad. Super-resolution without explicit subpixel motion estimation. IEEE Transaction on Image Processing, 18(9):1958–1975, 2009. [TO06] E. Trucco and A. T. Olmos-Antillon. Self-Tuning Underwater Image Restoration. IEEE Journal of Oceanic Engineering, 31:511-519, 2006. [TP91] M. Turk and A. Pentland. Face recognition using eigenfaces. In Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 586–591, 1991.
CONTRIBUCIONES AL PROCESO DE SÚPER-RESOLUCIÓN MEDIANTE TÉCNICAS DE FILTROS SELECTIVOS, TOPOLOGÍA DE MACRO-BLOQUES ADAPTABLE Y SISTEMAS MULTI-CÁMARA 245 [TSL00] J. B. Tenenbaum, V. Silva, and J. C. Langford. A global geometric framework for nonlinear dimensionality reduction. Science, 290(5500):2319–2323, 2000. [UG92] H. Ur and D. Gross. Improved resolution from subpixel shifted pictures. CVGIP: Graphical Models and Image Processing, 54(2):181–186, 1992. [VCB+10] A. Villa, J. Chanussot, J.A. Benediktsson, M. Ulfarsson, and C. Jutten. Superresolution: an efficient method to improve spatial resolution of hyperspectral images. In Proceedings of IEEE International Symposium on Geoscience and Remote Sensing, pp. 20032006, 2010. [VCT+10] L. G. Villanueva, G. M. Callicó, F. Tobajas, S. López, and V. de Armas, J. F. López and R. Sarmiento. Medical Diagnosis Improvement through Image Quality Enhancement Based on Super-Resolution. In Proceedings of Euromicro Conference on Digital System Design: Architectures, Methods and Tools, pp. 259-262, 2010. [WAH+92] Juyang Weng, N. Ahuja, Huang, and S. Thomas. Matching two perspective views. IEEE Transactions on Pattern Analysis and Machine Intelligence, 14(8): 806-825, 1992. [Wan06] Y. Wang. Survey of objective video quality measurements. Worcester Polytechnic University, Technical Report, 2006. [WBH91] W. J. Williams, M. L. Brown, and A. O. Hero. Uncertainity, information and timefrequency distributions, . In Proceedings of SPIE (International Society for Optics and Photonics), vol. 1566, pp. 144-156, 1991. [WBS+04] Z. Wang, A. C. Bovik, H. R. Sheikh, and E. P. Simoncelli, Image Quality Assessment: From Error Visibility to Structural Similarity. IEEE Transactions on Imaging Processing, 2004. [Win09] S. Winkler. Video quality measurement standards - current status and trends. In International Conference on Information, Communications and Signal Processing, ICICS 2009, Macau, China, 2009. [WJV05] B. Wilburn, N. Joshi, V. Vaish, E. Talvala, E. Antunez, A. Barth, A. Adams, M. Horowitz, and M. Levoy. High performance imaging using large camera arrays. ACM Transactions on Graphics, 24(3): 765-776, 2005. [WSR+11] M. Weinmann, C. Schwartz, R. Ruiters, and R. Klein. A Multi-camera, Multi-projector Super-Resolution Framework for Structured Light. In Proceedings of the Int. Conference on 3D Imaging, Modeling, Processing, Visualization and Transmission, pp.397-404, 2011. [WTS05] Q. Wang, X. Tang, and H. Shum. Patch based blind image superresolution. In Proceedings of IEEE International Conference on Computer Vision, vol. 1, pp. 709–716, 2005. [XZZ14] X. Xu, Y. Zong, and L. Zang. Adaptive Subpixel Mapping Based on a Multiagent System for Remote-Sensing Imagery. IEEE Transactions on Geoscience and Remote Sensing, 52(2):787804, 2014. [YCH+11] Hung-Yu Yang, Pei-Yin Chen, Chien-Chuan Huang, Ya-Zhu Zhuang, and Yeu-Horng Shiau. Low Complexity Underwater Image Enhancement Based on Dark Channel Prior. In Proceedings of Second International Conference on Innovations in Bio-inspired Computing and Applications, pp. 17-20, 2011.
BIBLIOGRAFÍA 246 [YEB+02] J. C. Yang, M. Everett, C. Buehler, and L. McMillan. A Real-Time Distributed Light Field Camera. In Proceedings of the 13th Eurographics Workshop on Rendering, pp.1-10, 2002. [Yen56] L. J. Yen. On non-uniform sampling of bandwidth limited signals. IRE Transactions on Circuits Theory, 3(4):251–257, 1956. [YFW01] J. S. Yedidia, W. T. Freeman, and Y. Weiss. Generalized belief propagation. In Proceedings of Advances in Neural Information Processing Systems, pages 689–695, 2001. [YTM+08] Jianchao Yang, Hao Tang, Yi Ma, and Thomas Huang. Face hallucination via sparse coding. In Proceedings of IEEE International Conference on Image Processing, pp. 1264–1267, 2008. [YU14] Zihan Yu and Kiichi Urahama. Iterative Method for Inverse Nonlinear Image Processing. Transactions on Fundamentals of Electronics, Communications and Computer Sciences. E97A(2):719-721, 2014. [YW82] D. C. Youla and H. Webb. Image registration by the method of convex projections: Part 1-theory. IEEE Transactions on Medical Imaging, 1(2):81–94, 1982. [YWH+08] Jianchao Yang, John Wright, Thomas Huang, and Yi Ma. Image superresolution as sparse representation of raw image patches. In Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 1–8, 2008. [ZCI+08] A. Zaharescu, C. Cagniart, S. Ilic, E. Boyer, and R. Horaud. Camera-Clustering for MultiResolution 3-D Surface Reconstruction. In Proceedings of Workshop on Multi-Camera and Multi-Modal Sensor Fusion, 2008. [ZF03] B. Zitová and J. Flusser. Image registration methods: a survey. Image and Vision Computing, 21(11):977–1000, 2003. [ZH12] X. Zeng and H. Huang. Super-Resolution Method for Multiview Face Recognition from a Single Image per Person using Nonlinear Mappings on Coherent Features. IEEE Signal Processing Letters, 19(4):195-198, 2012. [ZMZ+14] M. Zanforlin, D. Munaretto, A. Zanella, and M. Zorzi. SSIM-based video admission control and resource allocation algorithms. Procceedings of the WiOpt workshop “Wireless Video Performance”, pp. 1-6, 2014. [ZP00] A. Zomet and S. Peleg. Efficient super-resolution and applications to mosaics. In Proceedings of International Conference on Pattern Recognition, pp. 579–583, 2000. [ZRP01] A. Zomet, A. Rav-Acha, and S. Peleg. Robust super-resolution. In Proceedings of the IEEE Workshop on Applications of Computer Vision, pp. 645–650, 2001. [ZWM+11] Z. Zang, X. Wang, J. Ma, and G. Jia. Super resolution reconstruction of three view remote sensing images based on global weighted POCS algorithm. In Proceedings of International Conference on Remote Sensing, Environment and Transportation Engineering, 2011.