ENVI-IDL的MATH_DOIT和CF_DOIT函数(对FID和POS参数的讨论)
MATH_DOIT相当于ENVI的band math,可以完成各种波段运算。参数比较简单,EXP为运算公式的字符串,其他参数均为常见参数。
CF_DOIT可以将已有的文件保存为ENVI格式文件,相当于ENVI菜单下FILE-->SAVE AS-->ENVI STANDARD命令。没有特别生僻的参数。
但这两个函数的FID和POS参数与平时的运用有所不同,有必要讨论一下,举一反三。
FID:
MATH_DOIT函数的FID实际上是一个fid的数组,在运算band位于不同文件时,用于指向该band所在的文件。当所有运算波段处于同一文件下时,亦可以写作FID=FID,即只有本文件的FILE ID。
CF_DOIT函数的FID意义同上,表示需要处理的所有FILE ID,FID的排列顺序为最后生成新文件内各文件的排列顺序。
POS:
MATH_DOIT函数的POS数组应当与EXP公式中的BAND数目和顺序相对应,例如EXP=B1+B2+B3,则POS=[0,1,2].FID=[FID1,FID2,FID3],如果是同一文件的波段,则FID=[FID,FID,FID]或FID=FID.
CF_DOIT的POS参数有所不同,需要特别注意。由于CF_DOIT在保存文件时不仅能选择文件的数目和顺序,而且还能选择保存的波段数目和波段顺序,所以POS实际上是一个二维数组,POS=[NS,NL]。其中NS表示各个文件的合成波段数目和顺序,NL表示文件的数目。例如:
POS=[[0,1],[1,2],[0,2]],意思是一共合成3个文件,按照从上到下的顺序,第一个文件合成0和1波段,第二个文件合成1和2波段,第三个文件合成0和2波段。
总结起来,这两个涉及到文件和波段数目和顺序的函数在使用时要注意FILE ID的排列和波段顺序、数目的排列,不然会得到莫名其妙的结果(空图像)。
最新文章
- .net两个对象比较,抛出不一样字段的结果
- Linux下双网卡绑定bond0
- Zabbix监控redis status
- javascript学习内容--object.style.display=";value"; value值为“”none“隐藏”或 ";block";显示
- (ios) 屏幕触摸总结
- C# .NET 动态调用webservice的三种方式
- PE文件结构深入详解
- 可扩展的listview--Expandablelistview
- C#微信登录-电脑版扫描二维码登录
- JS控制文本框textarea输入字数限制的方法
- SVN版本分支合并
- HDU-2017-字符串统计
- Oracle-3 - :超级适合初学者的入门级笔记--用户权限,set运算符,高级子查询
- LuaJavaBridge - Lua 与 Java 互操作的简单解决方案
- 使用GPA针对android应用的绘制分析
- TensorLayer官方中文文档1.7.4:API – 数据预处理
- Vulkan API基本概念
- mysql字符集,insert,update,delete,select
- .Net Core SDK 命令介绍
- Android手机camera和IMU的标定
热门文章
- 创建Windows任务计划定时调用网页执行任务(通过Windows PowerShell的Invoke-WebRequest实现)
- 同余&;逆元简单总结
- 【leetcode】1253. Reconstruct a 2-Row Binary Matrix
- dede cms 怎样调用年月日
- Spring Controller RequestMapping
- BZOJ 3940 Censoring ( Trie 图 )
- wx.setStorage、wx.getStorage和wx.getStorageSync
- websocket协议解决消息发送问题 Could not decode a text frame as UTF-8.
- BZOJ 4386 Luogu P3597 [POI2015]Wycieczki (矩阵乘法)
- 如何在matalb图像上添加公式符号