UFormer: un transformador general en forma de U para la restauración de imágenes (CVPR 2022)
Zhendong Wang, Xiaodong Cun, Jianmin Bao, Wengang Zhou, Jianzhuang Liu, Houqiang Li
Enlace en papel: [ARXIV] [CVPR]
Actualizar:
- 2024.10.24 Arreglar los enlaces caducados.
- 2022.07.06 Cargue nuevos códigos y modelos para nuestro UFormer.
- 2022.04.09 Resultados de carga de UFormer en Denoising (SIDD, DND), Descarlada de movimiento (GoPro, Hide, Realblur-J/-R) y Desblouring (DPDD).
- 2022.03.02 UFormer ha sido aceptado por CVPR 2022!
- 2021.11.30 Actualizar UFormer en el enlace ARXIV. Se cargará el nuevo código, los modelos y los resultados.
- 2021.10.28 Libere los resultados de UFormer32 en SIDD y DND.
- 2021.09.30 Libere UFormer16 previamente capacitado16 para SIDD Denoising.
- 2021.08.19 Vuelva a entrenar un modelo previamente capacitado (UFormer32)! Agregue un script para el cálculo de flop/GMAC.
- 2021.07.29 Agregue un script para probar el modelo previamente capacitado en las imágenes de resolución arbitraria.
En este documento, presentamos UFormer, una arquitectura efectiva y eficiente basada en transformadores, en la que construimos una red jerárquica de codificadores codificadores utilizando el bloque de transformador para la restauración de imágenes. UFormer tiene dos diseños principales para que sea adecuado para esta tarea. El primer elemento clave es un bloque de transformador de ventana mejorado local, donde utilizamos la autoatención basada en ventanas no superpuestas para reducir el requisito computacional y emplear la convolución en términos de profundidad en la red de avance para mejorar aún más su potencial para capturar el contexto local. El segundo elemento clave es que exploramos tres esquemas de conexión de omisión para entregar efectivamente información del codificador al decodificador. Impulsado por estos dos diseños, UFormer disfruta de una alta capacidad para capturar dependencias útiles para la restauración de imágenes. Experimentos extensos en varias tareas de restauración de imágenes demuestran la superioridad delformer, incluida la descenso de imágenes, la descarriación, la deslurración y la demostración. Esperamos que nuestro trabajo aliente a más investigaciones a explorar arquitecturas basadas en transformadores para tareas de visión de bajo nivel. 
Dependencias de paquetes
El proyecto está construido con Pytorch 1.9.0, Python3.7, Cuda11.1. Para las dependencias de paquetes, puede instalarlas por:
pip install -r requirements.txt
Modelo previamente
Resultados del modelo previo
- UFormer_B: SIDD | DND | GoPro | Esconderse | Realblur-J | Realblur-R | Dpdd
Preparación de datos
Renovado
Para los datos de capacitación de SIDD, puede descargar el conjunto de datos SIDD-Medio de la URL oficial. Luego genere parches de entrenamiento para el entrenamiento por:
python3 generate_patches_SIDD . py - - src_dir .. / SIDD_Medium_Srgb / Data - - tar_dir .. / datasets / denoising / sidd / train
Para la evaluación en SIDD y DND, puede descargar datos desde aquí.
Desordenado
Para la capacitación en GoPro y la evaluación en GoPro, Hide, Realblur-J y Realblur-R, puede descargar datos de aquí.
Luego coloque todos los datos de renovación en ../datasets/denoising , y todos los datos de descarga en ../datasets/deblurring .
Capacitación
Renovado
Para entrenar a UFormer en SIDD, puede comenzar el entrenamiento por:
sh script/train_denoise.sh
Desordenado
Para entrenar a Uformer en GoPro, puede comenzar el entrenamiento por:
sh script/train_motiondeblur.sh
Evaluación
Para evaluar UFormer, puede ejecutar:
Para evaluar en cada conjunto de datos, debe incommentar la línea correspondiente.
Costo computacional
Proporcionamos un script simple para calcular los flops por nosotros mismos, se ha agregado un script simple en model.py . Puede cambiar la configuración y ejecutar:
El cálculo manual de GMAC en este repositorio difiere ligeramente del documento principal, pero no influyen en la conclusión. Corregiremos el papel más tarde.
Citación
Si encuentra útil este proyecto en su investigación, considere citar:
@InProceedings{Wang_2022_CVPR,
author = {Wang, Zhendong and Cun, Xiaodong and Bao, Jianmin and Zhou, Wengang and Liu, Jianzhuang and Li, Houqiang},
title = {Uformer: A General U-Shaped Transformer for Image Restoration},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2022},
pages = {17683-17693}
}
Reconocimiento
Este código toma mucho prestado de Mirnet y SwinTransformer.
Contacto
Póngase en contacto con nosotros si hay alguna pregunta o sugerencia (Zhendong Wang [email protected], Xiaodong Cun [email protected]).