RealSR真实场景超分

2023-05-16

一、Camera Lens Super-Resolution

本文主要解决RealSR的数据问题,通过控制镜头到物体的距离产生成对的真实数据(Real paired SR data)。

(1)出发点

现有的超分方法通常采用合成退化模型,如双三次(Bicubic)或高斯降采样。

(2)主要工作

本文主要从真实成对数据获取方面解决RealSR问题。

  • 为缓解现实成像系统中分辨率R和视场V之间的内在权衡,利用相机镜头的R-V退化,用于现实成像系统中的SR建模。
  • 创建City100数据集,包含两种新的获取LR-HR图像对的策略,分别用来描述在单反相机和智能手机相机下的R-V退化。
  • 利用实际数据对常用的综合退化模型进行定量分析。
  • 一种有效的解决方案,即CameraSR,在现实成像系统中推广现有的基于学习的SR方法。
    在这里插入图片描述

二、Zoom to Learn, Learn to Zoom

本文主要解决RealSR的数据问题,通过控制相机变焦,产生成对的真实数据(Real paired SR data)。

(1)主要工作

  • 使用真实的高比特传感器数据进行计算缩放,相比于处理过的8位RGB图像或合成传感器模型更有效。
  • 创建新的数据集,SR-RAW,他是第一个从原始数据超分辨率的数据集,具有光学地面真理。SR-RAW使用变焦镜头拍摄。用长焦距拍摄的图像作为较短焦距拍摄的图像的光学真实。
  • 提出了一种新的上下文双边损失(CoBi)处理轻微失调的图像对
    CoBi通过加权空间意识来考虑局部上下文相似性。

(2)不同焦距产生的图像

在这里插入图片描述

(3)数据对齐问题(Misalignment Analysis)

(B1)角度偏差;(B2)景深偏差;(B3)对齐偏差
在这里插入图片描述
为解决以上问题,本文提出上下文双边损失(Contextual Bilateral Loss)。
在这里插入图片描述

三、Toward Real-World Single Image Super-Resolution: A New Benchmark and A New Model (ICCV2019) 详细介绍

(1)主要工作

  • 本文通过镜头变焦+图像配准建立数据集RealSR。
  • 提出拉普拉斯金字塔核预测网络(Laplacian pyramid based kernel prediction network (LP-KPN))解决RealSR问题。

(2)数据收集

  • 物距、像距、焦距示意图:
    在这里插入图片描述
  • 图像配准
    在这里插入图片描述
    为了获得精确的图像对配准,本文设计了一种同时考虑亮度调整的像素级配准算法(pixel-wise registration algorithm )。

(3)KPN结构

分三层进行核(kernel)预测,目的是减少计算量、增大感受野。
在这里插入图片描述

四、Frequency Separation for Real-World Super-Resolution(ICCV2019)

本文利用GAN合成跟接近于真实场景下的LR-HR图像对,然后利用该数据训练SR模型,在Real-World数据上获得了较好的重建结果。

(1)出发点

真实场景数据更为复杂,现有模型在真实数据上的泛化能力较差。

(2)主要工作

  • 利用GAN生成更接近于真实场景的LR-HR图像对,以用于SR模型的训练。
    -在ESRGAN基础上加入频域分离(Frequency Separation)技术,构建RealSR模型。

(3)频域分离

在这里插入图片描述

(4)利用GAN生成真实LR数据

在这里插入图片描述

  • 生成器:低频颜色损失+高频对抗损失+纹理损失
    在这里插入图片描述
  • 判别器:高频判别损失
    在这里插入图片描述

(5)ESRGAN-FS(Frequency Separation)

在ESRGAN中加入频域分离。
在这里插入图片描述

五、Kernel Modeling Super-Resolution on Real Low-Resolution Images (ICCV2019)

(1)主要工作

  • 利用Blur-Kernel Estimation算法从真实图像中估计出真实图像的模糊核(realistic blur-kernels),建立模糊核集合K。
  • 借助K中的模糊核,利用WGAN-GP学习模糊核的分布,并生成更多的模糊核,然后建立模糊核池(blur kernel pool)K+。
  • 利用K+中的模糊核将高分辨率图像转换为接近于真实场景的低分辨率图像,从而构建训练数据。
    在这里插入图片描述

(2) Blur-Kernel Estimation

该模糊核估计方法出自论文:Blind Image Deblurring Using Dark Channel Prior

  • 真实LR利用Bicubic上采样
  • 提取图像块p,由于缺乏高频细节的块(如从天空、墙壁等提取的块)的模糊核估计算法可能会失败,所以p需要满足以下条件:
    在这里插入图片描述
  • 利用模糊核估计算法估计p的模糊核,模糊核k通过以下公式求解(详细过程见上述参考文献):
    在这里插入图片描述

