Skip to content

Latest commit

 

History

History
94 lines (69 loc) · 4.39 KB

ttvsr_CN.md

File metadata and controls

94 lines (69 loc) · 4.39 KB

TTVSR 简介 (CVPR2022, Oral)

视频超分辨率(VSR)旨在从低分辨率(LR)帧中恢复高分辨率(HR)帧序列。虽然已经取得了一些进展,但在整个视频序列中有效地利用时间依赖性仍然存在巨大的挑战。现有的方法通常是从有限的相邻帧(例如,5或7帧)对齐和聚合视频帧,这使得这些方法无法获得令人满意的结果。在本文中,我们进一步实现了有效的视频时空学习。我们提出了一种新的用于视频超分辨率的轨迹感知转换器。特别地,我们将视频帧制定为几个预先对齐的轨迹,这些轨迹由连续的视觉标记组成。对于查询令牌,自我注意只在相关的视觉令牌上沿时空轨迹学习。与普通视觉transformer相比,这种设计大大降低了计算成本,并使transformer能够对长程特征进行建模。我们进一步提出了一个跨尺度特征标记化模块,以克服在远程视频中经常出现的尺度变化问题。实验结果在四个广泛使用的视频超分辨率基准上进行了广泛的定量和定性评估,证明了所提出的TTVSR优于现有模型。

论文: Learning Trajectory-Aware Transformer for Video Super-Resolution

  1. 训练集

    • REDS 数据集. 我们将训练和验证数据集重新组合到一个文件夹中。原始训练数据集有240个剪辑,从000到239。原始验证数据集从240重命名为269。

      • REDS 结构:
          ├────REDS
                  ├────trainval_sharp
                      ├────000
                      ├────...
                      ├────269
                  ├────trainval_sharp_bicubic
                      ├────X4
                          ├────000
                          ├────...
                          ├────269
      
  2. 测试集

    • REDS4 数据集. 000, 011,015,020片段来自REDS的原始训练数据集。

参考 github 仓库 (PyTorch)

优化器

导出到MindSpore后,计算图在训练和推理阶段都得到了最佳性能的优化。

需求和依赖

  • python 3.7 (推荐使用 Anaconda)
  • mindspore == 1.9.0
  • mmcv == 1.3.9
  • scipy == 1.7.3
  • scikit-image == 0.19.0
  • tensorboard == 2.6.0
  • tensorboardX == 2.5.1

训练性能

训练数据集信息

数据集名 REDS
一次处理数据数目 2
序列长度(帧数) 50
输入块大小 64x64
上采样倍数 x4
迭代轮次 400000
预热步奏 100

训练结果

模型 设备类型 规格 PSNR (dB) SSIM 训练时间 (seconds per iter) 总训练时间 (expected)**
TTVSR-PyTorch GPU 8 x A100 32.12 0.9021 4.2 20 days
TTVSR-MS GPU 8 x A100 31.97* 0.9016* 3.8 18 days
TTVSR-MS-Ascend Ascend Ascend-910A 31.97* 0.9016* 15.6 72 days

* 指标使用从PyTorch原始权重导出的指标。 ** 训练基本接近原来结果。

推理数据集信息

数据集名 REDS
一次处理数据数目 1
序列长 (帧数) 100
输入像素 (HxW) 320x180
输出像素 (HxW) 1280x720
上采用倍数 x4

计时

模型 设备类型 规格 推理时间 (seconds per sequence)
TTVSR-Torch GPU V100 11
TTVSR-MS GPU V100 7.5
TTVSR-MS-Ascend Ascend Ascend-910A 13