SARscape是强大的雷达影像处理软件,其中影像导入、影像裁剪等基本常用功能都可以进行批量处理非常方便。但是其中的同轨道影像镶嵌(Slant Range Mosaicing)功能,一次操作 只能完成一个轨道同一时间段下的影像拼接,当需要批量处理时,多次的点选以及时间的把控就很不方便。
因此,参考SARscape IDL Scripting中的example以及IDL的Help文档,实现哨兵一号的两景影像批量镶嵌。
1.数据准备
- 输入数据应为 sarscape import后的同一极化方式的 _slc_list
- 分别放在两个文件夹
- 两个文件夹内的 数据,时间、轨道号、极化方式、数量应一致
2.实现过程
- 准备.sml文件
在sarscape安装目录中找到,SARscape_default_values_dataset_SENTINEL_TOPSAR.sml
参考为:D:\Program Files\SARMAP SA\SARscape 5.2\auxiliary\description_files - 打开ENVI+IDL
- 新建文件并重命名(建议名称与3中PRO的名称一致)
- 写入代码并按照注释运行
;使用方法
;0.编译本pro文件
;1.控制台初始化路径参数
;the_test_dir1 = 'E:\SecondInsar\3.import\path55_01';
;the_test_dir2 = 'E:\SecondInsar\3.import\path55_02';
;the_output_dir = 'E:\SecondInsar\8.idl';
;注意:SARscape_default_values_dataset_SENTINEL_TOPSAR.sml要放在output_dir路径下
;2.控制台运行
;IDLscript_batch_slantRangeMosaic, the_test_dir1, the_test_dir2, the_output_dir
FUNCTION PATHPARSE,the_Path
path = the_Path
path = STRSPLIT(path,'\',/EXTRACT)
path = path[-1]
path = STRSPLIT(path,'_',/EXTRACT)
orbit = path[1]
date = path[2]
RETURN,[orbit,date]
END
pro IDLscript_batch_slantRangeMosaic, the_test_dir1, the_test_dir2, the_output_dir
compile_opt idl2
; 判断IDL是否成功启动
CATCH, error
if error ne 0 then begin
k = dialog_message(!error_state.msg,/ERROR)
return
endif
; 设置运行路径
if (N_ELEMENTS(the_test_dir1) ne 0</