相信大家在使用ENVI 过程中应该会发现,该软件有几种方式可以计算NDVI指数,主要包括:波段运算、内置函数Spectral Indices运算以及内置工具NDVI,那么这几种方式有什么异同呢?下面使用landsat8数据进行测试一下:

1.使用数据

使用经过辐射校正和大气校正后的Landsat8数据作为计算的数据;

LC08_L1TP_124039_20150728_radio_flaa.dat

NDVI计算公式:

NDVI=(NIR-RED)/(NIR+RED)

NDVI 归一化植被指数

NIR为近红外波段的反射值

R为红光波段的反射值

2.NDVI计算方法

2.1 波段运算

使用工具箱中的Band Math计算,或者是Spectral Math。

公式:(float(b1)-float(b2))/(float(b1)+float(b2))注意英文输入法输入公式,结果是浮点型的,所以设置为Float,不加的话计算出来就都取整变为0值了,显示就是白板了。

b1:NIR b2:RED

点击OK,选择对应波段,输出临时文件。

2.2 内置函数Spectral Indices运算

使用Spectral Indices工具:

默认dat格式,设置为TIF会报错。

2.3 内置工具NDVI

使用工具箱中内置的NDVI计算工具计算。

波段对应编号需要查看实际对应关系设置:这里应该是red4和nir5

计算结果显示:

3.结果比较

使用Cursor Vlaue工具查看结果:

数据区域查询比较:

背景区域查询比较:

4.小结

   ENVI软件中NDVI不同方法计算结果中,数据区域三种计算结果是一样的;背景区域结果不一致:NDVI Calculation工具背景是0值,Spectral Indices和Band Math计算结果是-NAN.

注:不同的背景值对有些工具的使用有影响,比如有的工具不支持-NAN背景的计算。

ENVI 5.3 计算NDVI的几种方法及结果的差异分析相关推荐

  1. 现代密码学3.1--定义计算安全的两种方法

    现代密码学3.1--定义计算安全的两种方法 三种安全性定义 定义计算安全的两种方法 具体方法/concrete approach 渐进方法/asyptotic approach "高效/PP ...

  2. 网络基础知识 快速计算子网掩码的2种方法

    网络基础知识 快速计算子网掩码的2种方法<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office ...

  3. php中计算时间差的几种方法,php计算时间差的方法

    一个简单的例子:计算借书的天数,根据每天的日期进行计算. (1) 有数据库的情况 MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可. MYSQL那就用两个日期字段的差值计算的计 ...

  4. linux c计算时间差值,获取时间和计算时间差的几种方法总结,时间差几种方法...

    获取时间和计算时间差的几种方法总结,时间差几种方法 一.标准C和C++都可用 1.获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( ...

  5. [C++] 计算行列式的若干种方法

    计算行列式的三种方法 测试样例 按行(列)展开法 计算结果 高斯消元转化为上三角阵 计算结果 尝试引入permutation operation 尝试使用分数运算 定义法 代码 测试结果 有问题欢迎提 ...

  6. 个人所得税递归函数C语言,C语言实现 计算个人所得税务2种方法

    #include #include /* 基于C语言的个人所得税计税系统 问题描述: 我国现行的个人所得税计算方法如下: 级数 全月应纳税所得额   税率(%) 1 不超过500元的    5 2 超 ...

  7. 漫谈分子动力学计算热导率的五种方法

    关注 Mr.material,\color{Violet} \rm Mr.material\ ,Mr.material , 更\color{red}{更}更多\color{blue}{多}多精\col ...

  8. c语言windows获取时间,【转载】c/c++在windows下获取时间和计算时间差的几种方法总结...

    一.标准C和C++都可用 1.获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( time_t timer1, time_t time ...

  9. php中计算时间差的几种方法,PHP 中计算时间差的几种方法

    在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了: 一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几 ...

  10. PHP计算计算时间差,php中计算时间差的几种方法

    在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了: 一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几 ...

最新文章

  1. R语言:时间序列常用函数
  2. Codeforces 947E/923E Perpetual Subtraction (线性代数、矩阵对角化、DP)
  3. Angular Web App部署Ubuntu Nginx
  4. 光线求交加速算法:边界体积层次结构(Bounding Volume Hierarchies)2-表面积启发式法(The Surface Area Heuristic)
  5. Program Library HOWTO(2)
  6. MySQL 编码相关小结
  7. java jsp中文乱码怎么解决_如何解决JSP中文乱码问题
  8. android gps 方位角,GPS坐标系中的方位角计算
  9. 软件工程 实践者的研究方法 第12章答案
  10. 计算机的配件知识,组装一台电脑需要哪些配件 DIY装机必看的电脑硬件知识详解 (全文)...
  11. Windows Server 2008 WIA服务需要安装“桌面体验”
  12. Apple store安装旧版本的软件
  13. MATLAB中的偏最小二乘回归(PLSR)和主成分回归(PCR)
  14. Per tile sequence quality
  15. Liunx下Nginx安装配置
  16. python月球和地球体重_地球和月球围绕太阳运行,与Python玩游戏
  17. 自学SpringBoot,超详细笔记
  18. UBOOT NVME驱动(一路io队列和一路admin队列的例程分析)(未完成)
  19. CSDN代码和积分获取方式
  20. 趣解 ceph rgw multisite data sync 机制

热门文章

  1. kubectl 命令详解(三十四):rollout status
  2. 用递归+缓存求阶乘和排列组合数
  3. 《FreeKick》战术_游戏前线
  4. 商品详情页中间显示不出来
  5. ctfshow 日志包含Web80-81
  6. RTD原理及其温度采集
  7. Quitting an application - is that frowned upon?
  8. 三种数据流分析的方程、用途
  9. 浅谈对工厂方法模式的理解
  10. 4层板和6层板的划分