Uformer: общий U-образный трансформатор для восстановления изображения (CVPR 2022)
Zhendong Wang, Xiaodong Cun, Jianmin Bao, Wengang Zhou, Jianzhuang Liu, Houqiang Li
Бумажная ссылка: [arxiv] [CVPR]
Обновлять:
- 2024.10.24 Исполненные ссылки.
- 2022.07.06 Загрузите новые коды и модели для нашего Ubormer.
- 2022.04.09 Результаты загрузки Ubormer на денирование (SIDD, DND), Deblurring Motion (GoPro, Hide, Realblur-J/-R) и Defocus deblurring (DPDD).
- 2022.03.02 Ubormer был принят CVPR 2022!
- 2021.11.30 Обновление Ubormer в ссылке Arxiv. Новый код, модели и результаты будут загружены.
- 2021.10.28 Выпустите результаты Uformer32 на SIDD и DND.
- 2021.09.30 Выпуск предварительно обученного Uformer16 для Sidd Denoising.
- 2021.08.19 Выпустите предварительно обученную модель (Uformer32)! Добавьте скрипт для расчета Flop/GMAC.
- 2021.07.29 Добавьте сценарий для тестирования предварительно обученной модели на изображениях произвольного разрешения.
В этой статье мы представляем Ubormer, эффективную и эффективную архитектуру на основе трансформаторов, в которой мы строим иерархическую сеть энкодера-декодера, используя блок трансформатора для восстановления изображения. Uformer имеет два основных проекта, чтобы сделать его подходящим для этой задачи. Первый ключевой элемент-это блок преобразователей с локальным активами, где мы используем непересекающиеся в окнах самопринятие, чтобы уменьшить вычислительные требования и использовать глубинную свертку в сети подачи, чтобы еще больше улучшить свой потенциал для захвата локального контекста. Второй ключевой элемент заключается в том, что мы исследуем три схемы скип-соединения, чтобы эффективно доставить информацию из кодера в декодер. Принимая во внимание эти два дизайна, Uformer пользуется высокой способностью для захвата полезных зависимостей для восстановления изображений. Обширные эксперименты по нескольким задачам восстановления изображений демонстрируют превосходство Ubormer, включая денообразование изображений, разборку, разборку и демонстрацию. Мы ожидаем, что наша работа поощряет дальнейшие исследования для изучения архитектуры на основе трансформатора для задач зрения низкого уровня. 
Зависимости пакета
Проект построен с Pytorch 1.9.0, Python3.7, CUDA11.1. Для зависимостей от пакетов вы можете установить их:
pip install -r requirements.txt
Предварительная модель
Результаты из предварительной модели
- Uformer_b: sidd | Dnd | GoPro | Скрыть | Realblur-J | REALBLUR-R | DPDD
Подготовка данных
Разоблачение
Для обучения данных SIDD вы можете загрузить набор данных SIDD-Medium из официального URL. Затем генерируйте учебные патчи для обучения:
python3 generate_patches_SIDD . py - - src_dir .. / SIDD_Medium_Srgb / Data - - tar_dir .. / datasets / denoising / sidd / train
Для оценки на SIDD и DND вы можете загрузить данные отсюда.
Разборка
Для обучения по GoPro и оценки на GoPro, Hide, Realblur-J и Realblur-R вы можете загрузить данные отсюда.
Затем вставьте все двойные данные в ../datasets/denoising , и все разбитые данные в ../datasets/deblurring .
Обучение
Разоблачение
Чтобы обучить Uformer на SIDD, вы можете начать обучение с:
sh script/train_denoise.sh
Разборка
Чтобы обучить Uformer на GoPro, вы можете начать обучение с:
sh script/train_motiondeblur.sh
Оценка
Чтобы оценить Uformer, вы можете запустить:
Для оценки на каждом наборе данных вы должны неуместно соответствующей строки.
Вычислительная стоимость
Мы предоставляем простой сценарий для расчета провалов самим, в model.py был добавлен простой сценарий. Вы можете изменить конфигурацию и запустить:
Ручной расчет GMAC в этом репо немного отличается от основной статьи, но они не влияют на вывод. Мы исправим бумагу позже.
Цитирование
Если вы найдете этот проект полезным в своем исследовании, рассмотрите возможность ссылаться:
@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}
}
Подтверждение
Этот код в значительной степени заимствует у Mirnet и Swintransformer.
Контакт
Пожалуйста, свяжитесь с нами, если есть какие -либо вопросы или предложения (Zhendong Wang [email protected], xiaodong cun [email protected]).