1 / 10
文档名称:

IDL开发遥感软件.docx

格式:docx   大小:452KB   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

IDL开发遥感软件.docx

上传人:guoxiachuanyue007 2023/1/30 文件大小:452 KB

下载得到文件列表

IDL开发遥感软件.docx

相关文档

文档介绍

文档介绍:该【IDL开发遥感软件 】是由【guoxiachuanyue007】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【IDL开发遥感软件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。DiscoverWhaVsInYourData
IDL

利用IDL开发遥感软件
董彦卿
遥感软件
遥感有着扫描范围广、获取信息快等特点,进而对遥感软件要求也比较高。遥感软件在处理格式上要具备良好的数据支持,高效的处理速度。而针对业务处理的遥感软件还具备其自身的要求:如数据相对稳定、处理流程基本固定、集成专业算法和具备良好的扩展性等。
开发语言
IDL(InteractiveDataLanguage)交互式数据语言是一门专门针对图形图像处理与可视化的高级语言,它以数组运算为基础,集成了大量的科学运算和分析函数,利用IDL可以轻松的构建遥感图像处理系统。同时利用IDL语言开发的ENVI是一个完整遥感图像处理平台,架构非常灵活,提供一个功能全面的函数库(API),可以满足用户的个性化需求。
软件开发软件开发的通常流程包括调研分析、概要设计、详细设计、编码、软件测试
与验收等几个步骤。以《构造地震遥感热红外图像处理系统》的开发为例,主要介绍该软件开发流程中的调研分析、概要设计、详细设计和编码步骤。
1)调研分析:
中国矿业大学(北京)3S与沉陷工程研究所遥感课题组在矿山和地壳典型岩石加载至破裂过程中热红外成像检测实验的基础上,对典型的实际地质构造活动进行实验模拟,并对震例的热红外异常进行分析,以期获得震前红外辐射异常的时空分布和演化的规律,结合物理-力学的机制分析,建立构造地震遥感预测预报的实验模型,逐步为卫星遥感技术应用于地震预测预报的理论和技术奠定基础。遥感-岩石力学学科向更深的方向发展,在实验定量化分析的基础上向应用方面发展-研究构造地震热红外异常特征与断裂带的关系,必须有一个能满足实际需要的地震遥感热红外异常分析的软件系统。
构造地震震例的热红外异常分析在实际操作时遇到的困难主要有:
异常指标的多样性;由于地震热红外异常指标的不确定性,包含热红外和温度信息的卫星资料基本上都曾经被应用在地震分析上,暂时还没有确定一种有效的卫星数据对地震进行异常的识别提取,故需要在现有的遥感软件功能上方便的添加异常指数计算等算法;
多时相影像分析:对热红外异常,需要对多时相影像进行叠加分析,包括特定阈值颜色表显示、断面温度趋势分析、多时相动画显示等定性和定量方法,即影像的批处理功能要十分完善。
2)概要设计:
基于系统的调研分析,设计系统的功能框架如下图:
从框架图中也可以看出,该系统主要包括影像和辅助数据的输入输出、图像处理和异常分析三大模块。
3)详细设计:该部分对软件进行了详细设计,包括关键技术的技术攻关、接口确定等,主要分下面几个部分。
界面搭建界面搭建是通过界面组件来组合的,IDL有着丰富的界面组件,通过灵
活的组合构建出功能清晰,漂亮整洁的软件操作界面(见图4-2)。
,•创建顶级BASE
tlb=widget_base(/COLUMN,mBar=wTopRowBase,TITle='构造地震遥感热红外异常分析系统(TARA)')
,•主工具菜单下面的子菜单
file_menu=Widget_Button(wTopRowBase,value=^2件')
,•矢量信息菜单
fault_menu=Widget_Button(wTopRowBase,AALUE='矢量信息',UVALUE='fault')
,•图像处理菜单process_menu=Widget_Button(wTopRowBase,AALUE='图像增强')
,•图像显示菜单
show_menu=Widget_Button(wTopRowBase,AALUE='色彩模式',/Checked_Menu)
;差值菜单
diff_menu=Widget_Button(wTopRowBase,AALUE='差值分析')
,•感兴趣区域菜单
roi_menu=Widget_Button(wTopRowBase,UVALUE='roi',VALUE='感兴趣区')
,•动态播放菜单
play_menu=Widget_Button(wTopRowBase,AALUE='动态播放')
打异常分析temp_analysis=Widget_Button(wTopRowBase,uvalue='analysis',value=^i常分析')
;批处理菜单
Bat_Menu=Widget_Button(wTopRowBase,Value=批处理')
,•工具栏上的按钮
iconbase=widget_base(tlb,row=l,/frame)
,•获取当前显示屏幕的分辩率大小,调整程序的主窗口大小
Device,Get_Screen_Size=ScreenSize
,•建立显示base
wDrawBase=widget_base(tlb,/ROW,/FRAME)
,•创立已经打开文件的树形结构
info_base=widget_base(wDrawBase,xsize=200,ysize=ScreenSize[1]*.75,UVALUE='info_base',$uname='info',FRAME=10)
,•创立颜色棒数据和界面
label1=WIDGET_LABEL(info_base,xoffset=10,yoffset=225,VALUE='颜色棒:(°C)')
color_bar_base=
WIDGET_DRAW(info_base,xoffset=8,yoffset=250,xsize=30,ysize=255)
;tlb主窗体的实现
Widget_Control,tlb,/realize
,•关联事件一使程序相应鼠标或键盘的动作
xmanager,'rs_image_process',tlb,/No_Block;,cleanup='rs_image_process_cleanup'
特殊格式数据读取
在对数据支持的地方,主要支持ENVI标准格式和FY2C的黑体亮温数据
AWX文件。
ENVI标准格式的头文件格式:
ENVI
description={CreateNewFileResult[WedApr1809:45:002006]}
samples=843
lines=674
bands=1
headeroffset=0
filetype=ENVIStandard
datatype=4
interleave=bsq
sensortype=AVHRR
byteorder=0
xstart=912
ystart=1159
mapinfo={GeographicLat/Lon,,,,,
-002,-002,WGS-84,units=Degrees}wavelengthunits=Unknown
wavelength={}
程序通过对头文件的打开和信息提取存储相关的文件信息,通过文件信息来读取出数据。
FY-2C的卫星黑体亮度温度产品,格式说明是参考国家卫星气候中心的《风云二号C卫星业务产品使用手册》利用IDL可以轻松的将数据读出。
point_lun,file_lun,20
HeadLine=indgen(3)
readu,file_lun,HeadLine
;HeadLine[0]-数据的头文件长度$
;HeadLine[1]-文件头文件记录数$
;HeadLine[2]-数据的记录数
point_lun,file_lun,58
BeginDate=indgen(5),•依次为年月日时分
EndDate=indgen(5),•依次为年月日时分
LatLong=indgen⑷;依次为左上角纬度经度右下角经度纬度
readu,file_lun,BeginDatereadu,file_lun,EndDate
readu,file_lun,LatLong
特定颜色表显示
IDL中的伪彩色显示可以调用不同的颜色列表来显示,也就是颜色表。每个灰度值为索引号输入到颜色表。根据灰度值在颜色表方案中找到对应的红色、绿色、蓝色值,也就是对应该像素值的特定三色值,对不同的显示方
案我们只需更改系统的颜色表就可以了。
图3-2伪彩色颜色表对照
人口
虹色
话色
0
10
L2
L
20
n
56
2


7?
12S
60
L50
220
219

25-1
22?
142
228
2J0
2J4
,•伪彩色显示
device,DECOMPOSED=0LOADCT,(*pState).display_type
,•修改系统颜色表
ModifyCT,l,'MyColor',MyR,MyG,MyB
(*pState).display_type=l;;自己定义(*pState).background_color='FFFFFF'XL
横断面信息分析在遥感的分析中,提取波段或合成影像上两点之间的横断面的亮度值非常重要。程序中实现了对任意两点之间的断面画出曲线并txt形式存储亮温数据。如果横断面是平行于影像的行或列时,很容易计算出结果,但大多数情况下横断面并不平行于某一行或列,故该功能实现时,考虑用阶梯状像元的斜边代替简单的水平像元距离。
图3-3横断面取值示意图
动画播放对多时相数据的变化,特别是针对温度变化的空间或时间分析,动画提供了直观的效果。动画播放采用IDL的XinterAnimate控件实现,如下图。该控件具备多幅图像任意速度播放、暂停、前进式播放、后退式播放、交替播放和MPEG电影文件输出等功能。设置好颜色方案,把需要播放的数据传给控件然后启动该控件即可,操作简单方便。
nn乍rNrj■田re:
AriLriki]an
图3-4动画播放界面
批处理功能对多时相数据处理时,首先设置好显示颜色、是否加载断层等相关参数,当图像效果基本符合我们的要求时,可以把当前显示文件存贮为标准图像格式。如果以同样的设置方式转换多个数据,打开、设置、显示然后再存贮的方式就很麻烦了。针对该问题,批处理就可以对所有图像进行转换,运行该功能时程序会以相同的参数设置输入,并输出到原目录下与原文件同名的tiff结果文件。
4)编码:
基于详细设计,编码实现则会非常的简单。同时基于IDL方便、灵活的编译器和功能调试工具,不区分大小写的宽松语法要求,使得IDL的系统编码轻松实现。
5)系统特点系统具备下面特点:
数据读取:支持ENVI标准格式和气象卫星FY2C的AWX格式;
批处理:软件具备图像文件的打开和转换的批处理功能;
伪彩色显示:不改变原数据的情况下可以按照多种伪彩色方式显示,并
能根据鼠标位置实时显示数据信息和经纬度信息;
矢量信息:可以在图像上叠加显示政治区域边界和断层数据;
感兴趣区域(ROI):具备ROI选取、裁减和分析等功能;
动态回放:整幅图像和圈选区域图像回放过程中能暂停、前进、后退;
趋势分析:能实现序列图像的ROI变化趋势分析,对待分析的数据有整
体把握;
各种参量的调节功能:动态调整颜色范围的最大最小温度,调节经纬度
网格范围,断层颜色,断层线的粗细,添加震中标识符;
人机交互的友好性:用户界面友好,操作简单易学,操作方便快捷;
系统的可维护性:系统应具有较强的可扩充性、可再用性和兼容性,利
于系统以后新算法的添加验证。
6)系统展示
图3-5系统主界面
|[p磁F範厦》•
Uii
”C2U
工杷潮1宦JK剳』盹HUE1
艾件昌幵呼塚超贋・
切:第:FdA汕
-
9卩:茁:阳二甌
■ism?
TJllMlfthibir
-2]ttC4
?7rML5<h5bii
皿遜
7712£iVkhikli
•IE阳7?
阳曲】曲呛
Jt临1
创腳
-^44^4
mi2Cl!hfa£lidr
-nsstc
knEK^dririi
-I£.1675
卜丁三【釈5凶汕
口™S:
4W1Q
k?12lj-5d35thlf
-14-71©
7|
图3-6断面曲线与对应真值
01W1956
s/t^iage.
M
图3-7断面绘制与变化曲线
图3-8断层数据叠加前后效果
图3-9河流与地名叠加前后效果
3BRAT
图3-11动画播放
#i-£whJmiaJwjg
⑼號年II3QKAT
㈣弼璋I月]1BEAT
图3-10多时相影像RAT指数效果图
4总结实际应用表明软件能较好的发现地震遥感热红外异常和热红外异常指标的定量计算分析。从整个开发过程我们可以看到,基于IDL语言开发遥感图像处理软件有开发速度快、程序代码量少、快速处理及可视化等特点。
参考文献:
耿乃光,崔承禹,邓明德•岩石破裂实验中的遥感观测与遥感岩石力学的开端J].地震学报,1992,14(增)
(NSMC)
3•[M].***出版社,2003
[M].西北工业大学出版社,2006,10
(NSMC)
刘善军,吴立新,李金平,董彦卿,.
,25(228)
LIJinping,WULixin,DONGYanqing,,Bacelora.
WULixin,LIJinping,XUXiudeng,LIUShanjun,,Bacelora..
LIUShanjun,YANGDongping,MABaodong,WULixin,LIJinping,,Bacelora.