1. Видео суперразрешение (VSR)
1.1 Принцип
Видео суперразрешение происходит от суперразрешения изображений, которое направлено на восстановление изображений с высоким разрешением (HR) из одного или нескольких изображений с низким разрешением (LR). Разница между ними заключается в том, что видео состоит из нескольких кадров, поэтому для восстановления обычно используется информация между кадрами. Здесь мы представляем модель видео суперразрешения EDVR, BasicVSR, IconVSR и BasicVSR++.
PP-MSVSR — это многоэтапная глубокая архитектура VSR с модулем локального слияния, вспомогательной потерей и уточнённым модулем выравнивания для постепенного улучшения результата. В частности, чтобы усилить слияние признаков между кадрами при распространении признаков, в первом этапе разработан модуль локального слияния для выполнения локального слияния признаков перед распространением признаков. Кроме того, во втором этапе введена вспомогательная потеря, чтобы признаки, полученные модулем распространения, сохраняли больше коррелированной информации, связанной с пространством HR. На третьем этапе введён уточнённый модуль выравнивания, чтобы полностью использовать информацию о признаках предыдущего этапа. Обширные эксперименты подтверждают, что PP-MSVSR достигает многообещающих результатов на наборах данных Vid4, где показатель PSNR может достигать 28,13 при всего лишь 1,45 млн параметров.
Кроме того, PP-MSVSR предоставляет две разные модели с 1,45 и 7,4 млн параметров, чтобы удовлетворить различные требования.
EDVR выигрывает чемпионаты и значительно опережает второе место во всех четырёх треках в соревнованиях по восстановлению и улучшению видео NTIRE19. Основные трудности видео суперразрешения связаны с двумя аспектами: (1) как выровнять несколько кадров при больших движениях и (2) как эффективно объединить разные кадры с разнообразными движениями и размытостью. Во-первых, для обработки больших движений EDVR разрабатывает модуль выравнивания пирамиды, каскадирования и деформирования (PCD), в котором выравнивание кадров выполняется на уровне признаков с использованием деформируемых свёрток от грубого к точному. Во-вторых, EDVR предлагает модуль слияния временного и пространственного внимания (TSA), в котором внимание применяется как временно, так и пространственно, чтобы подчеркнуть важные признаки для последующего восстановления.
BasicVSR пересматривает некоторые наиболее важные компоненты для VSR, руководствуясь четырьмя основными функциями: распространение, выравнивание, агрегирование и повышение дискретизации. Используя некоторые существующие компоненты с минимальными изменениями, BasicVSR представляет собой лаконичный конвейер, который обеспечивает заметные улучшения в скорости и качестве восстановления по сравнению со многими современными алгоритмами. Представляя механизм пополнения информации и связанную схему распространения, BasicVSR можно расширить до IconVSR, который может служить надёжной основой для будущих подходов VSR.
BasicVSR++ перепроектирует BasicVSR, предлагая распространение сетки второго порядка и выравнивание на основе потока. Усиливая рекуррентную структуру улучшенным распространением и выравниванием, BasicVSR++ может более эффективно использовать пространственно-временную информацию между несогласованными видеокадрами. Новые компоненты приводят к повышению производительности при аналогичных вычислительных ограничениях. В частности, BasicVSR++ превосходит BasicVSR на 0,82 дБ по показателю PSNR при аналогичном количестве параметров. На NTIRE 2021 BasicVSR++ получает три чемпионских титула и одно второе место в соревнованиях по видеосуперразрешению и сжатому улучшению видео.
1.2 Как использовать
1.2.1 Подготовка наборов данных
Существует 4 часто используемых набора данных для видео суперразрешения: REDS, Vimeo90K, Vid4 и UDM10. Наборы данных REDS и Vimeo90K включают обучающий набор данных и тестовый набор данных, а Vid4 и UDM10 являются тестовыми. Набор данных REDS
REDS (доступен для скачивания по ссылке https://seungjunnah.github.io/Datasets/reds.html) — это недавно предложенный набор данных видео высокого качества (720p), который использовался в конкурсе NTIRE19. REDS состоит из 240 обучающих клипов, 30 проверочных клипов и 30 тестовых клипов (каждый содержит 100 последовательных кадров). Поскольку тестовая истина не доступна, мы выбираем четыре репрезентативных клипа («000», «011», «015», «020») с разнообразными сценами и движениями в качестве нашего тестового набора, обозначенного как REDS4. Оставшиеся обучающие и проверочные клипы объединяются в наш обучающий набор данных (всего 266 клипов).
Структура обработанного REDS выглядит следующим образом:
PaddleGAN
├── data
├── REDS
├── train_sharp
└──X4
├── train_sharp_bicubic
└──X4
├── REDS4_test_sharp
└──X4
└── REDS4_test_sharp_bicubic
└──X4
...
Набор данных Vimeo90K
Vimeo90K (доступен для скачивания по ссылке http://toflow.csail.mit.edu/) разработан Tianfan Xue и др. для следующих четырёх задач обработки видео: интерполяция временных кадров, шумоподавление видео, деблокирование видео и суперразрешение видео. Vimeo90K представляет собой крупномасштабный набор данных высококачественных видео. Этот набор данных состоит из 89 800 видеоклипов, загруженных с сайта vimeo.com, которые охватывают большое разнообразие сцен и действий.
Структура обработанного Vimeo90K выглядит следующим образом:
PaddleGAN
├── data
├── Vimeo90K
├── vimeo_septuplet
|──sequences
└──sep_trainlist.txt
├── vimeo_septuplet_BD_matlabLRx4
└──sequences
└── vimeo_super_resolution_test
|──low_resolution
|──target
└──sep_testlist.txt
...
Набор данных Vid4
Vid4 (доступен для скачивания по ссылке https://paddlegan.bj.bcebos.com/datasets/Vid4.zip) является часто используемым тестовым набором данных для VSR и содержит 4 видеосегмента.
Структура обработанного Vid4 выглядит следующим образом:
PaddleGAN
├── data
├── Vid4
├── BDx4
└── GT
...
Набор данных UDM10
UDM10 (доступен для скачивания по ссылке https://paddlegan.bj.bcebos.com/datasets/udm10_paddle.tar) является часто используемым тестовым набором данных для VSR и содержит 10 видеосегментов.
Структура обработанного UDM10 выглядит следующим образом:
PaddleGAN
├── data
├── udm10
├── BDx4
└── GT
...
В зависимости от количества каналов EDVR делятся на EDVR_L (128 каналов) и EDVR_M (64 канала). Затем, взяв EDVR_M в качестве примера, представлены обучение и тестирование модели.
Обучение EDVR обычно делится на два этапа. Сначала обучите EDVR без модуля TSA.
Команда для обучения и тестирования edvr без модуля TSA выглядит следующим образом:
Обучить модель:
python -u tools/main.py --config-file configs/edvr_m_wo_tsa.yaml
Протестировать модель:
python tools/main.py --config-file configs/edvr_m_wo_tsa.yaml --evaluate-only --load ${PATH_OF_WEIGHT_WITHOUT_TSA}
Затем вес EDVR без TSA используется в качестве инициализации модели edvr для обучения полной модели edvr.
Команда для обучения и тестирования EDVR выглядит следующим образом:
Обучить модель:
python -u tools/main.py --config-file configs/edvr_m_w_tsa.yaml --load ${PATH_OF_WEIGHT_WITHOUT_TSA}
Протестировать модель:
python tools/main.py --config-file configs/edvr_m_w_tsa.yaml --evaluate-only --load ${PATH_OF_WEIGHT}
Чтобы обучить или протестировать другую модель VSR, вы можете найти файл конфигурации соответствующей модели VSR в PaddleGAN/configs, а затем изменить файл конфигурации в команде на файл конфигурации соответствующей модели VSR.
Возьмём в качестве примера модель msvsr. inputs_size — это размер входных данных, model_name — имя экспортируемой модели, а model_path — путь к модели. Путь к модели веса.
tools/export_model.py -c configs/msvsr_reds.yaml --inputs_size="1,2,3,180,320" --model_name inference --load model_path
1.2.4 Вывод модели.
Рассмотрим модель msvsr в качестве примера.
tools/inference.py --model_type msvsr -c configs/msvsr_reds.yaml --output_path output_dir
Экспериментальные результаты оцениваются по RGB каналу. Метриками являются PSNR / SSIM.
Количественное сравнение VSR на тестовом наборе данных REDS4 из набора данных REDS:
Метод | Параметр(M) | FLOPs(G) | REDS4 |
---|---|---|---|
EDVR_M_wo_tsa_SRx4 | 3.00 | 223 | 30.4429 / 0.8684 |
EDVR_M_w_tsa_SRx4 | 3.30 | 232 | 30.5169 / 0.8699 |
EDVR_L_wo_tsa_SRx4 | 19.42 | 974 | 30.8649 / 0.8761 |
EDVR_L_w_tsa_SRx4 | 20.63 | 1010 | 30.9336 / 0.8773 |
BasicVSR_x4 | 6.29 | 374 | 31.4325 / 0.8913 |
IconVSR_x4 | 8.69 | 516 | 31.6882 / 0.8950 |
BasicVSR++_x4 | 7.32 | 406 | 32.4018 / 0.9071 |
PP-MSVSR_reds_x4 | 1.45 | 111 | 31.2535 / 0.8884 |
PP-MSVSR-L_reds_x4 | 7.42 | 543 | 32.5321 / 0.9083 |
Количественное сравнение деблура на тестовом наборе данных REDS4 из REDS:
Метод | REDS4 |
---|---|
EDVR_L_wo_tsa_deblur | 34.9587 / 0.9509 |
EDVR_L_w_tsa_deblur | 35.1473 / 0.9526 |
Сравнение VSR на Vimeo90K, Vid4, UDM10:
Модель | Vimeo90K | Vid4 | UDM10 |
---|---|---|---|
PP-MSVSR_vimeo90k_x4 | 37.54/0.9499 | 28.13/0.8604 | 40.06/0.9699 |
Метод | Набор данных | Ссылка для скачивания |
---|---|---|
EDVR_M_wo_tsa_SRx4 | REDS | EDVR_M_wo_tsa_SRx4 |
EDVR_M_w_tsa_SRx4 | REDS | EDVR_M_w_tsa_SRx4 |
EDVR_L_wo_tsa_SRx4 | REDS | EDVR_L_wo_tsa_SRx4 |
EDVR_L_w_tsa_SRx4 | REDS | EDVR_L_w_tsa_SRx4 |
EDVR_L_wo_tsa_deblur | REDS | EDVR_L_wo_tsa_deblur |
EDVR_L_w_tsa_deblur | REDS | EDVR_L_w_tsa_deblur |
BasicVSR_x4 | REDS | BasicVSR_x4 |
IconVSR_x4 | REDS | IconVSR_x4 |
BasicVSR++_x4 | REDS | BasicVSR++_x4 |
PP-MSVSR_reds_x4 | REDS | PP-MSVSR_reds_x4 |
PP-MSVSR-L_reds_x4 | REDS | PP-MSVSR-L_reds_x4 |
@InProceedings{wang2019edvr,
author = {Wang, Xintao and Chan, Kelvin C.K. and Yu, Ke and Dong, Chao and Loy, Chen Change},
title = {EDVR: Video Restoration with Enhanced Deformable Convolutional Networks},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops},
month = {June},
year = {2019}
}
@InProceedings{chan2021basicvsr,
author = {Chan, Kelvin C.K. and Wang, Xintao and Yu, Ke and Dong, Chao and Loy, Chen Change},
title = {BasicVSR: The Search for Essential Components in Video Super-Resolution and Beyond},
booktitle = {Proceedings of the IEEE conference on computer vision and pattern recognition},
year = {2021}
}
@article{chan2021basicvsr++,
author = {Chan, Kelvin C.K. and
...
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )