RODIUCAN
Siglas del modelo RODIUCAN obtenidas de "OPTIMIZACIÓN DE LA RESOLUCIÓN DE IMÁGENES DIGITALES UTILIZANDO AUTÓMATAS CELULARES Y REDES NEURONALES ARTIFICIALES".
Es un trabajo de tesis que propone un modelo para aumentar la resolución de imágenes utilizando autómatas celulares y redes neuronales convolucionales, considerando un conjunto de datos reducido para optimizar el uso de los recursos computacionales.
Descripción del modelo
Autómata
Se utilizaron autómatas celulares para detectar los bordes y fondos de las imágenes, obteniendo así una representación simplificada pero muy descriptiva de los bordes de los objetos en las imágenes.
Redes neuronales UNET
Estas imágenes luego se usaron para entrenar la primera red neuronal con el objetivo de que realice la misma tarea que el autómata pero de forma generalizada.
La segunda red neuronal combina las imágenes degradadas junto con el resultado de la primera red, obteniendo finalmente la imagen optimizada de mejor resolución.
Las degradaciones consideradas fueron: reducción de resolución en un factor 0x,2x,4x,6x por interpolación bicubica y vecinos más cercanos, tambien se considero el desenfoque.
Ejemplos
Imagen degradada(Entrada), imagen de bordes(Salida red1), imagen optimizada(Salida red2).
Entrenamiento
El entrenamiento se realizó con el conjunto de datos "General100" y con parches de 128x128 píxeles.
Códio fuente y ejemplos
RODIUCAN github
En github están los modelos en .H5, el conjunto de datos original, el cuaderno de ejemplo.
Lo mínimo para ejecutar el modelo ya entrenado.
Tamaño aproximado: 400 MB
RODIUCAN gitlab
En gitlab están los modelos en .H5, el conjunto de datos original, los cuadernos de preprocesamiento, entrenamiento, pruebas y ejemplo.
Todo lo que necesario para repetir el experimento con el mismo u otro conjunto de datos.
Tamaño aproximado: 1.0GB
Un ejemplo demostrativo también está disponible en Hugging Face:
RODIUCAN example Hugging Face
Los cuadernos de colab también están disponibles en línea para su revisión. Y se enumeran segun su orden de desarrollo.
1. Prueba inicial con una sola imagen.
Cuaderno 1
2. Pre-procesamiento de todas las imágenes.
Cuaderno 2
3. Entrenar el modelo para imágenes en escala de grises.
Cuaderno 3
4. Entrenar el modelo para imágenes a color.
Cuaderno 4
5. Comparar resultados del modelo propuesto RODIUCAN con el modelo ESRGAN.
Cuaderno 5
6.
Ejemplo de uso del modelo h5 en colores.
Cuaderno 6
Resultados de la evaluación
Se utilizaron seis conjuntos de datos diferentes para evaluar el modelo. Se consideraron las métricas: MSE, PSNR, SSIM y DISTS. Y la misma evaluación se realizó con el modelo ESRGAN para tener un punto de comparación entre ambos modelos.
Se consideraron seis conjuntos de datos diferentes que normalmente se usan en las pruebas de modelos de muestreo superior, como: Set5, Set14, history, BSD100, Urban100, Manga109. El conjunto de datos “histórico” de solo diez imágenes fue reemplazado por un conjunto de datos más grande de fotos históricas antiguas de la ciudad de La Paz (Bolivia) que se denominó Históricas40. Las imágenes se redujeron en un factor de 4 veces su tamaño original.
La siguiente tabla muestra los resultados de comparar las imágenes originales con sus versiones optimizadas.
| Data set | MSE (óptimo ideal 0) | PSNR (óptimo ideal, más alto mejor) | SSIM (óptimo ideal 1) | DISTS (óptimo ideal 0) |
|---|
| optimized ESRGAN | optimized RODIUCAN | optimized ESRGAN | optimized RODIUCAN | optimized ESRGAN | optimized RODIUCAN | optimized ESRGAN | optimized RODIUCAN |
| BSDS100 | 0.0072 | 0.0068 | 22.174 | 22.390 | 0.8032 | 0.8272 | 0.1059 | 0.1684 |
| Historicas40 | 0.0099 | 0.0086 | 21.180 | 21.812 | 0.8441 | 0.8586 | 0.1142 | 0.1386 |
| Manga109 | 0.0067 | 0.0073 | 22.585 | 22.055 | 0.8983 | 0.8911 | 0.0763 | 0.1118 |
| Set5 | 0.0029 | 0.0021 | 26.405 | 27.489 | 0.9472 | 0.9592 | 0.0592 | 0.0402 |
| Set14 | 0.0068 | 0.0066 | 22.793 | 22.808 | 0.8528 | 0.8721 | 0.0994 | 0.1287 |
| Urban100 | 0.0103 | 0.0092 | 20.858 | 21.399 | 0.8216 | 0.8413 | 0.1011 | 0.1618 |
Conclusiones
El modelo propuesto al usar las imágenes generadas por el autómata es lo suficientemente eficiente como para poder ser entrenado con un conjunto reducido de datos de 100 imágenes y es factible su entrenamiento sin aceleración GPU. Dicho entrenamiento sin GPU duro 28 horas, tuvo un consumo eléctrico de 8.32 kilo-vatios y un equivalente de 3.6 kilogramos de emisiones de dióxido de carbono.
En las evaluaciones se verifico que el modelo propuesto, optimiza las imágenes de baja calidad principalmente respecto a la reconstrucción de bordes, y en general tiene un grado de mejora aproximado al modelo ESRGAN y ligeramente mejor en cuatro de los seis conjuntos evaluados. Esta mejora se hace evidente con las métricas MSE, PSNR y SSIM, pero no con la métrica DISTS.