利用ENVI软件计算NDVI常见错误经验总结

2023-11-09

    本人初次学习ENVI软件,就碰到了一个大的bug,实验了一天终于搞定了!记录如下微笑

    NDVI 的作用就不多说了,计算公式大家都知道是利用(近红外波段-红波段)/(近红外波段+红波段)的公式,在envi中使用transform下的NDVI公式时需要时组合波段(即多个波段组合一起的文件,如果各个波段分开的则无法使用)。用此方法计算的NDVI没问题。

     但是如果你要是使用basic tools下的bandmath的话就要注意了。

      错误一:书写公式时如果用(b4-b3)/(b4+b3),那么你会发现结果一片黑或一片白,主要是计算值均取了整数,例如(50-10)/(50+10)=40/60=0因为整数运算,结果ndvi值为0。

     错误二:查询资料发现必须指定波段的取值为float,计算公式改为float(b4-b3)/float(b4+b3),结果发现NDVI对正值均计算正常,比如植被,裸地等。但是对于水体并不算大家所谓的小于0的值,而是全部大于0,而且是大于1的值。郁闷之极,询问了很多人,解释说bandmath是针对反射率的,不能直接针对DN值计算,但是课本说用DN值后者反射率都可以啊。

      几经尝试,发现下面的公式时可行的:NDVI=(float(b4)-float(b3))/(float(b4)+float(b3))可行。

   以上是个人多次尝试总结,如果有不对请指定出来。继续改进。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

利用ENVI软件计算NDVI常见错误经验总结 的相关文章

  • 力扣(19) - 跳跃游戏

    给定一个非负整数数组 nums 你最初位于数组的 第一个下标 数组中的每个元素代表你在该位置可以跳跃的最大长度 判断你是否能够到达最后一个下标 示例 1 输入 nums 2 3 1 1 4 输出 true 解释 可以先跳 1 步 从下标 0
  • a*算法的优缺点_轻松理解机器学习算法-朴素贝叶斯

    1 预备知识 贝叶斯定理 Bayes theorem 是概率论中的一个定理 它跟随机变量的条件概率以及边缘概率分布有关 通常事件A在事件B发生的条件下的概率 与事件B在事件A发生的条件下的概率是不一样的 然而这两种是有确定关系的 这种关系就
  • ASP.NET Core 简介

    NET Core 是 NET Framework 的新一代版本 是微软开发的第一个具有跨平台 Windows Mac OSX Linux 能力的应用程序开发框 ASP NET Core 是 Microsoft 新开发的 基于 NET Cor
  • JSON

    数据提取之JSON与JsonPATH JSON JavaScript Object Notation 是一种轻量级的数据交换格式 它使得人们很容易的进行阅读和编写 同时也方便了机器进行解析和生成 适用于进行数据交互的场景 比如网站前台与后台
  • 20181220_eglSwapBuffers详解

    eglSwapBuffers详解 问题来自eglSwapBuffers是否有等待 如果调用eglSwapBuffers的话 是不是会导致帧率下降 2 7 1 BootAnimation中的调用 之所以需要了解这个api的具体实现 因为我们需
  • 标准DH建模与改进DH建模(二)—— 什么是改进DH法以及为什么要学?

    学习机器人建模并不是一个愉快的过程 不愉快的一个重要原因就是 建模得到的方程又臭又长 仅仅是计算一次也许都要花不少时间 更不要说除了正逆运动学方程 你还要需要动力学方程 甚至动力学参数标定方程 当你掌握了DH建模方法后 你会陷入短暂的满足感
  • Python APP自动化测试详解

    一 App自动化测试简介 随着移动互联网的发展 越来越多的App产品应运而生 很多公司除了Web产品外还研发了相应的手机App产品 一些公司的主营业务甚至就是App 测试工程师也需要掌握一定的App端测试技能 从而让自己从烦琐 重复的 点点
  • HTTP Status 500 - An exception occurred processing JSP page /WEB-INF

    HTTP Status 500 An exception occurred processing JSP page WEB INF test showCountry jsp at line 11type Exception reportme
  • 支付宝同步跳转和异步通知简要介绍

    支付宝同步跳转和异步通知简要介绍 同步跳转文件 return url php 异步通知文件 notify url php 用户支付完之后会直接执行return url php 只执行一次 我们在这个文件里写的代码用于修改数据库订单状态 改为

