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

点击上方“算法猿的成长“,关注公众号,选择加“星标“或“置顶”

总第 145 篇文章,本文大约 2100 字,阅读大约需要 7 分钟

前言

今天要介绍的是 Github 上一个基于深度学习的超分辨率工具--SRZoo,并且它还提供了多个预训练模型。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上运行这些模型。


最近滴滴云推出了多个基于 NVIDIA vGPU 的新型实例,包括计算型、渲染型和游戏型三大类,支持的 GPU包括 Tesla P4、P40、T4 等,可以选择包年、包月或者按照小时购买使用时间,非常灵活方便。

现在填写我的滴滴云专属 AI 大师码:9192,可以享受 9 折优惠。

滴滴云官网地址:

www.didiyun.com


精选AI文章

1.  2020年计算机视觉学习指南

2. 是选择Keras还是PyTorch开始你的深度学习之旅呢?

3. 编写高效的PyTorch代码技巧(上)

4. 编写高效的PyTorch代码技巧(下)

5. 深度学习算法简要综述(上)

6. 深度学习算法简要综述(下)

7. 10个实用的机器学习建议

8. 实战|手把手教你训练一个基于Keras的多标签图像分类器

精选python文章

1.  python数据模型

2. python版代码整洁之道

3. 快速入门 Jupyter notebook

4. Jupyter 进阶教程

5. 10个高效的pandas技巧

精选教程资源文章

1. [资源分享] TensorFlow 官方中文版教程来了

2. [资源]推荐一些Python书籍和教程,入门和进阶的都有!

3. [Github项目推荐] 推荐三个助你更好利用Github的工具

4. Github上的各大高校资料以及国外公开课视频

5. GitHub上有哪些比较好的计算机视觉/机器视觉的项目?

欢迎关注我的微信公众号--算法猿的成长,或者扫描下方的二维码,大家一起交流,学习和进步!

 

如果觉得不错,在看、转发就是对小编的一个支持!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

spearhead_cai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值