(3)Kernel Modeling with GAN

利用WGAN-GP生成更多的模糊核,创建模糊核池K+。WGAN-GP见WGAN-GP详细过程。
在这里插入图片描述

(4)Super-Resolution with CNN

  • 由高分辨率图像创建训练数据集:
    在这里插入图片描述
  • 训练模型:
    在这里插入图片描述

六、Learning to Zoom-in via Learning to Zoom-out: Real-world Super-resolution by Generating and Adapting Degradation (CVPR2020)

本文主要思想为利用CycleGAN生成更接近于真实场景的LR-HR图像对。

(1)出发点

  • 现有方法利用各种手段努力获取跟接近于真实的成对的LR-HR图像对(如相机调焦等),但是这些方法采集到的图像对存在各种各样的不对齐情形。

(2)主要工作

  • 首先利用CycleGAN训练一个退化生成网络来生成真实的LR图像,尽量减小生成数据与真实数据之间的差异。
  • 设计自适应退化超分网络用于真实图像的超分。

(3) Degradation generation network

  • 外圈红色为合成数据;内圈蓝色为真实数据
  • G(.)用于将图像由合成域( synthetic domain)向真实域(realistic domain)转换;F(.)用于将图像由真实域(realistic domain)向合成域( synthetic domain)转换。
  • 左侧判别器Dsyn用于判别是否为合成数据;左侧判别器Dreal用于判别是否为真实数据;
  • 循环一致损失用于保证图像内容不变。
    在这里插入图片描述
  • 损失函数:
    生成器:两个循环一致损失+两个对抗损失
    判别器:两个判别损失

(4)Degradation Adaptive SR Network

在这里插入图片描述
损失函数主要包括两部分:

  • 常规GAN损失:L1损失+相对对抗损失
    这两个损失用来保证内容的准确性
    在这里插入图片描述
  • 自适应退化损失
    作者认为,尽管Degradation generation network已经解决了LR的domain gap问题,但还是很难达到理想的情况。所以作者在此
    又加入了两个域判别器(domain discriminator):
    在这里插入图片描述
    在这里插入图片描述
    总体的损失函数为:
    在这里插入图片描述

七、Guided Frequency Separation Network for Real-World Super-Resolution(CVPRW2020)

本片文章与前边介绍的文章有很多相似之处,分两部分:domain transformationsuper-resolution.

在这里插入图片描述

(1)Domain transformation

生成器损失函数(上图最下方的三个损失):低频内容损失+感知损失+高频域转换对抗损失

(2)SR

生成器损失(上图右上角两个损失):高频内容对抗损失+内容损失+边缘损失(canny)
在这里插入图片描述

八、Blind Super-Resolution Kernel Estimation using an Internal-GAN (KernelGAN,NIPS2019)

本篇文章提出来一种无监督盲超分方法。
该方法可以理解为是对ZSSR(Zero-Shot SR)的改进。ZSSR利用bicubic进行下采样降质,然后完成无监督超分,但是该方法是非盲的;而本文主要的工作是利用GAN学习自身分布,从而得到更真实的降质图像。所以本文的关注点为:如何更好地完成图像降质过程。

本文方法包含两个过程:
  • 利用kernelGAN估计输入图像的降质kernel并得到其所对应的降质图像;
  • 得到成对图像,利用ZSSR完成无监督超分。

(1)KernelGAN:

kernelGAN详细介绍
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

九、Real-World Super-Resolution via Kernel Estimation and Noise Injection(CVPRW2020-RealSR冠军)

本片文章思想类似于Kernel Modeling Super-Resolution on Real Low-Resolution Images (ICCV2019),不同之处为:
1、本文利用kernelGAN预测模糊核

(1)主要工作

本文作者认为真实世界超分辨率的关键问题引入精确的退化方法,以保证生成的低分辨率图像与原始图像具有相同的域属性,所有本文的主要工作为:

  • 提出了一种新的在真实环境下的退化框架RealSR,为超分辨率学习提供了逼真的图像。
  • 通过估计核和噪声,我们探索了模糊噪声图像的具体退化

(2)Kernel Estimation and Downsampling

利用KernelGAN来估计真实图像的模糊核,估计的模糊核满足以下约束:
在这里插入图片描述

(3)Noise Injection

通过注入噪声到降采样图像中,以生成真实的LR图像。噪声ni满足以下约束:
在这里插入图片描述

