PAN模型是在DIV2K上预训练的(800个图像进行训练,扩充到4000个图像,验证集中使用100个图像),用于2x、3x和4x的图像超分辨率。该模型由赵等人在2020年的论文中提出,并在其首次发布中导入。
图像超分辨率的目标是从单个低分辨率(LR)图像恢复高分辨率(HR)图像。下面的图片显示了真实图像(HR)、双三次插值图像和模型插值图像。
PAN模型提出了一种轻量级卷积神经网络用于图像超分辨率。像素注意(PA)在公式上与通道注意和空间注意类似。但是,PA产生3D注意力图而不是1D注意力向量或2D映射。这种注意机制引入了更少的额外参数,但生成了更好的SR结果。
该模型非常轻量级,模型参数仅为260k到270k(约1MB)。
您可以使用预训练模型将图像放大2x、3x和4x。您还可以使用训练器在自己的数据集上训练模型。
可以使用库来使用该模型:
以下是如何使用预训练模型放大图像的示例:
2x、3x和4x图像超分辨率的模型是在上进行预训练的,该数据集包含了800张高质量(2K分辨率)的训练图像,通过扩充得到4000张图像,并使用100张验证图像(编号801到900)作为开发集。
我们需要huggingface库来下载数据:
以下代码获取数据并对数据进行预处理/增强。
该模型在GPU上进行了训练。以下是训练代码:
评估数据集包括:
下面的结果列以PSNR/SSIM表示,并与双三次插值基准进行比较。
|数据集|尺度|双三次插值|PAN||---|---|---|---||Set5|2x|33.64/0.9292|37.77/0.9599||Set5|3x|30.39/0.8678|34.64/0.9376||Set5|4x|28.42/0.8101|31.92/0.8915||Set14|2x|30.22/0.8683|33.42/0.9162||Set14|3x|27.53/0.7737|30.8/0.8544||Set14|4x|25.99/0.7023|28.57/0.7802||BSD100|2x|29.55/0.8425|33.6/0.9235||BSD100|3x|27.20/0.7382|29.47/0.815||BSD100|4x|25.96/0.6672|28.35/0.7595||Urban100|2x|26.66/0.8408|31.31/0.9197||Urban100|3x| |28.61/0.8603||Urban100|4x|23.14/0.6573|25.63/0.7692|
您可以在以下notebook中找到轻松运行预训练模型评估的代码: