1.叶面积指数(LAI)的定义:
叶面积指数,亦称叶面积系数。是指单位土地面积上植物叶片总面积占土地面积的倍数。它与植被的密度、结构(单层或复层)、树木的生物学特性(分枝角、叶着生角、耐荫性等)和环境条件(光照、水分、土壤营养状况)有关,是表示植被利用光能状况和冠层结构的一个综合指标。

2.经验模型预测LAI:
经验模型法基于数理统计方法,利用反射率、光谱一阶导数、植被指数等作为自变量,建立叶面积指数与特征光谱(如反射率、光谱指数)之间的回归模型,并利用该模型估算LAI。经验模型原理和算法比较简单,且估算精度满足要求,在植被LAI的估算中应用广泛,是最为常见的建模方式。

3.LAI经验模型原理(以三种下垫面为例,自己可根据实际修改)

4.程序源代码

;#############导入、输出文件及调用函数的程序 ############;
Pro LAI
;根据NDVI和Landcover计算LAI;打开NDVI和Landcover文件
fn_NDVI=dialog_pickfile(title='选择NDVI数据',get_path=work_dir)
cd,work_dir
fn_landcover=dialog_pickfile(title='选择土地覆盖数据',get_path=work_dir)
cd,work_dir;读入NDVI和Landcover数据
envi_open_file,fn_NDVI,r_fid = fid_NDVI
envi_open_file,fn_landcover,r_fid=fid_landcover
envi_file_query,fid_NDVI,ns=ns,nl=nl,nb=nb,dims=dims,$
data_type=data_type,interleave=interleave,offset=offset
map_info=envi_get_map_info(fid = fid_NDVI)
NDVI=envi_get_data(fid = fid_NDVI,dims=dims,pos=0)
landcover=envi_get_data(fid = fid_Landcover,dims=dims,pos=0);调用cal_LAI函数计算LAI
LAI_result=lai_cal(NDVI,landcover);保存结果
o_fn=dialog_pickfile(title='结果保存为')
envi_write_envi_file,LAI_result,out_name=o_fn,/no_copy,$
ns=ns,nl=nl,nb=nb,dims=dims,data_type=data_type,interleave=interleave,$
offset=offset,map_info=map_info
end;#############叶面积指数计算程序############;
function lai_cal,ndvi,landcover
;计算 LAI 的函数
sz=size(ndvi)
result=make_array(size=sz)
;分段计算LAIw1=where(Landcover eq 1 and NDVI le 0.125,count)w2=where(Landcover eq 2 and NDVI ge 0.125 and NDVI le 0.825,count)w3=where(Landcover eq 2 and NDVI ge 0.825,count)w4=where(Landcover eq 3 and NDVI ge 0.125 and NDVI le 0.825,count)w5=where(Landcover eq 3 and NDVI ge 0.825,count)
if total(w1) gt 0 then result[w1]=0
if total(w2) gt 0 then result[w2]=0.1836*exp(4.37*NDVI[w2])
if total(w3) gt 0 then result[w3]=6.606
if total(w4) gt 0 then result[w4]=0.0884*exp(4.96*NDVI[w4])
if total(w5) gt 0 then result[w3]=6.091
return,result ;输出结果
end

5.调用过程:
1)在IDL中调用 ENVI 函数读取 NDVI 和土地覆盖图
2) cal_LAI函数按照不同土地覆盖类型的 LAI 计算公式进行计算
3) 将计算得到的 LAI 保存为 ENVI 标准文件

6.结果:
ENVI标准文件做彩色变换后,结果如下:

