IDL_植被二值化

在这里插入图片描述

Pro 植被二值化
  
;打开envi
  e=Envi()
 
;打开文件
file='C:\Program Files\Harris\ENVI55\data\qb_boulder_msi'
raster=e.openraster(file)

;大气校正
quac=Enviquacraster(raster)
  
;计算ndvi
ndvi=Envispectralindexraster(quac,'ndvi')
  
;植被二分化
veg=Envibinarygtthresholdraster(ndvi,0.2)

;将数据加载到data manger
e.Data.add,veg
  
;显示数据
view=e.getview()
layer=view.createlayer(veg)

;保存文件
veg.export,'D:\veg.sav','ENVI'

End

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
IDL_IDLBridge是一个用于在IDL中启动子进程并执行代码的对象。通过创建IDL_IDLBridge对象并调用Execute方法,可以在IDL中启动子进程并执行指定的IDL代码。[1] 使用IDL_IDLBridge可以实现在异步计算中使用多进程加速数据处理的目的。通过在一个IDL进程等待的同时完成更多的处理,充分利用PC的CPU算力。 以下是使用IDL_IDLBridge的代码示例: compile_opt idl2 obridge = obj_new('IDL_IDLBridge') childprofile1='Full path to your IDL file' obridge->Execute,'.compile "' childprofile1 '"' obridge->Execute,'IDL file name',/NOWAIT IDL_IDLBridge还可以实现并行算法,特别适用于逐行计算的处理问题。可以通过设置回调函数来获取具体的执行信息,或者使用dialog_message函数来模拟print语句的效果。下面是一个示例代码: function_position = 'C:\Users\DN\Documents\IDL\mult2.pro' b='xpnp' oBridge2 = OBJ_NEW('IDL_IDLBridge',CALLBACK='demo_bridge_call') oBridge2->Execute,".compile " "'" Function_position "'" oBridge2->Setvar,"str",b oBridge2->Execute,"xxx=mult(str)",/nowait print,'xgggx',oBridge2->status() while(1) do begin sg=oBridge2->status() if(sg eq 0) then break endwhile pro demo_bridge_call, status, error, oBr CASE status of 2: str="Completed" 3: str="Error: " error 4: str=error ; Aborted message ENDCASE print,'str::',str END 另外,IDL_IDLBridge还可以同时开启多个进程来处理数据。以下是一个示例代码: pro MultiProcesses ;开启3个进程同时处理数据 compile_opt idl2 obridge1 = obj_new('IDL_IDLBridge') childprofile1='F:\Mekong_MultiRun\mekong_2010.pro' obridge1->Execute,'.compile "' childprofile1 '"' obridge1->Execute,'mekong_2010',/NOWAIT obridge2 = obj_new('IDL_IDLBridge') childprofile2='F:\Mekong_MultiRun\mekong_2011.pro' obridge2->Execute,'.compile "' childprofile2 '"' obridge2->Execute,'mekong_2011',/NOWAIT obridge3 = obj_new('IDL_IDLBridge') childprofile3='F:\Mekong_MultiRun\mekong_2012.pro' obridge3->Execute,'.compile "' childprofile3 '"' obridge3->Execute,'np_mekong_2012',/NOWAIT END 总结:IDL_IDLBridge是一个用于在IDL中启动子进程并执行代码的对象。它可以实现异步计算和多进程加速数据处理,并提供了一些回调函数和工具函数来获取执行信息和模拟print语句的效果。可以根据需要创建多个IDL_IDLBridge对象来同时处理多个任务。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xuquan0928

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值