随机推荐

  • 史上最简单Robotium跨进程操作实践——基于ADB框架

    楼主原创 分享不易 转载请注明出处 谢谢 2015年2月3日更新 有些朋友在用真机尝试本方法时 抛出了InputStream cannot be null的异常 该异常是由于adb运行在robotium框架中时 是完全运行在手机中的 此时它
  • SFTP文件上传下载

    http www cnblogs com longyg archive 2012 06 25 2556576 html 转载 转载于 https www cnblogs com sunfb p 4330324 html
  • 将一个TXT文件里面数据读出 ,进行数据去重处理 ,写入文件

    总的来说 分为三个模块 读文件模块 处理数据 写入文件 中间有如何创建文件 public class EG Reader 主方法 public static void main String args String filePath C U
  • JS中this.x= x

    今天看代码的时候发现了如上图的一个写法 虽然大致猜测到了其 的用法 但还是在网上求证了一下 那么JS中this x x 0的 是什么意思呢 在 js 中 这相当于一个赋值语句 只要 x 的值不返回为 false 那么就把 x 的值赋值给th
  • 解决安装Ubuntu &Debian ,安装界面黑屏或者只显示一个短白线问题

    AMI BIOS 可以关闭8254 Clock Gating 在重新安装 路径 Chipset South Cluster Configuration Miscellaneous Configuration 8254 Clock Gatin
  • 无线通信原理期末复习提纲

    文章目录 无线通信原理期末复习提纲 一 名词解释 1 同频再用距离 2 多径效应 3 多普勒效应 4 区群 5 越区切换 6 OFDMA 7 OFDM 8 TDMA 9 FDD 10 CSMA 二 简答题与计算 第一章 1 蜂窝网基本原理
  • 查成语--每天10行python代码系列!

    在爬取成语2 每天10行python代码系列一文中爬取了该网站收录的所有成语 并写入了sqlite数据库 数据存储的格式为每条记录存储一个成语以及成语的拼音 释义 出处和示例 这里实现了在命令行查询成语的功能 查询时通过 blur开关指定是
  • 【STM32标准库】【基础知识】程序烧录

    文章目录 开发板和烧录器 USB烧录 1 安装STM32CubeProgrammer 2 生成HEX文件 3 选择烧录模式 4 进入ISP模式 5 设置软件烧录 STLINK烧录 1 驱动下载 2 电路连接 3 Keil设置 4 烧录 ke
  • thingsboard 服务器mqtt设备过一段时间会自己断开,断开之后就不能发消息了QoS=2

    使用things board最新社区版 MQTT为V3 1 使用MQTT设备连接后能正常发布与订阅 但是一段时间后发现设备就不能再发布消息了 客户端也没有显示连接断开 检查后发现是客户端设备使用的消息可靠性QoS 2 修改客户端设备的发布Q
  • 素数打表,复杂度(Onlogn)和O(n)(对与10^7来说线性快两倍) + 分解质因数

    代码 接口 primeInit 100000 打表的范围 素数存在primeList中 个数为primeCount typedef long long LL int const MAXN 10000100 bool isPrime MAXN
  • sqoop job 定时实现增量、全量导入Hive

    本人使用工具 Windows 和 虚拟机链接的工具为 MobaXterm Windows链接数据库工具 Navicat 本人的数据库字段为 sqoop 实现全量导入执行的语句为 sqoop import connect jdbc mysql
  • redis未授权漏洞

    redis未授权漏洞是什么 Redis 默认情况下会绑定在 0 0 0 0 6379 这样将会将 Redis 服务暴露到公网上 如果在没有开启认证的情况下 可以导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取 Redis
  • 浅谈tidb事务与MySQL事务之间的区别

    MySQL是我们日常生活中常见的数据库 他的innodb存储引擎尤为常见 在事务方面使用的是扁平事务 即要么都执行 要么都回滚 而tidb数据库则使用的是分布式事务 两者都能保证数据的高一致性 但是在实现方式上是不一样的 我们先来看看MyS
  • 用python实现一个简单的语音录入转换文字的程序

    依赖安装 pip install SpeechRecognition 脚本代码 py import speech recognition as sr 初始化语音识别器 r sr Recognizer 开始录音 with sr Microph
  • 类型转换前后,对数值的影响

    做一个程序有一个函数是计算电量的 需要把转数转化用电量 原来是这样写的 pulse val gt energy float power count pulse power config pulse config imp 这种写法导致ener
  • TDK用html编写,关于dedecms首页TDK、栏目页TDK、文章页TDK设置-主页设置

    以dedecms免费模板安装后为例 首页TDK设置 栏目页TDK设置 文章页TDK设置首先找到这三个模板文件 分别是index html list article html article article html三个模板 以下是他们的截图
  • 如何利用IDM下载磁链视频

    用过IDM的应该都知道 idm的下载速度很快 但是美中不足的是idm只支持直链下载 P2P的磁链和种子资源都没法直接用idm下载 不过虽然没办法直接用idm下载 但是却可以用第三方工具将磁链转化成直链来下载 图1 IDM下载器 1 在IDM
  • JDBC(mysql和Oracle两种方法)

    JDBC JDBC API是一个Java API 可以访问任何类型表列数据 特别是存储在关系数据库中的数据 JDBC代表Java数据库连接 JDBC库中所包含的API通常与数据库使用于 连接到数据库 创建SQL或MySQL语句 在数据库中执
  • Axure RP--以一个导航为案例介绍如何做鼠标移入时事件

    鼠标移入时展开面板 在网页常见于鼠标移入在一级导航时展开二级导航 即手风琴式菜单 或见于电商网站的商品目录 鼠标悬停在一级分类时展开二级或更多分类 下面以一个导航为案例介绍如何做鼠标移入时事件 步骤1 从部件库拖拽一个矩形到线框图编辑区中
  • 利用ENVI软件计算NDVI常见错误经验总结

    本人初次学习ENVI软件 就碰到了一个大的bug 实验了一天终于搞定了 记录如下 NDVI 的作用就不多说了 计算公式大家都知道是利用 近红外波段 红波段 近红外波段 红波段 的公式 在envi中使用transform下的NDVI公式时需要