(4)图像退化总体流程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

十、Towards Real Scene Super-Resolution with Raw Images (CVPR2019)

本文首先通过模拟数码相机的成像过程来生成真实的训练数据,然后直接利用原始RAW数据进行重建。

(1)出发点

  • 缺乏真实的训练数据
  • 输入信息的丢失

(2)主要工作

  • 合成更接近于真实场景的训练数据。
  • 提出双向网络架构(dual network)来利用原始数据(Raw数据)和彩色图像(RGB)来实现真实场景的超分辨率。此外,还提出学习空间变化的颜色变换(spatial-variant color transformations)以及特征融合(feature fusion)以获得更好的性能。

(3)Raw数据

  • Raw与彩色图像的关系:
    在这里插入图片描述
    Raw数据的优势:
  • Raw数据拥有更多的信息可以利用,因为它们通常是12或14位,而颜色像素由ISP产生通常是8位。
  • 原始数据与场景亮度成正比,而ISP包含非线性操作,如色调映射。因此,成像过程中的线性退化,包括模糊和噪声,在处理后的RGB空间是非线性的,这给图像恢复带来了更多的困难。
  • ISP中的镶嵌步骤与超分辨率高度相关,因为这两个问题都与相机的分辨率限制有关。
    因此,用预处理图像(RGB图像)来解决超分辨率问题是次优的,可能不如用一个统一的模型同时解决这两个问题(IPS问题与超分问题)。

(4)合成训练数据

为了获得更接近于真实场景的图像,采用以下方式合成训练数据:
在这里插入图片描述

(5)网络结构

