精华内容
下载资源
问答
  • 求使用PCA和低秩张量分解的方法高光谱图像降维的matlab代码,谢谢大家
  • 本研究回顾了基于主成分分析PCA和判别分析LDA的降维方法及其扩展,包括经典主成分分析、概率主成分分析、核主成分分析,以及线性判别分析、局部保持降维、图形嵌入判别分析和半监督降维分析。
  • spectral python的主页在:Welcome to Spectral Python (SPy)Spy中包括从安装,图像显示、高光谱图像处理算法等的全套API的内容。我们这里只关注一下高光谱图像的显示。spectral python的命令时基于ipython的,因此...

    spectral python的主页在:Welcome to Spectral Python (SPy)

    Spy中包括从安装,图像显示、高光谱图像处理算法等的全套API的内容。

    我们这里只关注一下高光谱图像的显示。

    spectral python的命令时基于ipython的,因此,如果以命令行脚本的形式使用spectral python,则需要首先进入ipython的环境。进入方法如下:

    ipython --pylab=wx

    下面我贴出来一个可以显示高光谱原始图像,原始图像和groud_truth的混合图像,以及显示光谱立方体的脚本。

    如下脚本:

    In [1]: import matplotlib.pyplot as plt

    ...: import scipy.io as sio

    ...: import os

    ...: import spectral

    第[1]句是加载需要用到的软件包

    In [2]: data_path = os.path.join(os.getcwd(), 'data')

    #第【3】句,加载mat格式保存的高光谱数据Indian_pines_corrected.mat

    In [3]: data = sio.loadmat(os.path.join(data_path, 'Indian_pines_corrected.mat'))['indian_pines_corrected']

    #加载mat格式保存的对应ground_truth

    In [4]: labels = sio.loadmat(os.path.join(data_path, 'Indian_pines_gt.mat'))['indian_pines_gt'] ...:

    In [5]: img = data

    In [6]: gt = labels

    同时显示原高光谱图像中的30,20,10通道和groundtruth,以覆盖的方式显示,透明度为0.5.

    In [7]: view = spectral.imshow(img, (30, 20, 10), classes=gt)

    In [8]: view.set_display_mode('overlay')

    In [9]: view.class_alpha = 0.5

    c55b90213860cad82060563bf1c18d2d.png

    以超立方体的形式显示高光谱图像

    In [10]: spectral.view_cube(img,bands=[29, 19, 9])

    Out[10]: <spectral.graphics.graphics.WindowProxy at 0x1cf8544c7f0>

    b85f9c225a1cf4eefa64b26c4c6f986b.png

    将高光谱图象中的29,19,9波段,分别作为r,g,b分量的值,显示出一幅彩色图。

    imshow()有两个参数,一个是data,图像,存储格式需要是np.ndarray或者SpyFile。

    另一个参数bonds,是显示的波段,从多个波段中选择3个,作为rgb三个分量的输入进行选择。

    If `bands` has 3 values, the bands specified are extracted from`data` to be plotted as the red, green, and blue colors,

    In[11]: spectral.imshow(img,(29, 19, 9))

    6783fe905f58651c7ed9a2764fe1e3e1.png

    上述显示整理为一个python文件,源码如下:

    import matplotlib.pyplot as plt
    import http://scipy.io as sio
    import os
    import spectral
    os.environ["CUDA_VISIBLE_DEVICES"] = "3"
    ## GLOBAL VARIABLES
    dataset = 'IP'
    test_ratio = 0.7
    windowSize = 25
    def loadData(name):
    data_path = os.path.join(os.getcwd(), 'data')
    if name == 'IP':
    data = sio.loadmat(os.path.join(data_path, 'Indian_pines_corrected.mat'))['indian_pines_corrected']
    labels = sio.loadmat(os.path.join(data_path, 'Indian_pines_gt.mat'))['indian_pines_gt']
    elif name == 'SA':
    data = sio.loadmat(os.path.join(data_path, 'Salinas_corrected.mat'))['salinas_corrected']
    labels = sio.loadmat(os.path.join(data_path, 'Salinas_gt.mat'))['salinas_gt']
    elif name == 'PU':
    data = sio.loadmat(os.path.join(data_path, 'PaviaU.mat'))['paviaU']
    labels = sio.loadmat(os.path.join(data_path, 'PaviaU_gt.mat'))['paviaU_gt']
    return data, labels
    X, y = loadData(dataset)
    print(X.shape, y.shape)
    view = spectral.imshow(X, (29, 19, 9))
    #view = spectral.imshow(X, (1, 2, 3))
    print(view)
    plt.show()
    #show grandtruth
    gt_view = spectral.imshow(classes=y)
    plt.show()
    #show both the data and the class value
    img = X
    gt = y
    view = spectral.imshow(img, (30, 20, 10), classes=gt)
    view.set_display_mode('overlay')
    view.class_alpha = 0.5
    plt.show()
    #saving rgb image files
    spectral.save_rgb('rgb.jpg', img, [29, 19, 9])
    spectral.save_rgb('gt.jpg', gt, colors=spectral.spy_colors)
    #spectral.view_cube(img, spectral.bands=[29, 19, 9])
    spectral.view_cube(img,bands=[29, 19, 9])
    plt.show()

    #注意上面python文件在pycharm中运行显示超立方体,我这边没有显示成功。

    展开全文
  • 原文题目:A Single Model CNN for Hyperspectral Image Denoising去噪是高光谱图像分析和解释之前常用的预处理步骤。传统的方法没有考虑到相邻波段间的高光谱相关性,导致去噪效果不佳,HSIs中丰富的光谱信息没有...
    原文题目:A Single Model CNN for Hyperspectral Image Denoising

    去噪是高光谱图像分析和解释之前常用的预处理步骤。传统的方法没有考虑到相邻波段间的高光谱相关性,导致去噪效果不佳,HSIs中丰富的光谱信息没有得到充分的利用。为了克服这一局限性,本文研究了卷积神经网络(CNNs)等深度学习模型来进行频谱空间HSI去噪。该模型称为HSI单模型去噪CNN ((HSI-SDeCNN),有效地考虑了HSI中包含的空间和光谱信息。

    一、贡献

    1)它为HSI去噪问题提供了一个快速的解决方案,利用了一个向下采样的内核,使网络在不损失性能的情况下执行得非常快。

    2)以噪声水平图作为输入,即用以估计拟去噪图像内的噪声水平,从而控制去噪效果与保留细节之间的平衡。这使得这个网络对于多级噪声具有灵活性和适应性,而不需要像以往方法那样针对不同的噪声水平训练不同的模型。

    3)在实验分析中,无论是加性高斯白噪声(AWGN)破坏的合成图像,还是真实的HSI噪声图像,都获得了良好的结果,充分显示了其在实际HSI去噪中的应用潜力。

    二、算法流程图

    该算法流程图如图所示

    c8d919abd346674243f113730cf2396b.png

    算法主要分为三大步:

    1)预处理步骤

    即图中上方的三步,假设对波段1到波段B这B个波段进行去噪,为了利用每个波段的相邻K个光谱信息,所以需要在开头波段1和最后波段B的前后分别再取K/2个波段,所以一共需要取B+K个波段。然后对B中的第n个波段去噪时,取n波段及其前后K/2个波段一同进行下采样操作,将W*H*C大小的输入图像重新整形为尺寸为W/2*H/2*4C的四个下采样子图像,这里C是通道数,下采样的过程如下图所示(下采样的细节可以查看《n Analysis and Implementation of the FFDNet ImageDenoising Method》)

    bdb4c709b241f1cf8a23cdc29239b241.png

    下采样之后得到的子图像会与噪声水平图一起作为CNN模型的输入。噪声水平图估计了拟去噪图像的噪声水平

    ,噪声水平图中所有参数均为

    2)深度非线性映射(CNN模型)

    CNN模型的细节可见下表:

    29c6b15d7c2e5bdd4c1e6cf5ece97327.png

    3)后处理步骤

    在经过CNN模型时最后一层卷积层的卷积核设置为4以便最后生成四个子图可以上采样成与输入相同的大小H*W。

    三、实验

    1、 SIMULATED DATA

    在Washington DC Mall 数据集加入了AWGN噪声,表二显示了所提出的方法和其他用于比较的主流技术在不同噪声水平下的结果。最好的度量值用粗体表示。报告的值(平均值和标准偏差)是通过对不同噪声配置下的10次运行的结果进行平均得到的。最后一列(蓝色)的结果是该模型在每个噪声水平下运行后重新在每个噪声水平下运行后得到的值。

    6faba7b14389be7b518ecca32ccf0a64.png

    HSSNR和LRMR方法有显著的噪声残留,LRTA和BM4D方法有伪影的现象。

    6563b1b5d6982416d0d5b7db1b90edaf.png

    2、REAL DATA

    The Indian Pines数据集受到高斯噪声和脉冲噪声的严重影响,出于视觉评估的目的,使用波段2进行灰度可视化。下图为应用不同方法得到的灰度图像。

    7cb2d57b986b65590e4dad746268f12d.png

    上图可以看出HSSNR有显著的噪声残留,BM4D输出呈现带状噪声,HSID-CNN与本文提出的方法均有效消除了密集和条带噪声,在后面定量分析中,本文方法精度更佳。

    为了进行定量分析,其该数据集进行了分类通过去噪前后的分类精度来衡量去噪的质量。

    1b05e63231c88b95c587de9598059809.png

    四、总结

    本文是将FFDNet算法应用于高光谱领域,利用了了HSI中包含的空间和光谱信息。论文中所提出的网络对所有波段只做一个层次的去噪,即每个波段去噪时噪声水平图是一样的。然而,在HSIs中,不同波段的噪声通常是不同的。因此,该方法的进一步改进将集中于使输入噪声水平适应每个特定的波段。

    展开全文
  • 来源:IEEE TGRS 2019原文:https://ieeexplore.ieee.org/abstract/document/8721080论文题目:Deep Learning Ensemble for Hyperspectral Image ClassificationIntroduction高光谱图像分类是遥感领域比较火热的研究...
    来源:IEEE TGRS 2019
    原文:https://ieeexplore.ieee.org/abstract/document/8721080
    论文题目:Deep Learning Ensemble for Hyperspectral Image Classification

    Introduction

    高光谱图像分类是遥感领域比较火热的研究方向之一。当前高光谱分类方法主要使用基于空间——光谱信息的半监督分类方法。但是在分类过程中也存在以下两点问题:

    高光分类过程中可用的标记数据少,传统的卷积神经网络容易出现过拟合的的问题,导致泛化能力差。针对这两点问题作者提出了相应的解决方案如下:

    1) To the best of our knowledge, the idea of combing deep learning and ensemble methods for HSI classification is proposed.

    2) Two deep learning ensemble-based classification methods [i.e., CNN ensemble and deep residual network (ResNet) ensemble] are proposed for HSI classification. The proposed method utilizes deep learning model to extract the robust and discriminate features of HSI, RFS to formulate the diversity of the ensemble system, and majority voting to obtain the final classification results.

    3) A transferring deep learning ensemble is proposed to make a full use of the learned weights of CNNs.

    Method

    b4785623d4a40c1e0cb2b431bc3bd61b.png
    图1 论文框架图

    作者的主要框架图如图1,输入数据经过数据预处理,获取每个像素的空间邻域信息和光谱信息。然后,随机特征选择(RFS)方法随机选取每个像素的光谱信息(bands)用于三个浅层神经网络(弱分类器)的训练,最后通过投票机制获得最终的分类结果。网络训练过程同时使用迁移学习的策略,将第一个卷积层的参数进行迁移,其他层的参数进行Finetune。

    391885f312032b93caa7e2480b1a175e.png
    图2 网络模型参数

    Experiment

    模型的有效性分别在三个公开数据集上进行:Salinas, Indian Pines, Pavia University。因为迁移学习策略的使用,文章中仅仅使用了300个可靠样本进行网络训练,这在一定程度上缓解了标签数据不足的问题。而且多个具有差异性的弱分类器集成也能够提高模型的精度和泛化能力。实验结果如下图(以 Indian Pines为例):

    05ca99784aabb28567acd7851ee28d9e.png
    图3 不同方法在Indian Pines数据集上的结果

    通过对比可以发现,文章中方法取得了领先其他方法得结果。准确率虽然达不到state-of-the-art,但也算是为高光谱图像分类贡献了一种新的解决思路。在文章最后,作者通过实验得出当随机特征选择的大小是30的时候会取得较好的分类结果。随即又分析弱分类器个数对实验结果的影响如下:

    f41eda066f273020644c97bbbd0cae24.png
    图4 弱分类器个数对于实验结果的影响

    Conclusion

    这篇文章作者在基于随机特征选择(RFS)的集成学习系统的帮助下,构建了一个简单而有效的集成学习框架。未来工作中,关于多类型分类器的集成也会是一个研究热点。

    展开全文
  • 新手教程,含搜集资料加代码。高光谱图像分类是高光谱遥感...然而,高光谱图像的高维特性、波段间高度相关性、光谱混合等使高光谱图像分类面临巨大挑战。一方面高光谱图像相邻波段之间相关性较大,存在较高的信息冗余。
  • Deep Pyramidal Residual Networks for Spectral-Spatial Hyperspectral Image Classification代码地址:https://github.com/mhaut/pResNet-HSI1、介绍在以往的研究中提出了各种不同类型的无监督和监督方法对 ...

    论文地址:Deep Pyramidal Residual Networks for Spectral-Spatial Hyperspectral Image Classification

    代码地址:https://github.com/mhaut/pResNet-HSI

    1、介绍

    在以往的研究中提出了各种不同类型的无监督和监督方法对

    数据进行分类,但是由于消失梯度问题导致信息丢失,用
    数据训练非常深的
    仍然有困难。因此残差网络(
    )被提出来发现
    数据中的高分辨光谱-空间特征。本文提出了一种新的基于金字塔瓶颈残差单元的
    模型,以实现快速、准确的
    数据分析和分类,同时利用光谱和空间信息。新的深度模型是由几个堆叠卷积层组成的,它们具有瓶颈体系结构,其中输出层大于输入层。这样,原始
    立方体中的光谱通道数在每个块上一步一步地增加,形成金字塔的错觉。并且随着残差单元的加深,允许从
    立方体中学习更健壮的光谱-空间表示,提取更多的特征图。结果表明,该模型不仅优于光谱-空间卷积神经网络,而且优于基线

    2、方法

    2.1 残差单元

    作者给出不同残差单元的结构如下:

    97dfb8a16b63ef1d57ef002ce3b8585a.png

    相对于传统的残差单元,金字塔形瓶颈残差网络在输入和输出的通道数上做了改变,输出维度大于输入维度。

    2.2 金字塔形瓶颈残差网络结构

    f0236672e1e30aa6bd761e8268b1b1cd.png

    输入数据

    ,经过以下模块得到输出:

    (1)输入模块

    :由
    层组成

    (2)金字塔模块

    ,
    ,
    :每个金字塔模块有三个瓶颈残差单元组成
    ,
    ,
    ,每个
    可以总结为
    --
    --
    --
    --
    --
    --
    。为了利用HSI数据中包含的光谱-空间信息,不同残差单元的不同的
    层使用特定大小的卷积核。注意,模块
    保持空间特征大小,将每个
    的所有
    层的卷积操作步长设置为
    =1;模块
    实施了不同的机制对输入数据进行下采样。在这两个模块的第一个残差单元
    中,
    层卷积操作的步长设置为
    =2,并且在单元最后增加下采样层。每个残差单元输出的特征图的维度(通道数)由下列公式计算得到:

    e06d2817c28703fa22781a12058fd421.png

    即输出特征图的通道数大于输入的通道数。

    (3)输出模块

    :首先进行下采样,然后重塑成向量输入FC层得到分类结果。

    下表给出了所有

    层使用的卷积核的大小:

    69ad34a17857c23cb1835e55a2b4569a.png

    3、实验结果

    750a91bc5fb251761d230b192b87bbaf.png

    c60474e4f3febf4541f321907527d3d1.png

    e24bfeedd7d41d1d1235c2f942c8c428.png

    在以上三种数据集上,本文所提出的方法的效果明显优于目前的主流方法。

    4、结论

    本文得出的主要结论之一是在对高光谱数据进行分类时使用光谱-空间信息的相关性,新提出的办法能够发现高度描述性的光谱-空间分类特征,也就是说,在所有残差单元逐步增加特征图的通道维度可以得到更好的光谱-空间属性,使分类结果得到改进。其二是用于训练的数据量,对于使用不同百分比的训练数据的其他最佳模型,提出的方法都可以使性能得到进一步改进。

    展开全文
  • 黑斑病是世界上最严重的香蕉病害之一,但目前尚无早期快速检测方法。本文使用PLS–PLR模型和HS-biplot作为检测香蕉黑斑病早期阶段的视觉工具,并对其检测能力进行了评估。黑斑病发展阶段:(A)未感染,(B)1期,(...
  • 针对高光谱图像同一像元内存在多种地物种类,且地物...模拟和真实高光谱遥感数据实验结果表明,与传统的线性降维方法 PCA相比,经过等距映射、局部切空间排列等流行学习算法降维后的高光谱图像具有更好的光谱端元可分性。
  • spectral python的主页在:Welcome to Spectral Python (SPy)Spy中包括从安装,图像显示、高光谱图像处理算法等的全套API的内容。我们这里只关注一下高光谱图像的显示。spectral python的命令时基于ipython的,因此...
  • 讲述高光谱图像噪声的评估方法,数据降维的目的方法,并进行实例分析
  • 黑斑病是世界上最严重的香蕉病害之一,但目前尚无早期快速检测方法。本文使用PLS–PLR模型和HS-biplot作为检测香蕉黑斑病早期阶段的视觉工具,并对其检测能力进行了评估。黑斑病发展阶段:(A)未感染,(B)1期,(C)2期...
  • 方法利用非局部均值滤波提取高光谱全波段图像空间信息, 利用导向滤波提取经由主成分分析(PCA)降维后的高光谱图像的空间边缘信息, 将两种空间信息进行线性融合的结果输入至支持向量机(SVM)完成分类。实验表明, 相比...
  • 滤波器在提取高光谱图像空间纹理信息...实验表明, 相比使用光谱信息、高光谱降维、空谱信息结合的SVM分类方法, 边缘保持滤波以及递归滤波的方法, AMF-SVM对高光谱图像的分类精度有较大提高, 充分说明了该方法的有效性。
  • 高光谱图像的超多波段可以描述丰富的地物信息,但是也带了维数灾难的问题。本文提出了PCA_LDA组合降维方法,使类内距离最小化,类间距离最大化,有效地消除数据冗余,并保留主要信息量,保证了降维后的数据具有最佳...
  • 通过波段选择可以显著提高高光谱遥感图像分类与解混的效率...真实高光谱图像波段选择后分类和解混实验结果表明,改进的基于线性预测的波段选择方法能明显提高分类和解混的精度和效率,是一种有效的高光谱图像降维方法
  • 利用自适应波段选择方法进行高光谱图像降维。依据对异常分布敏感的偏度和峰度设计投影指标,并采用混沌PSO搜索最佳投影方向,由此可有效地将目标信息投影至低维空间。采用直方图分割的方法从投影图像中提取出目标。...
  • 为了解决当前PCA算法对星载高光谱图像光谱维特征提取速度无法满足空间应用实时性要求的问题,提出了一种...实验结果表明,该方法可以快速提取高光谱图像的光谱维特征值,为高光谱图像降维和压缩的工程应用提供了支撑。
  • 高光谱遥感图像为地物的精确分类带来了机遇,但也面临着一些挑战,高光谱遥感图像分类中所面临的一个挑战是如何处理高的光谱维数和小的样本数目之间的矛盾,目前几乎全部采用降维方法来缓解这一矛盾。集成学习的出现...
  • 摘要主成分分析(PCA)作为一种无监督的降维方法,已被广泛认为是高光谱图像处理和分析任务的一种有效的预处理步骤。它把每个波段作为一个整体,从全球范围内提取出最具代表性的波段。然而,不同的均匀区域对应着...
  • 针对高光谱数据维数高,波段间冗余信息大的问题,提出一种基于同质性降维和组合匹配追踪算法的高光谱图像分类方法。该方法首先利用均值漂移算法对高光谱图像进行分割得到同质性图像块,对同质性的图像块进行流行学习...
  • 为解决高光谱图像数据维数高、冗余信息较多、容易出现Hughes现象等问题,将改进的连续投影算法应用到高光谱图像降维处理中。改进的连续投影算法在原始算法基础上,分别采用峰度值和偏度值对初始波段的选择进行限制,...
  • 针对高光谱图像分类中基于流形的降维方法进行了研究,提出一种改进的局部保持投影(LPP)方法,即MLPP方法。该方法利用标签信息避免了传统LPP在邻接图构建中很难确定邻域大小的选择问题,同时采用更能反映高维数据间...
  • 在主动学习的基础上,提出一种基于SLIC的高光谱遥感图像主动分类方法。首先提取图像纹理特征并与光谱特征融合,使用PCA对新数据进行降维,取前三个主成分构成假彩色图像,然后使用SLIC处理该图像获得超像素;接着...
  • 为了选择更加有利于异常检测的图像,运用二维主成分分析(2DPCA)方法降维,并引入局部联合偏度-峰度指数进行图像选择,提出了一种基于选择性分段2DPCA的高光谱图像异常检测方法。首先利用相关系数对原始图像进行...
  • 将基于多尺度显著性检测的视觉注意机制引入到高光谱影像的噪声去除和图像增强处理中,并基于分层聚类算法,提出一种结合聚类降维和视觉注意机制的高光谱影像分类方法。以Indian数据集和Pavia数据集为例,开展降维、显著...
  • 首先,该方法使用主成分分析对高光谱数据降维,并提取图像的纹理特征和直方图特征,然后将三种特征归一化;最后使用AdaBoost集成分类方法高光谱遥感数据分类。实验结果表明,相比于单个特征分类,该方法可取得较高...
  • 在本文中,提出了一种新的基于异构神经网络的深度学习方法,称为HNNDL,用于对带有少量标记样本的高光谱图像(HSI)进行监督分类。 具体来说,将深度神经网络(DNN)和卷积神经网络(CNN)组合起来以构建HNNDL体系...
  • 高光谱遥感图像相关知识梳理大全

    万次阅读 多人点赞 2017-05-17 17:10:00
    第三部分介绍高光谱图像数据冗余问题以及数据降维解决冗余的方法;第四部分介绍高光谱图像的混合像元问题,对光谱解混做了一定介绍;第五部分和第六部分分别介绍了高光谱图像的监督分类和分监督分类的特点、流程和...
  • 由于高数量的光谱通道以及少量标记的训练样本带来的“维数诅咒”(称为休斯现象)问题,降维高光谱数据的必要预处理步骤。 通常,为了提高分类精度,通常预先手动地去除由各种源(主要是传感器和大气)产生的噪声...

空空如也

空空如也

1 2 3
收藏数 47
精华内容 18
关键字:

高光谱图像降维方法