
你要先确定r_fid是否为-1 如果是-1就说明你波段运算出错了
那么你下一步肯定就报错了
关于波段运算 你可以参考下envi帮助的例子
fid还是用 t_fid=[fid,fid]
然后envi_doit的时候再fid=t_fid
1在主界面添加调用外部exe程序的Button,双击此Button进入代码编辑页面。
在程序的开始using SystemDiagnostics;
然后在初始化函数的上方定义private static SystemDiagnosticsProcess p;
2在Button的双击事件中,添加如下代码:
if (p == null){
p = new SystemDiagnosticsProcess();
pStartInfoFileName = 应用程序名字exe;
pStart();}else{
if (pHasExited) //是否正在运行{
pStart();}}
pStartInfoWindowStyle = SystemDiagnosticsProcessWindowStyleNormal;}
3若想关闭主程序的同时也关闭调用的程序,需要在退出程序的按钮事件中添加如下代码:
Process[] pProcess;
pProcess = ProcessGetProcesses();
if (pProcess[i]ProcessName == 应用程序名字) //任务管理器应用程序的名{
ENVI——完整的遥感图像处理平台ENVI(The Environment for Visualizing Images)是美国Exelis Visual Information Solutions公司的旗舰产品。
它是由遥感领域的科学家采用交互式数据语言IDL(Interactive Data Language)开发的一套功能强大的遥感图像处理软件。
它是快速、便捷、准确地从影像中提取信息的首屈一指的软件解决方案。
今天,众多的影像分析师和科学家选择ENVI来从遥感影像中提取信息。ENVI已经广泛应用于科研、环境保护、气象、石油矿产勘探、农业、林业、医学、国防&安全、地球科学、公用设施管理、遥感工程、水利、海洋、测绘勘察和城市与区域规划等领域。
所以说ENVI和IDL有着密不可分的关系,ENVI只是用IDL开发出来的一套遥感图像处理平台,它不完全覆盖遥感处理的方方面面,当然已经很全了。如果你还需要根据自己的需要开发相应的功能或者图像处理过程的话,那么IDL就是必不可少的,很多开发都是基于ENVI现有的功能来拓展的,所以安装ENVI的时候会同时装上IDL以便于后期使用方便,当然,如果你是初级用户,你完全可以只打开envi而不用理睬IDL就好。但是对于多数中高级用户来说,IDL则是必不可少的。
xFACTOR, yFACTOR是小数啊。。。只有0几
应该是
image = fltarr(nb, xFACTORns, yFACTORnl)
当然前面envi_file_query, fid, dims=dims,nb=nb也要改成
envi_file_query, fid, dims=dims,nb=nb,ns=ns,nl=nl
以上就是关于关于ENVI/IDL 我写了一段idl的程序,计算msavi,可是运行时总是出错,哪位大侠能帮帮忙看看啊全部的内容,包括:关于ENVI/IDL 我写了一段idl的程序,计算msavi,可是运行时总是出错,哪位大侠能帮帮忙看看啊、c#怎样调用envi/idl 开发的pro、请帮忙看一下这段IDL程序哪里有错,为什么一直出不来结果等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)