zoukankan      html  css  js  c++  java
  • IDL遥感相关

    http://hdfeos.net/software.php#HDFExplorer   MODIS相关工具
    http://liang0816.spaces.live.com/blog/cns!4653C3C95CBC6B53!787.entry
    http://ladsweb.nascom.nasa.gov/data/search.html modis数据下载
    http://bbs.typhoon.gov.cn/read.php?tid=5183&page=1&fpage=1 气象书籍
    http://www.idl.changeip.org/forum/    idl中文社区
    http://blog.csdn.net/fbysss/archive/2008/03/28/2226538.aspx IDL学习笔记(1)--可视化组件编程
    http://rsgisman.bokee.com/diaryIndex.b   专门做这方面开发的blog
    http://hi.baidu.com/qqzwind/blog idl编程
    http://bbs.matwav.com/forumdisplay.php?fid=126 idl研究讨论
    http://micro.ustc.edu.cn/IDL/ idl资源
    http://fermi.jhuapl.edu/s1r/idl/idl.html 约翰·霍普金斯大学应用物理实验室
    http://www.ittvis.com/UserCommunity/UserForums/tabid/58/forumid/27/scope/threads/Default.aspx
    http://nstx.pppl.gov/nstx/Software/Programming/index.html idl实例
    http://bbs.matwav.com/viewthread.php?tid=494071&extra=page%3D11 envi里面的区域统计
    http://liang0816.spaces.live.com/blog/cns!4653C3C95CBC6B53!818.entry 利用矢量数据对影像做多边形裁剪
    http://niuxiaojie.bokee.com/diaryIndex.b 遥感爱好者
    http://niuxiaojie.bokee.com/viewdiary.38308087.html   MODIS各级数据
    http://niuxiaojie.bokee.com/viewdiary.38308075.html MODIS EVI存在的问题
    http://niuxiaojie.bokee.com/viewdiary.38308074.html MODIS植被指数计算过程际产品展示
    https://lpdaac.usgs.gov/lpdaac/products/modis_products_table MODIS产品数据
    http://niuxiaojie.bokee.com/viewdiary.20039040.html   ENVI中利用矢量边界裁剪栅格数据详解
    ftp://e4ftl01u.ecs.nasa.gov/MOLT/   MODIS数据下载
    http://e4eil01u.ecs.nasa.gov:22000/WebAccess/drill;jsessionid=A6B74A6CC0E74CD765B14D8A45F78135?attrib=group&group=MOLT&
    http://e4eil01u.ecs.nasa.gov:22000/WebAccess/drill?attrib=esdt&esdt=MOD13Q1.5&group=MOLT   MODIS13数据下载
    http://westdc.westgis.ac.cn 西部环境与生态监测中心
    http://westdc.westgis.ac.cn/data/download/uuid/1cad1a63-ca8d-431a-b2b2-45d9916d860d 西部环境与生态监测中心NDVI
    http://bbs.matwav.com/viewthread.php?tid=31837
    http://www.gumley.com/PIP/Free_Software.html IDL Software



    IDL官方网站代码库
    https://www.ittvis.com/UserCommunity/CodeLibrary.aspx
    IDL开发者论坛
    http://objectmix.com/idl-pvwave/
    the Fisheries Acoustics Research Lab IDL Web
    http://www.acoustics.washington.edu/~towler/IDLviz.html
    IDL书籍、源码下载网站,好久没更新了。
    http://www.kilvarock.com/
    具有9年IDL编程经历的个人网站
    http://michaelgalloy.com/
    斯坦福大学上的一个个人网站
    http://imac-252a.stanford.edu/
    约翰霍普金斯大学做应用物理的,有不少实用的算法
    http://fermi.jhuapl.edu/s1r/idl/s1rlib/local_idl.html
    NASA上的IDL资源
    http://idlastro.gsfc.nasa.gov/homepage.html
    Coyote’s Guide to IDL Programming
    http://www.dfanning.com
    IDL Emacs Mode (IDLWAVE)
    http://www.idlwave.org/
    Curve Fitting and Mathematics
    http://cow.physics.wisc.edu/~craigm/idl/idl.html
    JHUAPL IDL Library
    http://fermi.jhuapl.edu/s1r/idl/s1rlib/local_idl.html
    http://groups.google.com/group/comp.lang.idl-pvwave/topics
    http://www.acoustics.washington.edu/~towler/
    http://www.barnett.id.au/idl/



    Varname=EV_250_RefSB
    file=dialog_pickfile(default_extension='.hdf',filter='*.hdf'
    hdfid=hdf_sd_start(file)
    index=hdf_sd_nametoindex(hdfid,varname)
    varid=hdf_sd_select(hdfid,index)
    hdf_sd_getdata,varid,data,_extra=extra_kewords
    hdf_sd_endaccess,varid



    [原]封装了envi函数的IDL发布程序的执行方法 以及注意事项
    2008-04-25 00:03

    -----很老的东西--在这里记录一下

    大家都知道IDL程序发布出来或打包是可以直接运行的,区别只是无license虚拟机模式还是有license的runtime模式。

    但是如果IDL代码里使用了envi的函数,这时候发布出来的sav文件(或exe、idlrt啥的)就不能直接运行。

    运行后就会弹出一个丑陋的envi界面。

    解决办法1:

    不能运行是因为使用了envi的函数后,需要用envi的方式去运行。(假如的程序叫Protest)

    1)先建一个文本文件,命名为protes.run,里面写上程序的名字protest

    2)打开idl编辑器把打包程序目录(包含sav文件的目录)修改成Idl工作目录或者是添加到IDL搜索路径

    3)建立一个快捷方式。在快捷方式的属性中 目标 加上一下命令

    idlde路径 -minimized -noconfirmexit -nosplash @ "run文件路径"

    例如:

    D:Programenvi43IDL63inin.x86idlde.exe -minimized -noconfirmexit -nosplash @"D:protestprotest.run"

    最简单的方法:直接拷贝envi的快捷方式,把最后envi的run的文件路径改成你的run文件路径就行

    4)直接双击快捷方式就可以直接运行你的程序。

    ----------------------------------------------------

    注意:如果使用idl6.4/envi4.4 运行程序可能会遇到无法初始化envi的问题 ,提示

    ENVI_batch_init 找不到或者没定义。

    那是因为编辑器本身找到到envi,把IDL根目录加到idl的搜索路径下就可以了



    ;---------------------------------------------

    其实用了ENVI函数也是可以绿色发布的,运行连envi都不用装。涉及版权问题,就不在这里透露了--请支持正版哦







    【教程】IDL一些界面操作
    1、使启动界面居中
    PRO Mainfrm,XSIZE=xsize,YSIZE=ysize
    ;   使窗口界面居中
        ScreenSize=get_screen_size()
        xoffset=(ScreenSize[0]-xsize)/2
        yoffset=(ScreenSize[1]-ysize)/2
    tlb=Widget_Base(column=1,XOFFSET=xoffset,YOFFSET=yoffset,XSIZE=xsize,
    YSIZE=ysize, /TLB_SIZE_EVENTS ,TITLE='ECVS',MBAR=mbar)
    END

    2、设置子菜单
    MenuFile = Widget_Button(mbar, VALUE='文件(&F) ')
    MenuNew = Widget_Button(MenuFile, VALUE='新建',Event_Pro='',/menu)
    MenuNewBlock = Widget_Button(MenuNew, VALUE='新建测区...')

    3、按钮式下拉菜单
    CW_PDMENU

    4、改变菜单Value及其状态
    pro On_Stretch,event
    Widget_Control, event.id, Get_Value=buttonValue

    IF buttonValue EQ '拉伸图像' THEN BEGIN
    setting = 1
    hlvalue = '原始图像'
    ENDIF ELSE BEGIN
    setting = 0
    hlvalue = '拉伸图像'
    ENDELSE
    Widget_Control, event.id, Set_Value=hlvalue     
    End

    只能打开程序的一个进度
    If (XRegistered('MainTest', /NoShow)) then Begin
        v = Dialog_Message('此程序已经运行。')
        return
    EndIf

    闫殿武QQ:173819397  


    将idl程序编译成可执行文件

    1. 建立一个工程项目(PRJ)文件,加载其他的所需要的过程,主过程要和工程同名字。

    2. 在Project菜单下打开Options,在ProjectType栏目选中LicensedSave文件,这样编译的程序可以不要License,然后最好Build一下你的程

    序,以防出错。

    3. 在选择Project下面的Export,选择一个空的文件夹,这里取名Setup,注意需要选择你用到的一些库文件以及字体,为图,有时还要添加你

    自己的一些数据之类的。然后输出。

    4. 到你输出的文件夹Setup里面可以发现有一个和你的工程项目同名的SAV文件,还有好几个文件夹,包括Bin,lib,resource等等,打开 bin

    ->bin.x86->,就会发现一个和你的工程项目同名的Exe文件,双击就可以运行你的程序了。

    如果要在别的没有安装IDL的机器上运行,就把这个文件夹SetUp全部拷贝到目标机器就行。当然你想要打包也可以,最方便的方法就是做一个

    自解压文件。
    这个方法前提是你的IDL有一个比较好的License哦,不然你有可能没有权限生成Licensed Save File。

    在输出了EXE可执行文件之后我们可以对IDL.pref文件进行编辑来使自己的应用程序有一个个性的图标,在文件最后面添加如下

    IDL_WINRT_ICON:myico.ico

    myico.ico是指你自己的ICO文件,放置到Bin/Bin.x86路径中即可。
    ============================好学的分割线============================

    问了一下培训的美女jj,据说这样的程序还是需要在IDL的环境下运行,ENVI处于后台运行状态,在没有安装IDL的机器上需要安装IDL虚拟机,

    可以在IDL网站免费下载到

    ============================实践出真知的分割线============================

    试了一下,IDL直接编写的程序打包成功了,用到ENVI环境的失败了=.=

    没意思啊没意思



    文章来自http://www.nfiieos.cn/网站,对envi4.0环境下的安装略作修改。
    1, 首先将 modistools.sav (见附件)放到正确的目录下 , 也就是 ENVI 安装目录下的 save_add 目录 ( 可以通过搜索找到 )
    比如 :d:RSIIDL60productsenvi40save_add
    2, 找到安装目录下的 envi.men 文件 , 该文件存放的是 ENVI 软件菜单命令的位置信息 , 新加的模块菜单都可以在这里添加 , 只要稍做编

    辑即可 :

    找到需要将模块加入的菜单目录 , 我们这里将 MODIS 工具模块放在下面这个位置(见图), 在文件中找到该目录位置后 , 将下面东西 , 复

    制在该目录下 , 保存即可 . 结果见图 ,
    2 {MODIS tools}
    3 {Bow-tie correction} {x} {MODISBowCorrection}
    3 {Export GCPs} {x} {EOSgeoToENVIGCP}
    3 {Load Temperature} {x} {MODIS_LOADTEMPERATURE}

    完成了这些工作后 , 只需要重新起动 ENVI 即可 , 然后就可以在 Basic Tools-processing 下面找到这个modistool菜单。


    这是一个求ndvi的代码,虽然大概意思我明白,但是并不是每一句的作用或意义我都明白,请帮帮忙,谢谢!

    function bm_ndvi,b1,b2,check = check
       den = float(b2)+b1
       if (keyword_set(check)) then ptr = where(den eq 0,count)$
       else count = 0
          if(count gt 0) then den[ptr] = 1.0
          result = (float(b2) - b1)/den
          if(count gt 0) then result[ptr] = 0.0
       return, result
    end

    count 是den eq 0的总数,ptr是den 中eq 0 的数在数组den 中的序号,你可以随便用个数组试试。
    第四行表示den中所有大于等于0的数都等于1.0,第六行的if 可以去掉的,
    你要注意在IDL中除法是有条件的,比如整数4/5=0的。
    最后这是个函数而不是过程啊,需要返回一个值的。。
  • 相关阅读:
    C# 文件类的操作---删除
    C#实现Zip压缩解压实例
    UVALIVE 2431 Binary Stirling Numbers
    UVA 10570 meeting with aliens
    UVA 306 Cipher
    UVA 10994 Simple Addition
    UVA 696 How Many Knights
    UVA 10205 Stack 'em Up
    UVA 11125 Arrange Some Marbles
    UVA 10912 Simple Minded Hashing
  • 原文地址:https://www.cnblogs.com/crmhf/p/3823156.html
Copyright © 2011-2022 走看看