​图像超分辨率是指由一幅低分辨率图像或图像序列恢复出高分辨率图像。图像超分辨率技术分为超分辨率复原和超分辨率重建。一位 Reddit 网友贴出了自己基于 Keras 的图像超分辨率项目,可以让照片放大后依然清晰。

该项目包含不同残差密集网络的 Keras 实现,它们可用于高效的单图像超分辨率(Image Super Resolution,ISR)。同时作者还提供了各种文档资料以帮助训练模型,包括如何使用对抗损失组件训练这些网络。

作者表示,该项目旨在改善低分辨率图像的质量,使其焕然一新。使用该工具可以对图像进行超级放缩,还能很容易地在 RDN 和 GAN上进行实验。

下图示例使用的放大因子(upscaling factor)为 2,即像素数扩大两倍。

左图为原始的低分辨率图像,中间图为该网络的输出结果,右图为使用 GIMP bicubic scaling 得到的基线模型放大结果。

超分辨率项目使用

前面展示的超分辨率效果都是根据该项目实现的不同模型做出来的。超分辨率希望根据已有的图像信息重构出缺失的图像细节,它通常借助卷积神经网络抽取图像信息,再通过转置卷积将这些信息扩展到希望获得的图像分辨率。

在这个项目中,作者新增了很多模块与特征,例如使用 VGG 与 GAN 实现真实的放大图像。该项目主要实现的是 RDN 与 RRDN 网络,且同时还提供了预训练权重和 Colab 教程。不论是训练还是推断,根据这些资料我们都可以快速上手。

文档:https://idealo.github.io/image-super-resolution/

代码:https://github.com/idealo/image-super-resolution/

Colab 推断代码:https://colab.research.google.com/github/idealo/image-super-resolution/blob/master/notebooks/ISR_Prediction_Tutorial.ipynb

Colab 训练代码:https://colab.research.google.com/github/idealo/image-super-resolution/blob/master/notebooks/ISR_Traininig_Tutorial.ipynb

安装:pip install ISR

如果我们需要扩展低像素图像,简单两步就能借助 ISR 执行超分辨率。首先加载图像并做一定的预处理:

