【RGB-HMS:先验驱动:超分】

PRINET: A PRIOR DRIVEN SPECTRAL SUPER-RESOLUTION NETWORK

(PRINET:先验驱动的光谱超分辨网络)

光谱超分辨率是指直接从RGB图像重建高光谱图像。近年来,卷积网络已经成功地用于这一任务。然而,很少有人考虑到高光谱图像的具体属性。在本文中,我们试图设计一个超分辨率网络,名为PriNET,基于两个先验知识的高光谱图像。第一个是谱相关。根据这一性质,我们设计了一个分解网络来重建高光谱图像。在该网络中,高光谱图像的整个光谱波段被分成几组,并提出了多个残差网络分别重建它们。第二个知识是高光谱图像应该能够生成其对应的RGB图像。受此启发,我们设计了一个自监督网络来微调分解网络的重建结果。最后,这两个网络结合在一起,构成了PriNET。

INTRODUCTION

大多数当前的消费者相机能够通过将场景的光谱映射到三个光谱带(即,红色、绿色和蓝色)。虽然它服从人眼的视觉系统,但许多光谱信息被忽略了。与RGB图像不同(例如,图1(a))、高光谱图像(例如,图1(b))通常包含十个以上的光谱带。这种丰富的光谱信息有利于许多计算机视觉任务,如人脸识别,细粒度识别和对象跟踪。然而,由于成像技术的限制,获取高光谱图像比RGB图像更困难。传统的光谱仪通常以光谱或空间扫描的方式操作,这是耗时的并且设备部署相对昂贵。在这里插入图片描述
除了从光谱仪直接获取高光谱图像之外,另一种替代方法是通过利用光谱超分辨率算法从相应的RGB图像重建高光谱图像。这是出于观察RGB图像可以被认为是相机光谱灵敏度函数下的高光谱图像的三维投影。光谱超分辨率的关键是对RGB图像与高光谱图像之间复杂的映射关系进行建模。由于这是一个三对多的映射问题,传统的模型通常会加入一些约束来使问题可解,例如稀疏和低秩约束。最近,深度学习在空间超分辨率领域显示出了巨大的力量。受此启发,越来越多的研究人员尝试应用深度网络来学习光谱超分辨率的映射函数。然而,大多数研究都集中在网络的非线性表示能力上,而忽略了高光谱图像的特殊性质。
在本文中,我们提出了一个光谱超分辨率网络PriNET,这是由两个先验知识驱动的高光谱图像。第一个知识是谱相关。由于电磁波谱上的采样沿着密集,高光谱图像中相邻波段往往存在较强的相关性。基于这一性质,我们设计了一个分解网络来重建高光谱图像。在该网络中,首先根据光谱带间的相关性将光谱带划分为若干组。然后,对每一组,我们设计了一个残差网络来重构属于它的光谱带。第二个知识是RGB图像可以被视为对应的高光谱图像的三维投影。因此,从分解网络得到的超分辨率高光谱图像应该能够重建输入的RGB图像。根据这一性质,我们设计了一个自监督网络来微调分解网络的重建结果。这两个网络最终结合在一起,构建端到端的PriNET。

贡献

1)与现有的光谱超分辨率网络不同,我们的网络由高光谱图像的两个特定属性驱动,可以更好地捕捉RGB和高光谱图像之间的关系。
2)基于高光谱图像相邻波段间存在强相关性的先验知识,设计了一种分解网络,将复杂的超分辨率问题简化为多个子问题。
3)由于RGB图像可以被认为是高光谱图像的投影,我们设计了一个自监督网络来微调分解网络的重建结果。

RELATEDWORK

