;;===============================================================================================
;;; 该程序是通过6s辐射校正模型生成查找表,以便进行气溶胶反演
; 该程序参数设置较为简单,如果要详细的参数,请自行设置
; 改进方法:1、读取每一个影像的角度信息建立查找表,这样精度更高
; 2、利用IDL直接调用Fortran语言的6S源程序,并行生成查找表,速度提高20倍左右
; 3、将所有参数都设置好,缩小步长,构建一个庞大的查找表,构建神经网络,一劳永逸
;;;==============================================================================================
PRO MODIS_LUT;month,day,iwave,idatm,iaer,lutpath,lutname
igeom=0;自定义几何条件
phi0=100;卫星方位角++++
month=5;月份
day=17;日期
idatm=8;define own atmospheric model
water=3.0;Water Vapor
ozone=0.35;Ozone
iaer=1;气溶胶模式大陆型
v=0;能见度
xps=-0.2;目标物高度
xpp=-1000;星测
iwave=42;自定义1输入波段范围和反射相函数42为modis的red
inhomo=0;地表反射率均一地表
idirect=0;无方向效应
igroun=0;绿色植被
surfre=[0.0,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5];地表反射率
rapp=-1;无大气校正
tao=[0.0,0.3,0.6,0.9,1.2,1.5,1.8,2.1,2.4,2.7,3.0];550nm气溶胶光学厚度
asol=30;太阳天顶角
avis=[0,7,14,21,28,35,42,49,56,63,70];卫星天顶角
phiv=0;太阳方位角
rf=FLTARR(11);表观反射率数组初始化
; CD,lutpath
CD,'E:\,作业\大三下学期\遥感原理\6s_test\IDLdata';自己更改6s.exe所在的文件夹路径
;********************表观反射率随地表反射率(取值范围 0 ~ 0.5 )的变化情况****************
lutname='surf reflectanceoutput.txt'
OPENW,lutlun,lutname,/get_lun
;设置循环过程
FOR e=0,10 DO BEGIN;地表反射率
txtname='input.txt'
OPENW,lun,txtname,/get_lun
PRINTF,lun,igeom
PRINTF,lun,asol,phiv,avis[0],phi0,month,day
PRINTF,lun,idatm
PRINTF,lun,water,ozone
PRINTF,lun,iaer
PRINTF,lun,v
PRINTF,lun,tao[0]
PRINTF,lun,xps
PRINTF,lun,xpp
PRINTF,lun,iwave
PRINTF,lun,inhomo
PRINTF,lun,idirect
PRINTF,lun,igroun
PRINTF,lun,surfre[e]
PRINTF,lun,rapp
FREE_LUN,lun
SPAWN,'6SV-10B.exeoutput1.txt',/hide ;调用6s <>符号为dos系统下的重定向符号 <从文件读取命令输入>将输出结果写入文件
txtname='output1.txt'
OPENR,lun,txtname,/get_lun
temp=STRARR(1,120)
READF,lun,temp
tt=STRMID(temp[0,60],30,9)
FREE_LUN,lun
;依次为辐射方程中的地表反射率,表观反射率
PRINTF,lutlun,'surf reflectance:',surfre[e],' apparent reflectance:',tt
rf[e]=tt;读取表观反射率
ENDFOR
gragic1=plot(surfre,rf,title='表观反射率随地表反射率(取值范围 0 ~ 0.5 )的变化情况',xtitle='surf reflectance',ytitle='apparent reflectance',"rD--",COLOR=125)
FREE_LUN,lutlun
; ********************表观反射率随观测天顶角(取值范围 0 ~ 70 )的变化情况****************
lutname='sensor zenith angleoutput.txt'
OPENW,lutlun,lutname,/get_lun
;设置循环过程
FOR d=0,10 DO BEGIN;卫星天顶角
txtname='input.txt'
OPENW,lun,txtname,/get_lun
PRINTF,lun,igeom
PRINTF,lun,asol,phiv,avis[d],phi0,month,day
PRINTF,lun,idatm
PRINTF,lun,water,ozone
PRINTF,lun,iaer
PRINTF,lun,v
PRINTF,lun,tao[0]
PRINTF,lun,xps
PRINTF,lun,xpp
PRINTF,lun,iwave
PRINTF,lun,inhomo
PRINTF,lun,idirect
PRINTF,lun,igroun
PRINTF,lun,surfre[0]
PRINTF,lun,rapp
FREE_LUN,lun
SPAWN,'6SV-10B.exeoutput1.txt',/hide ;调用6s <>符号为dos系统下的重定向符号 <从文件读取命令输入>将输出结果写入文件
txtname='output1.txt'
OPENR,lun,txtname,/get_lun
temp=STRARR(1,120)
READF,lun,temp
tt=STRMID(temp[0,60],30,9)
FREE_LUN,lun
;依次为辐射方程中的卫星天顶角,表观反射率
PRINTF,lutlun,'sensor zenith angle:',avis[d],' apparent reflectance:',tt
rf[d]=tt;读取表观反射率
ENDFOR
gragic2=plot(surfre,rf,title='表观反射率随观测天顶角(取值范围 0 ~ 70 )的变化情况',xtitle='sensor zenith angle',ytitle='apparent reflectance',"rD--",COLOR=125)
FREE_LUN,lutlun
;********************表观反射率随 AOD (取值范围 0 ~ 3.0 )的变化情况****************
lutname='AODoutput.txt'
OPENW,lutlun,lutname,/get_lun
;设置循环过程
FOR b=0,10 DO BEGIN;550nm气溶胶光学厚度
txtname='input.txt'
OPENW,lun,txtname,/get_lun
PRINTF,lun,igeom
PRINTF,lun,asol,phiv,avis[0],phi0,month,day
PRINTF,lun,idatm
PRINTF,lun,water,ozone
PRINTF,lun,iaer
PRINTF,lun,v
PRINTF,lun,tao[b]
PRINTF,lun,xps
PRINTF,lun,xpp
PRINTF,lun,iwave
PRINTF,lun,inhomo
PRINTF,lun,idirect
PRINTF,lun,igroun
PRINTF,lun,surfre[0]
PRINTF,lun,rapp
FREE_LUN,lun
SPAWN,'6SV-10B.exeoutput1.txt',/hide ;调用6s <>符号为dos系统下的重定向符号 <从文件读取命令输入>将输出结果写入文件
txtname='output1.txt'
OPENR,lun,txtname,/get_lun
temp=STRARR(1,120)
READF,lun,temp
tt=STRMID(temp[0,60],30,9)
FREE_LUN,lun
;依次为辐射方程中的气溶胶光学厚度,表观反射率
PRINTF,lutlun,'AOD',tao[b],' apparent reflectance:',tt
rf[b]=tt;读取表观反射率
ENDFOR
gragic3=plot(surfre,rf,title='表观反射率随 AOD (取值范围 0 ~ 3.0 )的变化情况',xtitle='AOD',ytitle='apparent reflectance',"rD--",COLOR=125)
FREE_LUN,lutlun
END
生成图像预览效果如下:
参考文档:http://blog.sina.com.cn/s/blog_764b1e9d01017tb4.html
IDL调用6S文件生成数据,及表观反射率有关二维图像相关推荐
- Matlab数据可视化方法与模板(2)——二维图像绘制
当下越来越多研究人员选择运用Matlab对数据进行建模处理,并进行相应的数据可视化操作.本系列对Matlab绘图与可视化方法进行了总结,并给出了相应的模板供各位参考使用,希望对各位的研究与工作有所帮助
- 计算GF1和GF6的表观反射率和投影问题
记录一下怕自己忘了 主要是之前一种用classic做出来的一直没有坐标信息 很烦 于是想了此下策 前提是要装了中国卫星的插件比较方便 首先用ENVI将需要的波段转成envi标准格式 不用classic ...
- 遥感中的表观反射率、反射率、反照率等之间的区别与联系
遥感反射率的定义:地物表面反射能量与到达地物表面的入射能量的比值. 遥感表观反射率的定义:地物表面反射能量与近地表太阳入射能量的比值. 大气校正就是将辐射亮度或者表观反射率转换为地表实际反射率,目的是 ...
- mysql 数据展示装置_实时生成数据宽表的方法和装置与流程
本发明涉及计算机技术领域,尤其涉及一种实时生成数据宽表的方法和装置. 背景技术: 数据仓库是面向主题的.集成的.相对稳定的.随时间不短变化得数据集合,用以支持经营管理中的决策制定.数据仓库中的数据面向 ...
- 微信公众号怎么生成带粉丝关注统计的渠道二维码
关于微信公众号在线生成带粉丝关注统计的渠道二维码,第三方工具微号帮提供了渠道二维码生成功能实现,可以为公众号生成带粉丝关注统计的渠道二维码,可以生成多个不同的渠道二维码,每个渠道二维码都可以单独统计粉 ...
- 【技术类】【ArcGIS对国产卫星的支持2:高分一号卫星】篇5、实时表观反射率产品生产
表观反射率就是指大气层顶的反射率,辐射定标的结果之一,又称视反射率.英文表示为:apparent reflectance (=地表反射率+大气反射率) 分发商提供的数据基本都是灰度值(DN值),必须转 ...
- 二维码生成:STM32F407 + LCD屏(GUI)制作二维码
说明:文件简单,移植方便,程序占用空间小,简单易懂, 全部编程做好的,测试通过的,还有文字备注,源码下载 : 本文二维码源码下载后直接跳入第四步 1.下载QRcode 二维码源码 Git下载 2.解压 ...
- QRCode二维码生成方案及其在带LOGO型二维码中的应用(1)
提要:很多公司为商业宣传之需,常将企业LOGO加入二维码中,但如果LOGO遮挡区域足够地大,二维码就变得无法识别.那么,有没有一种办法将上述区域预先"抠空"出来(以便专门放置LOG ...
- 利用Python和GDAL把MODIS的HDF格式表观反射率产品MOD09A1转换为TIFF格式并重投影到与LANDSAT8-OLI一致
解释 1.MOD09A1是表观反射率产品,是HDF格式并且投影和常用的Landsat数据不一致.为了统一反演时使用,想要将该产品转换为TIFF格式并重投影.特别是要批量的进行转换和重投影. 2.采用P ...
最新文章
- Python调整图片大小并保存调整后的图像
- python读写、创建 文件(二)
- ubuntu12.10下arm-linux-gcc交叉编译环境的搭建
- 使用vsftp虚拟用户实现安全访问控制
- 垂直柱状图(洛谷-P1598 )
- 《1024伐木累》-程序员妹子与花木兰
- python watchdog休眠_python watchdog
- 【Tomcat】安装Tomcat服务器Tomcat的目录结构
- clickhouse的kafka表引擎 +接口表
- 音频的相MATLAB,音频处理后频率响应和相位响应问题
- Leetcode之路径总和II
- hdu acm2548
- python下载第三方库失败的解决办法
- 安卓手机root是什么意思
- 案例:理想主义的猪与结果导向的猪
- Python 以正弦信号绘制信号
- c语言红酒编程题,C笔试题练习 - linbo5411的个人空间 - OSCHINA - 中文开源技术交流社区...
- 读《最重要的事只有一件》有感
- 【Origin双y轴】三条曲线,其中两条曲线共用一个y轴
- jQuery元素操作-遍历元素
热门文章
- Spring(1) Spring的7种事务传播行为
- java开发常用jar包_java开发常用jar包
- 尼姆(Nim)博弈策略的完整数学证明
- 关于微信(公众号)扫码登录
- 阿尔法大蛋智能机器人功能_科大讯飞阿尔法大蛋人工智能机器 真的很智能吗...
- 简洁明了的ReentrantReadWriteLock总结
- Ubuntu 18.04 安装 GeForce RTX 2080 Ti
- 如何更新github中项目内容
- Javascript数组去重的n种方法
- CAD梦想画图如何新建或修改尺寸样式