Press "Enter" to skip to content

SRZoo:深度学习图像超分辨率工具

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

前言

 

今天要介绍的是 Github 上一个基于深度学习的超分辨率工具– ,并且它还提供了多个预训练模型。Github 地址:

 

https://github.com/idearibosome/srzoo?u=2181051220&m=4512180215508847&cu=2181051220&ru=1402400261&rm=4512148967116203

 

简介

 

SRZoo 是一个基于深度学习的图像超分辨率的工具和模型库,它提供了多种图像超分辨率领域目前性能最好的预训练模型。

 

它的主要功能包括:

 

SRZoo 提供了多种超分辨率方法的官方预训练模型;

 

通过 SRZoo,可以非常容易就通过提供的超分辨率方法来获取超分辨率(super-resolved)的图片;

 

可以在不同配置环境下使用超分辨率模型,比如支持 CUDA 的 GPUs 以及通过 TensorFlow.js 的浏览器;

 

可以在相同评估标准和环境下对比超分辨率方法的性能。

 

在下面这篇论文中,你可以了解更多我们的动机以及一些对 SRZoo 的细节描述,比如性能比较等:

 

J.-H. Choi, J.-H. Kim, J.-S. Lee. SRZoo: an integrated repository for super-resolution using deep learning. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), May 2020

 

论文地址:

 

https://doi.org/10.1109/ICASSP40776.2020.9054533

 

arxiv 的地址:

 

https://arxiv.org/abs/2006.01339

 

使用要求

 

Python3.6 或者更新的版本

 

TensorFlow1.12 或者更新版本

 

预训练的超分辨率模型

 

下面是提供的一些预训练模型,模型的参数都在自模型算法的作者。如果你有用到这些模型算法,请加上对论文的引用。

超分辨率图片检索

 

在 SRZoo 中通过 get_sr.py 代码提供了一个简单的图像搜索,使用例子:

 

python get_sr.py --config_path=configs/edsr.json --model_path=edsr_x4.pb --input_path=LR --output_path=SR --scale=4

 

参数说明:

config_path :模型配置文件路径

model_path :预训练模型文件路径

input_path :输入的低分辨率图片的路径

output_path :输出的超分辨率图片的保存路径

scale :提高的倍数

self_ensemble :指定是否应用
geometric self-ensemble 方法(http://openaccess.thecvf.com/content_cvpr_2017_workshops/w12/papers/Lim_Enhanced_Deep_Residual_CVPR_2017_paper.pdf)

cuda_device :指定采用的 GPU 设备索引(需要将环境变量设置为
CUDA_VISIBLE_DEVICE )

注意:部分模型由于不同维度顺序问题,只能在 GPU 上运行。

 

性能评价

 

在获取到超分辨率图片后,可以通过代码 evaluate_sr.py 进行性能的评价,使用例子:

 

python evaluate_sr.py --sr_path=SR --truth_path=HR

 

参数说明:

sr_path :超分辨率图片路径

truth_path :真实图片的路径

shave_borders :图像边界需要修正的像素的数量。通常设置为增大尺寸的倍数(upscaling factor)

color_mode :颜色转换模式。

ycbcry :YCbCr 颜色空间的 Y 通道

RGB :RGB 颜色空间的 RGB 通道

evaluators :以逗号分隔的评估方法。主要采用文件夹
evaluators 里的评估方法

output_name :输出的 CSV 文件的路径

这里你可以自定义自己的评估方法,通过继承基类 BaseEvaluator ,代码是保存在文件夹 evaluators/

 

模型转换

 

也可以对其他预训练的超分辨率模型进行转换。详情可以查看文件夹 converter 中的信息。另外,根据 config 文件夹的内容来编写你需要进行转换的模型的配置信息。

 

其他

 

图像降低(downscaling)工具

 

SRZoo 对于评估超分辨率模型也提供了降低工具(downscaling utilities),具体可以查看 utils/downscale 文件夹

 

采用其他的图像处理模型

 

SRZoo 可以应用于输入输出都是图像的模型,因此也可以在简单做了一些修改后应该其他的图像处理算法。作为一个概念验证,我们提供了一个基于 SRZoo 的预训练图像压缩模型,模型算法来自:

 

https://github.com/fab-jul/imgcomp-cvpr

 

使用结果:

如果要应用这些模型,可以简单地将 upscaling factor 设置为 1,比如 get_sr.py 中的参数 --scale

 

不过目前只支持在 GPU上运行这些模型。

Be First to Comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注