单图像超分辨率是计算机视觉领域的一个活跃的研究课题,其目的是提高输入图像的空间分辨率。光谱超分辨率是一种以提高输入图像的光谱分辨率为目标的图像处理技术,近年来受到了广泛的关注。现有的光谱超分辨方法大致可以分为两类:传统超分辨模型和深度超分辨模型。
Traditional super-resolution models: Arad和Ben-Shahar为高光谱特征创建了一个稀疏字典。给定相机光谱响应,他们使用正交匹配追踪算法从RGB图像重建高光谱图像。类似地,Aeschbacher等人也使用了基于稀疏表示的光谱超分辨率模型,并且实现了比文献[2]更好的重建性能。Jia等人发现自然场景的光谱位于低维流形中,然后提出了一种基于流形的两步光谱超分辨率映射和重建方法。最近,为了充分利用高光谱图像的高维结构,文献[3]提出了一种低秩张量恢复模型。
Deep super-resolution models: 得益于强大的非线性映射能力,近年来深度学习被自然地应用于光谱超分辨率。作为早期的尝试之一,Xiong等人首先对RGB图像的光谱维度进行上采样,然后应用具有全局残差学习策略的卷积神经网络(CNN)从上采样的RGB图像重建高光谱图像。另一个尝试是[13],它使用跳过连接和密集块来形成超分辨率网络。Shi等人进一步改进了模型,删除了手工制定的上采样算子,并采用残差块来构建HSCNNR模型或采用密集块来构建HSCNN-D模型。在[6]中,采用了一种类似于U-Net的架构来重建高光谱图像。Fu等人将具有1 × 1卷积核的光谱CNN和空间CNN连接起来,以恢复高光谱图像。

METHODOLOGY

如图2所示,我们提出的PriNET主要包括三个阶段。首先,高光谱图像中的光谱波段根据其相关性被分成多个组。然后,提出了一种分解网络,从输入的RGB图像中分别重建每个组。在这个阶段,将这些重建的组连接在一起将生成重建的高光谱图像。最后,设计了一个自监督网络来微调重建结果。

Spectral band grouping

光谱超分辨率的目的是从高光谱图像Y ∈ R w × h × l R^{w ×h×l} Rw×h×l中重建出相应的RGB图像X ∈ R w × h × 3 R^{w×h×3} Rw×h×3,其中l表示高光谱图像中光谱波段的数目,w和h分别表示两幅图像的宽度和高度。通常,由于成像阶段的密集光谱采样,Y中的相邻带具有一些相关性。在这里,我们使用相关系数来量化这种关系。具体地说,对于任意两个频带yi R w × h R^{w×h} Rw×h和yj R w × h R^{w×h} Rw×h,我们首先将它们向量化为两个向量,然后计算它们的相关系数。然后,我们可以获得Y的维数为l × l的相关矩阵。对训练集中的所有高光谱图像重复整个过程,并导出平均相关矩阵。
基于相关矩阵,我们可以设定一个阈值来对整个光谱带进行分组。作为一个例子,图2展示了从CAVE数据中导出的平均相关矩阵,较亮的值指示较高的相关性。结果表明,相邻谱带之间存在很强的相关性。在本文中,我们经验性地选择0.8作为分组阈值,因此Y可以沿谱域沿着被分成三个不同的组Y1、Y2和Y3在这里插入图片描述

Decomposition network

大多数现有的光谱超分辨率网络试图学习一个端到端映射函数f(x),使得Y近似f(x)。由于Y包含不同的频谱信息,因此需要非常深的网络来确保f(x)的映射能力。例如,HSCNN-R网络采用34个卷积层来学习f(x);[8]中的重建网络由42个卷积层组成。然而,如在小节3.1中所讨论的,Y中的混合光谱信息可以被解耦成m(例如,本文中m =3)群。因此,我们的分解网络旨在学习m个映射函数,第i个映射函数fi(x),i ∈{1,···,m}只负责Yi(即,Yi 近似 fi(x))。因为Yi包含类似的光谱信息,所以学习fi(x)比学习f(x)容易得多。

如图2所示,分解网络由m个分支组成。每个分支具有两个卷积层和两个残差块。第一个卷积层旨在提取特征并将低维RGB图像投影到高维空间中。最后一个卷积层尝试将特征映射的维度减少到所需的维度,这取决于相应组中的光谱带数量。中间的块专注于学习第一个和最后一个卷积层之间的残差。与[7]相同,每个残差块由两个卷积层组成。对于每个卷积层,内核大小设置为3×3。除了最后一个卷积层,每层的卷积核数为64

Self-supervised network

