在遥感中,常常会提到NDVI,它的全称是 Normalized Difference Vegetation Index,也就是归一化差分植被指数,是反映农作物长势和营养信息的重要参数之一,它的计算原理很简单,就是近红外波段的反射值与红光波段的反射值之差比上两者之和。

即 NDVI=(NIR-R)/(NIR+R),

NIR为近红外波段的反射值,R为红光波段的反射值。

1、NDVI的应用:检测植被生长状态、植被覆盖度和消除部分辐射误差等;

2、-1<=NDVI<=1,负值表示地面覆盖为云、水、雪等,对可见光高反射;0表示有岩石或裸土等,NIR和R近似相等;正值,表示有植被覆盖,且随覆盖度增大而增大;

3、NDVI的局限性表现在,用非线性拉伸的方式增强了NIR和R的反射率的对比度。对于同一幅图象,分别求RVI和NDVI时会发现,RVI值增加的速度高于NDVI增加速度,即NDVI对高植被区具有较低的灵敏度;

4、NDVI能反映出植物冠层的背景影响,如土壤、潮湿地面、雪、枯叶、粗糙度等,且与植被覆盖有关。

下面来看一个具体的事例。下面两张图分别是TM影像的三波段(红光,左图)和四波段(近红外,右图),将对应位置的像素值进行运算就行了。

       

经过计算后,按照得到的NDVI值进行重新赋值,让NDVI值越大的区域绿色越深,反之越浅,若NDVI小于0,则置为0。效果图如下:

下面是我从高德地图上截取的卫星影像,可以看到NDVI的结果与实际情况基本一致。

下面来看一下实现的代码:

环境:VS2017+OPENCV4

Mat NDVI(Mat tm3, Mat tm4) {//tm3=imread("tm3.bmp"),tm4=imread("tm4.bmp");int rows = tm3.rows, cols = tm3.cols;Mat ndvi(rows, cols, CV_8UC3);double band3, band4;for (int i = 0; i < rows; i++) {for (int j = 0; j < cols; j++) {band3 = (double)tm3.at<Vec3b>(i, j)[0];band4 = (double)tm4.at<Vec3b>(i, j)[0];ndvi.at<Vec3b>(i, j)[0] = 0;ndvi.at<Vec3b>(i, j)[1] = (255 - 255 * (band4 - band3) / (band3 + band4));//绿色层,NDVI越大,绿色越深ndvi.at<Vec3b>(i, j)[2] = 0;if (band3 > band4)//NDVI小于0则显示白色ndvi.at<Vec3b>(i, j)[0] = ndvi.at<Vec3b>(i, j)[1] = ndvi.at<Vec3b>(i, j)[2] = 255;}}imwrite("NDVI.bmp", ndvi);return ndvi;
}