上路分支利用输入raw数据重建RGB图像的纹理结构信息(raw数据缺乏颜色亮度信息);
下路分支利用彩色图像对上路图像进行颜色校正。
在这里插入图片描述
1、重建分支:
首先将原始数据Xraw划分成四个通道,分别对应于R、G、B、G,然后利用U-Net结构提取特征并上采样,最后重建为RGB三通道。
在这里插入图片描述
2、颜色校正分支
利用CNN去估计pixel-wise transformation:
在这里插入图片描述
然后对逐个像素进行颜色校正:
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RealSR真实场景超分 的相关文章

  • windows ubuntu18.04 双系统共用蓝牙LE的鼠标

    由于由于双系统的缘故 xff0c 一个蓝牙鼠标并不能无缝的在ubuntu和windows之间切换 由于现在市场上很多是bluetooth LE鼠标 xff0c 所以网上的方法都会失效 这里以华为蓝牙鼠标为例 xff0c 给出一种可行的解决方
  • Apsara Clouder云计算专项技能认证:云服务器ECS入门

    1 xff0e 云服务器ECS以服务化的方式对客户提供 xff0c 阿里云产品售后支持的时间段是 xff1f 单选 A 5 8 B 7 8 C 7 12 D 7 24 2 xff0e 云服务器ECS属于云计算SaaS PaaS laaS哪一
  • Anaconda 下载

    官方下载源 xff08 下载较慢 xff09 xff1a https repo anaconda com archive https repo anaconda com archive 国内下载源 xff08 清华映像站 xff09 xff
  • dpkg: 处理软件包 XXXX (--configure)时出错解决方法

    正在设置 ubuntu drivers common 1 0 4 17 7 var lib dpkg info ubuntu drivers common postinst 21 var lib dpkg info ubuntu drive
  • k8s资源调度

    k8s资源调度 文章目录 k8s资源调度nodeSelectornodeAffinitytainttolerations k8s基本架构如下 Scheduler调度器做为Kubernetes三大核心组件之一 xff0c 承载着整个集群资源的
  • maskrcnn训练自己的数据集报错:ModuleNotFoundError: No module named ‘cityscapesscripts‘

    原因是需要安装cityscapesscripts xff0c 安装地址 xff1a https github com mcordts cityscapesScripts xff0c clone下来之后安装上面的说明进行install pyt
  • 选择排序详解

    选择排序详解 文章目录 选择排序详解1 选择排序算法详解1 药引子 我自己的排序方法2 命根子 选择排序的精髓3 选择排序图解4 总结 2 选择排序的代码详解 摘要 xff1a 选择排序算法是一种比较容易理解的排序算法 xff0c 记得我在
  • golang中日期操作之日期格式化及日期转换

    golang中并没有像java一样提供类似yyyy MM dd HH mm ss格式的操作 xff0c 而是将其定义为golang的诞生时间 xff1a 2006 01 02 15 04 05 0700 MST 注意这在golang的日期格
  • python4

    选择结构程序设计 通过Input xff08 xff09 函数任意输入三条边长 xff0c 经过简单的计算后 xff0c 判断三条边长能否构成三角形 xff0c 并确定是类型的三角形 xff0c 如 xff08 等边 xff0c 等腰 xf
  • python7

    如有问题请大佬指出 xff0c 撒花 1 创建SchoolMem类 xff0c 该类中包含三种属性 xff1a 姓名 性别 年龄以及针对每个属性的get和set方法 xff1b 2 创建Student类 xff0c 继承自SchoolMem
  • 啊哈-小哼买书

    1 桶排序解决 xff08 在网站中可以AC xff09 include lt cstdio gt include lt iostream gt using namespace std int main int a 1001 n i t i
  • 周周复始 |python实现日历 遇到的错误

    错误总结 pip 问题使用oenpyxl的问题 pip 问题 安装或更新都会出现一下问题 xff1a ERROR Exception Traceback most recent call last 解决办法就是找个镜像 xff1a 推荐 x
  • ValueError: not enough values to unpack (expected 3, got 0)

    运行github上的大佬的代码 xff1a https github com YunYang1994 tensorflow yolov3 xff0c 在进行python train py的时候 ValueError not enough v
  • 迁移博客中

    本博客正在迁移到 xff1a 周周的苜蓿园
  • 粘贴代码规整漂亮的网站(可在word中规整

    可以生成比较好看的代码截图 xff1a https carbon now sh 可以在Word中粘贴出比较整齐的代码 xff1a http www planetb ca syntax highlight word 或者用Notepad 43
  • Ubuntu Server版安装Gnome图形桌面

    1 安装全部桌面环境 xff0c 其实Ubuntu系列桌面实际上有几种桌面应用程序 xff0c 包括Ubuntu desktop Kubunut desktop和Xubuntu desktop 我们就安装了Ubuntu desktop还有G
  • c++ sort函数cmp的有关情况(由浅入深)

    sort first last cmp sort默认是从小到大排序 xff0c 要改成从大到小排序则可修改cmp span class token keyword bool span span class token function cm
  • qemu-kvm中debian-11.3.0虚拟机 root密码忘记处理方法

    1 启动虚拟机 virsh start debian 11 3 0 2 连接虚拟机 xff0c 按 34 e 34 virsh console debian 11 3 0 3 移动光标在 34 linux boot vmlinuz 5 10
  • SQL语句练习题

    一 表结构 创建数据库 school 脚本 drop database school create database school 创建数据库 go CREATE DATABASE school ON NAME 61 school dat
  • Python+Tesseract-OCR实现图像中的文字识别

    开发环境 xff1a 运行平台 win10 编程语言 xff1a python IDE pycharm 三方库模块 xff1a pytessseract Tesseract OCR pytesseract库安装 xff1a 打开cmd xf

随机推荐

  • Ubuntu上网功能的配置

    虽然用了Ubuntu系统时间不短了 xff0c 但每次重装或者升级后都会出现无法上网的问题 xff0c 所以在此做下记录 xff0c 方便以后配置 xff0c 同时也希望能给不会配置的朋友一些帮助 网络配置流程 xff1a 前提准备工作 x
  • you-get使用命令

    安装 xff1a pip install you get you get支持的网站 xff1a 网站URL哔哩哔哩http www bilibili com 优酷http www youku com 腾讯视频http v qq com 爱奇
  • 【OpenVINO】 Windows10环境下载安装

    OpenVINO官方中文文档 xff1a OpenVINO 工具套件概述 OpenVINO 工具套件 https docs openvino ai cn latest index html OpenVINO下载地址 xff1a Downlo
  • 《计算机应用研究》投稿经历和时间节点

    记录四川计算机研究院 计算机应用研究 期刊投稿经历和时间节点 日期状态周期2022 11 09上传稿件当天显示编辑部已接收稿件 xff0c 开始初审2022 11 09 2022 11 15初审6天2022 11 15 2022 12 21
  • 项目管理工具:GitHub,GitLab,Azure DevOps,Gitea版本控制系统

    1 版本控制系统是什么 xff1f 版本控制系统是一种记录一个或若干文件内容变化 xff0c 方便查阅特定版本修订情况的系统 2 为什么要用版本控制系统 xff1f 工作上 xff0c 当你处理一个共享文件夹的时候 xff0c 必须告知办公
  • Linux Debian安装或管理多个Python版本

    在Debian安装或管理多个Python版本 2021 05 13 19 04 55 43 08 字数 xff1a 4772 标签 xff1a Linux Python Ubuntu 20 04的Python默认版本是3 8 xff0c 符
  • Fl Studio20切换中文教程汉化补丁包

    FL studio 简称FL xff0c 全称 Fruity Loops Studio xff0c 因此国人习惯叫它 34 水果 34 目前最新版本是FL studio20 xff0c 它让你的计算机就像是全功能的录音室 xff0c 大混音
  • Promox VE(PVE)重启后GUI不能登录

    ssh能连接 xff0c 但是gui打不开 因为集群节点不正确移除 xff0c 留下配置信息 xff0c 启动后 xff0c 一直找集群的其它机器 ssh远程指令 xff1a pvecm expected 1 上面的命令是告诉系统 xff0
  • 虚拟机已经显示了已连接的图标但不能上网的解决办法+虚拟机显示网络连接激活失败

    虚拟机已经显示了已连接的图标但不能上网的解决办法 43 虚拟机显示网络连接激活失败 问题叙述解决办法 问题叙述 解决办法 1 https blog csdn net big rotor article details 70163858 用w
  • 【递归】CodeForces - 768B

    题意 xff1a 给定一个数N xff0c 对大于1 的数在原来的位置拆分为N 2 xff0c N 2 xff0c N 2 三个数 对拆分出的大于1 的数同样进行拆分 xff0c 直至所有的数均为0 或1 对拆分后的0 1 序列 xff0c
  • 1025. 除数博弈

    2020 7 24 LeetCode 题目描述 爱丽丝和鲍勃一起玩游戏 xff0c 他们轮流行动 爱丽丝先手开局 最初 xff0c 黑板上有一个数字 N 在每个玩家的回合 xff0c 玩家需要执行以下操作 xff1a 选出任一 x xff0
  • VMware安装Arch Linux

    目录 一 新建虚拟机二 安装系统1 下载镜像2 将镜像文件导入空白虚拟机中3 查看启动模式4 查看网络5 查看系统时间6 分区6 1 查看磁盘信息6 2 进入图形化分区工具进行分区6 3 格式化分区6 4 挂载分区 7 修改镜像源8 安装l
  • HDU 1880 魔咒词典(Hash+二分)

    题目链接 哈利波特在魔法学校的必修课之一就是学习魔咒 据说魔法世界有100000种不同的魔咒 xff0c 哈利很难全部记住 xff0c 但是为了对抗强敌 xff0c 他必须在危急时刻能够调用任何一个需要的魔咒 xff0c 所以他需要你的帮助
  • Python「pytesseract」:中文识别模块

    在处理 ttf 文件时 xff0c 遇到了识别图片中中文的情况 xff0c 常见的方式是调用百度的语言识别接口 xff0c 但是这里为了大批量的识别 xff0c 首先试了试 python 自带的语言识别模块 pytesseract xff0
  • 总结rce(远程代码执行各种sao姿势)绕过bypass

    空格绕过 xff1a 在bash下可以用 IFS IFS IFS 9 09 lt gt lt gt xff08 例如 cat etc passwd xff09 20 space 09 tab xff0c 这儿跟sql注入有点相似 xff0c
  • docker-compose教程(安装,使用, 快速入门)

    此文章为转载文章 xff0c 原文地址 xff1a https blog csdn net pushiqiang article details 78682323 目录 1 Compose介绍2 Compose和Docker兼容性3 安装d
  • Ubuntu查看和设置环境变量

    文章目录 1 查看环境变量2 设置方式2 1 把你的路径加入PATH2 2 命名一个新的环境变量 3 作用域3 1 用于当前终端3 2 用于当前用户3 3 用于所有用户 转载 1 查看环境变量 查看环境变量有三个命令 xff1a env x
  • CorelDRAW2022下载附带序列号安装教程

    CorelDRAW2022作为图形设计软件的代表 xff0c 以其杰出和革新的特性赢得了长期的声誉和用户的赞赏 xff0c 是一套屡获殊荣的图像编辑软件 CorelDRAW 2022包含程序 xff1a CorelDRAW 2022主程序矢
  • ASCII码、Unicode编码对照表 —— ASCII控制字符 Unicode编码 字符编码的前世此生

    ASCII控制字符 Unicode编码 ASCII xff08 American Standard Code for Information Interchange xff0c 美国信息互换标准代码 xff0c ASC xff09 是基于拉
  • RealSR真实场景超分

    一 Camera Lens Super Resolution 本文主要解决RealSR的数据问题 xff0c 通过控制镜头到物体的距离产生成对的真实数据 xff08 Real paired SR data xff09 xff08 1 xff