import numpy as np
from PIL import Image
​
img=Image.open('test.jpg')
lr_img=np.array(img)/255
print(lr_img.shape)
lr_img=np.expand_dims(lr_img,axis=0)
print(lr_img.shape)
​
#加载模型并执行预测
from ISR.models import RDN
​
rdn=RDN(arch_params={'C':6,'D':20,'G':64,'G0':64,'x':2})
rdn.model.load_weights('weights/rdn-C6-D20-G64-G064-x2_enhanced-e219.hdf5')
​
sr_img=rdn.model.predict(lr_img)[0]
print(sr_img.shape)
​
sr_img=sr_img.clip(0,1)*255
sr_img=np.uint8(sr_img)
img_new=Image.fromarray(sr_img)
img_new.show()
img_new.save('img_new.jpg'

网络架构与超参数

实际上,如果我们需要重新训练,那么还需要了解具体的参数都表示什么。这一部分介绍了各超分辨率网络的架构与对应超参数。

RDN Network architecture

论文地址:https://arxiv.org/abs/1802.08797

RDN 架构的主要参数如下:

D:残差密集块(Residual Dense Blocks ,RDB)数量

C:一个RDB内部堆叠的卷积层数量

G:RDB 内部每一卷积层的特征图数量

G0:每一个RDB 的卷积层的特征图数量

RRDN Network architecture

论文地址:https://arxiv.org/abs/1809.00219

RRDN 架构的主要参数如下:

T:残差密集块内的残差数量

D:一个RRDB 内部的残差密集块(RDB)的数量

C:一个RDB 内部堆叠的卷积层数量

G:RDB 内部每一卷积层的特征图数量

超像素分割算法matlab_像素不够,算法来凑。这个图像超分辨率项目帮你「拍」出高清照片...相关推荐

  1. B站开源自研动漫超分辨率模型,助力动漫UGC视频高清化

    点击上方"LiveVideoStack"关注我们 人类对于视频画质的升级是一个永无止尽的过程.从马赛克到高清画质,从720P到4K,视频平台正在不断提升画质,但目前各大视频平台的超 ...

  2. 图像超分算法SRLUT: Practical Single-Image Super-Resolution Using Look-Up Table图像超分辨率重建

    这篇文章是首次将查表法引入SR领域.将SR网络训练好的缩放像素值存在表中,在测试阶段只需要在表中查找对应值,就能完成图像重建任务.由于该方法不需要大量的浮点运算,因此可以非常快速地执行. 原文链接:S ...

  3. 电脑做照片视频的软件用哪个?3步制作高清照片视频,超多酷炫转场效果

    电脑做照片视频的软件用哪个?在电脑上用什么软件做照片视频?如何快速做一个效果精美的高清照片视频? 今天直接教大家我一直在用的数码大师,做一个高清的精美照片视频吧,这里分享我的制作教程和效果截图: 在电 ...

  4. 论文解读:《自适应非局部随机游动用于图像超像素分割》

    论文解读:<Adaptive Nonlocal Random Walks for Image Superpixel Segmentation> 1.文章概述 2.背景 2.1 现有的超像素 ...

  5. 一文掌握图像超分辨率重建(算法原理、Pytorch实现)——含完整代码和数据

    目录 一.  图像超分辨率重建概述 1. 概念 2. 应用领域 3. 研究进展 3.1 传统超分辨率重建算法 3.2 基于深度学习的超分辨率重建算法 二.  SRResNet算法原理和Pytorch实 ...

  6. 图像超分辨率重建算法,让模糊图像变清晰(附数据和代码)

    一.  图像超分辨率重建概述 1. 概念 图像分辨率是一组用于评估图像中蕴含细节信息丰富程度的性能参数,包括时间分辨率.空间分辨率及色阶分辨率等,体现了成像系统实际所能反映物体细节信息的能力.相较于低 ...

  7. 杜克大学提出 AI 算法,拯救渣画质马赛克秒变高清

    来源:HyperAI超神经 本文约1900字,建议阅读7+分钟 高清无码不是梦. 场景描述:将"马赛克"像素级别的大头照转换成高清照片,是一种怎样的体验?杜克大学提出的 AI 算法 ...

  8. 拯救渣画质,马赛克图秒变高清,杜克大学提出AI新算法

    作者 | 神经小兮 来源 | HyperAI超神经(ID: HyperAI) 导语:将「马赛克」像素级别的大头照转换成高清照片,是一种怎样的体验?杜克大学提出的 AI 算法,不仅可以「去掉马赛克」,还 ...

  9. 不同分辨率图片匹配_杜克大学开源 AI 算法,让马赛克图片秒变高清!

    公众号关注 "GitHubDaily" 设为 "星标",每天带你逛 GitHub! 大家好,我是小 G.在这个追求高清画质的时代,我们对渣画质的容忍度越来越低. ...

最新文章

  1. Kafka High Availability (下)
  2. hadoop生态下hive安装过程
  3. 你可能不知道的package.json
  4. python编写请求参数带文件_python:解析httppost请求,其中包含文件上传和其他参数...
  5. windows程序静默安装
  6. laravel 分页带参数
  7. java screenframe_一个关于JFrame的问题
  8. 残差网络 ResNet 为什么能训练出1000层的模型 动手学深度学习v2
  9. 聊一聊Dubbo的一些特性和原理
  10. 解决Intellij IDEA 一直在indexing....,导致idea很卡,无法操作
  11. 解读物联网八大环节供应链(附13大电子行业产业链全景图)
  12. app显示服务器图片不显示,如何将存在本地服务器的图片,在APP前台显示
  13. 2026年预标准5G营收将达到2000亿美元
  14. 《小白兔到大黑牛》第十三篇maven中Hadoop中类的练习
  15. 基于模糊PID的柴油机调速系统
  16. 安全需求规范和管理指南
  17. 小数除以整数在c语言,小数除以整数的说课稿
  18. 当人工智能渐渐成熟,健康医疗将更专注于数据整合
  19. 算法 14.水晶问题
  20. 28-29周学习记录

热门文章

  1. Java中对Array数组的api展示
  2. python range函数范围_Python range函数深入解析
  3. centos7修改mysql数据存储,Centos7 修改mysql8数据文件存储路径方案
  4. 昆仑万维C++工程师笔试
  5. OpenShift 4 之获取版本升级路径图
  6. Abp框架默认表中如何添加字段
  7. html 生成image java makenoise,[图形学] 柏林噪声 (perlin noise)
  8. vue router children 路由变了 组件没变_Vue.js从零开始——路由(2)
  9. mysql去重操作哪个最快_如何将 MySQL 去重操作优化到极致?| CSDN 博文精选
  10. esp32树莓派_用树莓派 DIY 宠物自动喂食机,再也不用担心家里的萌宠了