当前位置: 首页 > article >正文

光谱图像超分辨率综述

光谱图像超分辨率综述

简介

​ 论文链接:A Review of Hyperspectral Image Super-Resolution Based on Deep Learning

2023-11-20_12-14-10

UpSample网络框架

1.Front-end Upsampling

​ 在Front-end上采样中,是首先扩大LR图像,然后通过卷积网络对放大图像进行优化。如"Image Super-Resolution Using Deep Convolutional Networks"(SRCNN)中,首先使用bicubic对图像进行放大,再采用卷积进行处理。

​ 缺点:

  1. 由于先进行上采样,再进行其他操作,根据上采样倍数的不同,导致卷积部分计算量巨大
  2. 直接进行上采样,可能将LR图像中的噪声放大,导致超分结果不理想。

2023-11-20_15-13-54

2.Back-end Upsamling

​ 为了降低计算成本,充分利用神经网络的学习能力,将Upsample层放到模型后端进行操作。也就是先通过神经网络对LR图像特征进行提取,减弱噪声部分影响,再采用上采样操作对图像进行超分辨率。如"Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network".(ESPCN),先使用卷积层进行LR图像的特征提取,再采用提出的Pixelshuffle模块——亚像素卷积层(sub-pixelconvolutionlayer)进行上采样得到重建图像。

缺点:

  1. 由于只进行一次上采样操作,对于较大缩放因子,仍然不是一个好的选择。

2023-11-20_15-15-00

3.Progressive Upsampling

​ 解决缩放因子较大时的问题,通过将其拆分为几个子任务进行解决。

缺点:网络结构更加复杂

2023-11-20_15-15-09

Upsample方法

1.基于插值的方法

  1. Nearest-neighbor Interpolation
  2. Bilinear Interpolation:没有考虑相邻像素之间灰度值变化率的影响,从而破坏了插值图像的高频信息,经常得到模糊图像边缘
  3. Bicubic Interpolation:考虑了四个最近像素的灰度值的影响,同时也考虑了周围灰度值变化率的影响,从而获得比前两种插值方法更平滑的边缘、更少的伪影和更少的丢失图像信息,但是其计算量巨大。

2.Transposed Convolution转置卷积

import torch
import torch.nn as nn

nn.ConvTranspose2d()

#函数定义
def __init__(self,
             in_channels: int,
             out_channels: int,
             kernel_size: Union[int, Tuple[int, int]],
             stride: Union[int, Tuple[int, int]] = 1,
             padding: Union[int, Tuple[int, int]] = 0,
             output_padding: Union[int, Tuple[int, int]] = 0,
             groups: int = 1,
             bias: bool = True,
             dilation: Union[int, Tuple[int, int]] = 1,
             padding_mode: str = 'zeros',
             device: Any = None,
             dtype: Any = None) -> None

2023-11-20_15-33-24

3.Pixel Shuffle

import torch
import torch.nn as nn
self.ps = nn.PixelShuffle(8)
#8为上采样因子,需要注意的是用其处理时,首先需要使用卷积调整channel维度,使其满足为采样因子平方的倍数

2023-11-20_15-33-56

常见网络结构

2023-11-20_15-38-55

1.残差学习

引人残差网络,方便加深网络,避免梯度消失

2.递归学习

所有残差单元共享相同的权重,大大减少了模型参数的数量。同时,递归学习固有地引入了梯度消失或梯度爆炸的问题因此将残差学习与递归学习相结合是明智的选择。

3.多路径学习

通过将图像输入到不同路径进行特征提取,方便提取多个维度的特征,可以使得特征之间的细节有效互补

4.注意力机制

采用channel attention以及spatial attention,可以分别学习channel维度(频段维度),spatial维度(空间维度hw)之间特定的信息,用于保留输入图像的关键空间信息以及频段信息。

5.密集连接

密集连接最重要的特点是能够重用包括低级特征和高级特征在内的特征,与普通skip connection相比,这是一个优越的方面。

损失计算

1.Pixel-wise损失

像素级别的损失,常见的是L1损失和L2损失,它们都是逐像素进行误差计算。

与L1损失相比,L2损失可以有力地处理较大的误差,但不能对较小的误差进行有效的惩罚,因此经常导致结果过于平滑。这使得L1损耗在大多数情况下是更好的选择。

图像评价指标

  1. PSNR:峰值信噪比,侧重于像素之间的差异,也就是重建的像素与像素之间的差异,无法对主观感知信息进行较好评估。
  2. SSIM:结构相似度,人类的主观感知对观察对象的结构很敏感,研究人员提出了结构相似性 (SSIM) 指数来衡量标记图像和重建图像之间的结构相似性。它的评估基于图像结构,比PSNR更能考虑视觉感知。使用SSIM下的结果更符合人类的主观感受
  3. SAM:将HSI的每个图像元素的频谱视为高维向量,通过计算对应向量之间的角度来测量光谱相似度。角度越小,它属于同一类型特征的可能性就越大。在执行分类任务时,通过计算未知向量与已知向量之间的谱角的大小来识别未知图像元素的类。
  4. 详细请见光谱图像常见评价指标-CSDN博客

http://www.kler.cn/a/136523.html

相关文章:

  • 【PPTist】公式编辑、插入音视频、添加动画
  • vs2022开发.net窗体应用开发环境安装配置以及程序发布详细教程
  • web服务器快速目录搜索遍历工具推荐:Dirsearch
  • PLC实现HTTP协议JSON格式数据上报对接的参数配置说明
  • Linux第一课:c语言 学习记录day06
  • 测试覆盖率
  • Linux常用命令——builtin命令
  • 电容搞搞”振“,PDN有帮衬
  • html实现图片裁剪处理(附源码)
  • Unity模拟薄膜干涉效果
  • 手撕单链表(C语言)
  • 【数据结构】【版本2.0】【树形深渊】——二叉树入侵
  • 万字解析设计模式之 适配器模式
  • 深度学习系列54:使用 MMDETECTION 和 LABEL-STUDIO 进行半自动化目标检测标注
  • vscode工作区多Tabs
  • 代码随想录算法训练营第四十五天| 139.单词拆分
  • 模具制造厂ERP都有哪些牌子?模具制造厂ERP有什么用
  • jenkins传参给robotframework
  • lenovo联想笔记本ThinkPad P1 Gen5/X1 Extreme Gen5原装出厂Windows11预装OEM系统
  • 机器学习-笔记
  • linux备份系统盘
  • 发送注册连接到 FreeSWITCH 服务器的客户端
  • 以makefile的方式在linux上编译代码(小白级别)
  • kubernetes测试部署一个nginx
  • 基于springboot实现智能热度分析和自媒体推送平台系统项目【项目源码】计算机毕业设计
  • 【python百宝箱】抛开GIL束缚:线程、进程、异步实现高效编程