遥感IDL二次开发(叶面积指数LAI计算)相关推荐

  1. 遥感IDL二次开发(辐射定标)

    1.程序功能: 在IDL环境下进行辐射定标,并将结果返回ENVI. 2.运行步骤: 2.1 在ENVI中打开TM数据,并将数据传回到IDL工作空间: 首先打开ENVI+IDL8.5,导入TM数据,然后 ...

  2. 遥感IDL二次开发(大气校正)

    1.程序功能: 用ENVI打开TM数据,将数据传到IDL工作空间,在IDL环境下进行大气校正,并将结果回传给ENVI. 2.程序源代码: Function AtmoCorr32,test ;***** ...

  3. Python遥感图像处理应用篇(十):使用NDVI指数批量计算叶面积指数LAI

    1.叶面积指数概念     叶面积指数(leaf area index, LAI)不同资料显示定义有所不同,有的说是指单位地面上的绿叶面积,是植被冠层最显著的特征之一,具体是指一定土地面积上植物叶面面 ...

  4. 软件介绍|ENVI/IDL软件及二次开发介绍

    ENVI是美国Exelis Visual Information Solutions公司的旗舰产品,它是由遥感领域的科学家采用交互式数据语言IDL(Interactive Data Language) ...

  5. 边缘计算网关linux开发,边缘计算网关(BMG800系列)二次开发指导手册

    边缘计算网关二次开发指导手册 库函数接口介绍 (适用于:BMG800系列) 目录 1. 获取温湿度(硬件设备为sht10) 2. 获取大气压(硬件设备为bmp180) 3. 读取ADC值(硬件设备为m ...

  6. 基于C#的AE+IDL二次桌面端程序开发

    目录 一.内容 1.2 实训内容      1.2.1 IDL综合开发      1.2.2 基于AO/AE的GIS二次开发    1.2.3 COM_IDL_connect组件开发 三. 实训软硬件 ...

  7. VisionPro二次开发——C#计算旋转中心

    本文将通过Visual Studio 2019运行VisionPro软件计算旋转中心,可用于旋转标定. 目录 前期准备 程序框架 引用内容 窗体设计 程序设计 运行结果 前期准备 首次在Visual ...

  8. C# CAD二次开发——建筑结构墙体线荷载计算工具开发(一)

    前言: 本人是一名建筑设计公司的结构设计人员,建筑业的势头显然没有前些年那般波涛汹涌.浪潮暂退的今天很多向我这样的结构设计从业人员倍感迷茫.行业沉寂的这些日子里我不断探索,希望在减隔震.BIM.钢结构 ...

  9. Python字典二次开发实现稀疏矩阵表示与简单计算

    问题描述:所谓稀疏矩阵是指,矩阵中大部分元素的值为0,只有少量非0元素.对于稀疏矩阵,如果存储所有元素的话,浪费空间较多,一般采取的方式是只存储非0元素及其位置. 思考下面的几个问题: 1)如何使用字 ...

最新文章

  1. 第四范式申请港交所上市:2021上半年营收7.88亿,研发费用占七成
  2. 【科普】不同行业的常见数据分析的指标是什么?
  3. JavaScript实现动态规划方法计算特定位置的斐波那契数fibonacciNth算法(附完整源码)
  4. SpringMVC(十一) RequestMapping获取Cookie值
  5. python判断合法整数数字_C# 判断一字符串是否为合法数字(正则表达式)
  6. Java项目课程04:需求分析
  7. 微课|中学生可以这样学Python(1.5节):标准库与扩展库对象的导入
  8. thttpd服务器修改时间后导致CPU占用率过高
  9. web测试之总流程归纳
  10. 算法精解----快速排序2
  11. 50行Python代码制作一个计算器
  12. kafka-Streaming错误:在IDEA连接kafka时出现错误
  13. 微信公众号如何绑定运营者的微信号
  14. SOFA 应用架构详解
  15. Servlet思维导图总结
  16. 中国电信天翼空间发布移动应用开发运营平台
  17. 企业微信自动打卡脚本
  18. JDK 8 Stream流的优美用法——groupingBy结合joining用法
  19. 开源 iOS 项目分类索引大全 - 待整理
  20. uClinux编译方法

热门文章

  1. 盐津铺子发布三季报后,利润还能增长多少个200%?
  2. 姗姗来迟的中文Webfont
  3. 秒懂算法 | 蒙特卡罗算法
  4. 英特尔XPU全面创新,面向HPC与AI领域
  5. 及刻大数据:深圳地铁10号线客流分析,华为周边最熙攘
  6. [Kerberos原理]-- 趣味故事讲解Kerberos认证原理过程
  7. 折半查找算法[二分查找法]算法的实现和解决整数溢出问题~
  8. 百度AI深度学习课程——《乘风破浪的姐姐》数据爬取
  9. php 如何清除phpsessid,如何在客户端计算机上删除PHPSESSID
  10. [C++](16)多态:虚函数,使用,多态的原理