对于RGB图像,它可以被视为使用相机中的红-绿-蓝三色滤波器的对应高光谱图像的三维投影。受此属性的启发,Kawakami等人提出通过将生成的高光谱图像映射回原始RGB图像来改进其重建结果。映射函数等于给定RGB相机的光谱灵敏度函数。然而,在大多数情况下,关于相机的参数是未知的。此外,RGB图像可以来自不同的相机。因此,直接应用它们的微调策略是不灵活的。考虑到映射过程类似于卷积算子,如之前文献所讨论的,我们设计了一个自监督网络来微调分解网络的重建结果。
图2展示了自监督网络的细节。分解网络的输出首先连接在一起,然后输入到自监督网络。与分解网络相同,自监督网络也包含两个卷积层和两个残差块。每个残差块包括两个卷积层。每个卷积层的内核大小为3 × 3。最后一个卷积层中的核数是3,其他卷积层的核数是64。请注意,除了最后一个卷积层,每个卷积层后面都有一个ReLU层。

Loss functions

分解网络和自监督网络都有各自的损失函数来指导它们的学习过程。假设分解网络中第i个分支的输出为fi(X;Θi),则对应的损耗值Lde可以计算为:在这里插入图片描述
其中Θi表示网络参数。类似地,我们可以推导出自我监督网络的损失值LSE
在这里插入图片描述
其中fse是自监督网络学习的映射函数,Θse是网络参数,Y-是通过连接分解网络的m个输出得出的。最终损失值L是这两种损失值的组合:
在这里插入图片描述
其中λ是用于平衡不同损失的正则化参数。在本文中,λ被经验地设定为0.0005。在训练阶段,每个样本都会产生一个损失值,并利用整个训练集的平均值来优化网络参数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/178715.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nodelist 与 HTMLCollection 的区别

原地址 https://cloud.tencent.com/developer/article/2013289 节点与元素 根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点: 整个文档是一个文档节点每个 HTML 元素是元素节点HTML 元素内的文本是文本节点每个 HTML 属性是属性节点注释是注…

ES-初识ES

文章目录 介绍ElasticSearchElasticSearch的主要功能ElasticSearch的主要特性ElasticSearch的家族成员LogStashKibanaBeats ELK(ElasticSearch LogStash Kibana)的应用场景与数据库集成指标采集/日志分析 安装和配置ElasticSearch一、安装1、下载ES安装…

SOME/IP 协议介绍(一)

1. 引言和功能概述 本文档规定了可扩展面向服务基于IP的中间件(SOME/IP)——一种用于汽车/嵌入式RPC机制和底层序列化/传输格式的示例,作为由RTE调用的序列化器。 唯一有效的缩写是SOME/IP。其他缩写(例如Some/IP)是…

什么是Babel?它的主要作用是什么?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

【51单片机】LED与独立按键(学习笔记)

一、点亮一个LED 1、LED介绍 LED:发光二极管 补:电阻读数 102 > 10 00 1k 473 > 47 000 2、Keil的使用 1、新建工程:Project > New Project Ctrl Shift N :新建文件夹 2、选型号:Atmel-AT89C52 3、xxx…

VBA之正则表达式(44)-- 拆分商品和规格

实例需求:商品组清单保存在A列中,现需要将其拆分为商品名称,保存在从B列开始的后续单元格中,部分商品包含规格,并且多种规格属性使用了逗号分隔,因此无法直接使用Excel分列功能完成数据拆分。 示例代码如下…

【错误解决方案】ModuleNotFoundError: No module named ‘torchvision.models.utils‘

1. 错误提示 在python程序,尝试导入一个名为torchvision.models.utils的模块,但Python提示找不到这个模块。 错误提示:ModuleNotFoundError: No module named torchvision.models.utils 2. 解决方案 1)这可能是因为你还没有安装…

利用云计算和微服务架构开发可扩展的同城外卖APP

如今,同城外卖APP已经成为了人们点餐的主要方式之一。然而,要构建一款成功的同城外卖APP,不仅需要满足用户的需求,还需要具备可扩展性,以适应快速增长的用户和订单量。 一、了解同城外卖APP的需求 在着手开发同城外卖…

centos 7 kafka2.6单机安装及动态认证SASL SCRAM配置