遥感影像处理-NDVI相关推荐

  1. 遥感影像处理有高招,“专治”各类花式并发的述求!

    摘要: 遥感影像处理领域,需要各种各样的并发处理逻辑.Kubernetes容器平台,使用Docker容器作为独立无依赖的运行单元,非常适合大规模遥感影像并发计算的底座.配合超强的Workflow流程引 ...

  2. 遥感影像处理书籍推荐

    目前技术发展,遥感影像处理已经趋于自动化,各位在搞科研.搞项目的时候肯定要自己编程实现相关算法.相关模型,但对遥感影像处理相关的基础知识.原理也要理解,便于后期更好的开展科研.下面给推荐基本遥感书籍及 ...

  3. ArcGIS中ArcMap快速自动计算单一波段或多波段栅格遥感影像NDVI的方法

      本文介绍在ArcMap软件中,快速对单一波段或多波段栅格遥感影像自动计算NDVI数值的方法.   计算遥感影像的NDVI值是一个很常见.也很基础的操作,基于ENVI.ERDAS等专业遥感影像数据处 ...

  4. 遥感影像处理的几个概念

    辐射定标: 1.定义(Radiometric Calibration)是计算地物的光谱反射率或光谱辐射亮度时,或者需要对不同时间.不同传感器获取的图像进行比较时,都必须将图像的亮度灰度值(DN)转换为 ...

  5. PS插件:Photoshop遥感影像处理插件

    Photoshop地理空间插件,实现遥感影像批量转换为PS图层,并且按照地理位置关系,在PS中叠加图层显示:PS图层调色编辑之后,一键转成带地理坐标的遥感影像. PS插件下载地址: https://d ...

  6. 基于Python高光谱遥感影像处理实例

    前言 在写波段配准相关代码时经常需要用到tif影像的波段合成和分解,虽然可以用ENVI才处理,但是每次都要打开再设置一些参数有些麻烦,所以本着"独立自主.自力更生"的原则就写了些脚 ...

  7. 简单粗暴 |土地利用遥感影像处理(从数据下载到ENVI与ArcGIS结合)

    1 数据获取 打开任何一个浏览器搜"地理空间数据云"或者在网页地址处输入网址:http://www.gscloud.cn,注册账号登录进去,点击高级搜索,设定下载区域范围以及传感器 ...

  8. 在envi做随机森林_简单粗暴 |土地利用遥感影像处理(从数据下载到ENVI与ArcGIS结合)...

    1数据获取 打开任何一个浏览器搜"地理空间数据云"或者在网页地址处输入网址: http://www.gscloud.cn ,注册账号登录进去,点击高级搜索,设定下载区域范围以及传感 ...

  9. 介绍一个开源的高分辨率遥感影像处理库-OTB

    官方网址:http://www.orfeo-toolbox.org/otb/ 先粘贴一些官网的介绍链接过来,等有有较深入研究后翻译一些过来. OTB is a C++ library for high ...

  10. 小流域水土保持遥感信息系统

    湖北大学资源环境学院 小流域水土保持遥感信息系统 用户手册 指导老师:梅 新 团队成员:左正康 陈业培 刘彬 夏雪飞 学校院系:湖北大学资源环境学院地理信息系统 通讯地址:湖北大学资源环境学院 505 ...

最新文章

  1. ip通信基础第九周(下)
  2. 解决通过QQ客户端的空间邮箱等打开空间邮箱
  3. 【linux】tcpdump抓包
  4. 传统网站与Web标准——表格布局实例
  5. diff命令输出格式解读
  6. 使左对角线和右对角线上的元素为0
  7. [vue] 说说你对单向数据流和双向数据流的理解
  8. 解决 mysql>com.mysql.jdbc.PacketTooBigException: Packet for query is too large (12073681 > 4194304)
  9. python帮助文档中查看内置函数_PYTHON官方文档内置函数整理
  10. 9277用计算机,【资料】[转]鸿合电子白板学科通用工具使用技巧
  11. Js和jQuery的文档就绪函数以及执行次数
  12. 获取页面中超链接数量_微信订阅号自定义菜单添加页面模板使用教程。
  13. php 下载表格文件在哪里,PHPExcel强大之处在哪里?
  14. go json tag 字符串 整数_json:你或许还不知道的序列化操作(一)
  15. 谷歌停止对android更新,谷歌停止华为使用安卓系统? 可能影响新系统版本更新?...
  16. 线性时变模型预测控制推导
  17. 笔记 |《软件测试技术经典教程》第4章 黑盒测试技术
  18. 深度学习中的类别激活热图可视化
  19. 如何在没有密码的情况下打开 Vivo 手机
  20. 黑苹果核心显卡clover驱动教程

热门文章

  1. SAS实验2——假设检验
  2. Modern CMake 简介
  3. 转载:王垠·程序员的心理疾病
  4. 三星S5660刷机及Root
  5. Centos7授权普通用户管理员权限
  6. 2022年法定节假日JSON格式文件
  7. 单片机设计 指纹识别系统
  8. vtd和vt的区别_英语中v,vi,vt有什么区别
  9. 计算机画图如何把二寸照片修改为一寸,【2人回答】用画图工具怎么制作一寸、二寸照片?-3D溜溜网...
  10. 新建word 无法切换输入法_为什么word文件中无法切换输入法?