主成分分析(PCA)是一种统计方法,简而言之就是用几种特性去描述事物。每个事物都可以用不同的特性去进行表达,但这些特性一般而言是存在相互的融合和冗余,而用主成分分析方法将这些特性进行转换成不相关的新特性。

在ENVI软件中共提供了三种主成分分析方式分别为:(1)Forward PCA Rotation Existing Statistics(2)Forward PCA Rotation New Statistics and Rotate(3)Inverse PCA Rotation。下面就以Forward PCA Rotation New Statistics and Rotate工具Landsat8数据作为实验数据分别进行说明。

Forward PCA Rotation Existing Statistics工具详解

该工具主要是用于计算各数据的特征值、协方差、相关系数以及PC正向的旋转。工具具体使用如下:

(1)点开工具后,首先需要进行数据的选择,本文中使用的是预处理之后的Landsat8的数据,因此选择Landsat8数据作为输入数据。

(2)参数界面设置。

①Stats X/Y Resize Factor:主要为进行抽样参数的设置,在该栏内需要填入小于等于1的数,当设置的数值越小,则表示运算时所参与的像元数越少,运算速度就越快

②output stats filename[.sta]:该部分主要是设置sta文件的输出名称及路径,在sta文件中包含着主成分分析计算中的统计信息,主要为协方差、相关系数、特征值以及特征向量。

③calculate using :这里提供了两种选择分别为协方差矩阵和相关系数矩阵供选择。常规而言是使用协方差矩阵,当波段之间数据范围差异较大时,要用到相关系数矩阵。

④enter output filename :这里为设置主成分的输出名称及路径。

⑤output date type:选择需要的输出类型(字节型,整型,无符号整型,长整型,无符号长整型,浮点型,双精度型),一般默认浮点型。

⑥Select Subset from Eigenvalues:如果设置为YES,则默认全部波段参与计算并输出,如果设置NO则可以在number of output pc bands中设置需要计算并输出的波段数。如果这里设置波段数不为全部波段,则会根据所输入的数值进行选择前几个波段进行运算。

(3)计算完成后弹出波段选择情况以及特征值和贡献率的显示框,在该对话框内可以设置所需要的波段数进行选择,默认为所有波段。

(4)计算完毕后,会显示出PC特征图,该图中显示着各主成分的信息。

(5)在所有步骤运算完毕后,我们可以通过view Statistics file工具进行打开之前所计算输出的sta 文件进行查看主成分分析所统计输出的协方差、相关系数、特征值和特征向量等相关信息。

(6)主成分荷载计算。

通过上述步骤中已经得到了相关的统计信息,之后我们可以基于这些统计信息进行计算主成分荷载以及得分。主成分的荷载可以通过下面的公式进行计算。

式中的表示特征值,e表示特征向量。

觉着有用的话,欢迎分享、点赞和关注生态与遥感应用公众号。

【教程】ENVI主成分分析详解相关推荐

  1. python语言入门详解-python初级教程:入门详解

    python初级教程:入门详解 Crifan Li 目录 前言 .................................................................... ...

  2. h2 不能访问localhost_SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台

    SpringBoot2.x系列教程44--H2数据库详解及搭建Web控制台 作者:一一哥 我在上一章节中讲解了Spring Boot中整合Mybatis,接下来我给大家介绍一款内存数据库--H2. H ...

  3. CentOS 7安装教程(图文详解)如下

    虚拟机安装 CentOS 7安装教程(图文详解)如下:

  4. mysql 实例复制_MYSQL教程MySQL 复制详解及简单实例

    <MysqL教程MysqL 复制详解及简单实例>要点: 本文介绍了MysqL教程MysqL 复制详解及简单实例,希望对您有用.如果有疑问,可以联系我们. MysqL 复制详解及简单实例 主 ...

  5. linux nginx编译详解,Linux下nginx编译安装教程和编译参数详解

    这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备 1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码 代码如下:# ...

  6. cs6导航栏代码html,总算认识网页设计教程|Dreamweaver-CS6工具栏详解

    总算认识网页设计教程|Dreamweaver-CS6工具栏详解 日期:2019-08-31 16:18:59 浏览:194 核心提示:网页设计教程|DreamweaverCS6工具栏详解.为了更好地使 ...

  7. html5 3d全景代码,HTML5教程 三维全景详解

    本篇教程探讨了HTML5教程 三维全景详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < 准备: 1.一张或多张全景图片素材 2.pano2VR软件,链接: ...

  8. TortoiseGit 使用教程 (图文详解)

    TortoiseGit 使用教程 (图文详解) 第一步 下载Git: 下载地址: https://gitforwindows.org 第二步 下载TortoiseGit 以及 汉化包 (安装教程这里就 ...

  9. keyshot渲染图文教程_KeyShot渲染教程,KeyShot渲染基础教程步骤图文详解

    KeyShot渲染教程,KeyShot渲染基础教程步骤图文详解 KeyShot渲染教程,在我们导入了项目之后,接着我们就要输出图片或者动画了.这里有许多动态的方式来完成,在开始渲染之前,我们来设置我们 ...

最新文章

  1. 领域驱动设计_软件核心复杂性应对之道
  2. 什么是负边沿触发_晶闸管的导通条件是什么 晶闸管(可控硅)检测方法
  3. java runtime.exec 阻塞_关于Runtime.getRuntime().exec()产生阻塞的2个陷阱
  4. 4、Power Query-智能汇总工作簿下的指定或所有工作表数据
  5. 微软在Skype推出LGBT骄傲月表情与贴纸
  6. irq4中断子程序c语言写法,AVR汇编程序参考
  7. (ios7) 解决代码布局View, ios7 中 subView 高度增加StatusBar20dp的问题,保证Ios6,ios7代码一致...
  8. C语言中的struct和union区别
  9. sscanf的高级用法
  10. 如何将计算机加入到域环境中,如何在讲计算机加入一个WinXP的域环境
  11. POJ 2993 Emag eht htiw Em Pleh(模拟)
  12. Ubuntu 上安装 Node.js
  13. 斐讯k2p官方固件如何登陆ssh后台
  14. java实现上传文件
  15. java 微博阅读量怎么算,新浪微博阅读量怎么算
  16. CGAL license说明
  17. 三相桥式全控整流电路simulink仿真_变频器为什么必须整流?整流单元原理图解
  18. C# dataGridView控件单元格底色 dataGridView背景色 背景色调整 Header背景色前景色
  19. 2021上海建筑施工八大员之安全员模拟题集及答案解析
  20. FreeMind的使用

热门文章

  1. 简单学习一下AES算法:GCM、ECB、CFB、OFB等
  2. 华清远见嵌入式培训_第二周回顾与反思
  3. 如何写出高质量代码——站在巨人的肩膀上
  4. matlab提取图像低频,获取图像频域并分解为高低频(MATLAB)
  5. Rust:如何实现一个线程池?
  6. 三轴转台伺服控制及导引头半实物仿真测试系统ETest研究
  7. MSSQL·查询数据库中所有索引的相关信息
  8. 用 Python 读取 Excel 自动生成 Web 可视化页面!
  9. Deepin安装快速搜索工具FSearch
  10. 畅想未来计算机英语作文带翻译,关于未来的英语作文带翻译