目录 1.kfaka安装篇 1.1 安装jdk 1.2安装kafka 2.安全篇 2.1 kafka安全涉及3部份: 2.2 Kafka权限控制认证方式 2.3 SASL/SCRAM-SHA-256 配置实例 2.3.1 创建用户 2.3.2 创建 JAAS 文件及配置 3.测试 3.1 创建测试用户 3.2 配置JAAS 文件 3.2.1 生产者配…

C++归并排序算法的应用:计算右侧小于当前元素的个数

题目 给你一个整数数组 nums ,按要求返回一个新数组 counts 。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。 示例 1: 输入:nums [5,2,6,1] 输出:[2,1,1,0] 解释: 5 …

酒店预订订房小程序源码系统 带完整搭建教程

酒店预订订房小程序源码系统是一种基于互联网技术的线上预订平台,旨在为用户提供方便快捷的酒店预订服务。该系统通常包括前端用户界面、后端服务器和数据库三个部分,其中前端界面主要展示酒店信息、订房需求信息、订单信息等,后端服务器负责…

当函数参数为一级指针,二级指针

当函数参数为一级指针,二级指针 在讲述内容之前,先讲四点重要知识 1.当传入参数时,函数形参会立即申请形参的内存空间,函数执行完毕后,形参的内存空间立即释放掉。 1.指针是存放其他变量地址的变量。指针有自己的内…

Spring Boot Web MVC

文章目录 一、Spring Boot Web MVC 概念二、状态码三、其他注解四、响应操作 一、Spring Boot Web MVC 概念 Spring Web MVC 是⼀个 Web 框架,一开始就包含在Spring 框架里。 1. MVC 定义 软件⼯程中的⼀种软件架构设计模式,它把软件系统分为模型、视…

uniapp实现路线规划

UniApp是一个基于Vue.js框架开发的跨平台应用开发框架,可以同时构建iOS、Android、H5等多个平台的应用。它使用了基于前端技术栈的Web开发方式,通过编写一套代码,即可在不同平台上运行和发布应用。 UniApp具有以下特点: 跨平台开…

【设计模式】第8节:结构型模式之“适配器模式”

一、简介 适配器模式是用来做适配的,它将不兼容的接口转换为可兼容的接口,让原本由于接口不兼容而不能一起工作的类可以一起工作。 适配器模式角色: 请求者client:调用服务的角色目标Target:定义了Client要使用的功…

Window下coturn服务器的搭建

Window下搭建coturn服务器: 准备材料: 1、安装Cygwin,地址:https://cygwin.com/install.html 由于Window无法直接部署coturn,因此需要下载安装Cygwin在Window上部署Linux虚拟环境。 在安装的时候需要安装几下packe…

Azure机器学习 - 使用与Azure集成的Visual Studio Code实战教程

本文介绍如何启动远程连接到 Azure 机器学习计算实例的 Visual Studio Code。 借助 Azure 机器学习资源的强大功能,使用 VS Code 作为集成开发环境 (IDE)。 在VS Code中将计算实例设置为远程 Jupyter Notebook 服务器。 关注TechLead,分享AI全维度知识。…

目标检测 图像处理 计算机视觉 工业视觉

目标检测 图像处理 计算机视觉 工业视觉 工业表盘自动识别(指针型和数值型)智能水尺识别电梯中电动车识别,人数统计缺陷检测(半导体,电子元器件等)没带头盔检测基于dlib的人脸识别抽烟检测和睡岗检测/驾驶疲…

Java选择与循环

1.选择 前言:什么是选择呢?在我们的人生中处处面临着选择,比如说在学校你可以选择玩,摆烂,当然也可以选择努力写代码,刷题。什么样的选择就会面临什么样的结果。 其实程序和人生一样:顺序中夹杂…

大数据技术之集群数据迁移

文章目录 数据治理之集群迁移数据 数据治理之集群迁移数据 准备两套集群,我这使用apache集群和CDH集群。 启动集群 启动完毕后,将apache集群中,hive库里dwd,dws,ads三个库的数据迁移到CDH集群 在apache集群里hosts加上CDH Namenode对应域名并…