SARscape中的SLC配准(SLC coregistration)功能【注意,并不是coregistration功能】,界面如👇。功能界面的样子应该是可以批量配准的,但是一直没有成功,条条大路通罗马,所以决定用idl实现批量配准到同一主影像的功能
。
1.数据准备
- 本次输入数据,是镶嵌后的VV极化影像
- 存放主影像的文件夹(只有1景)
- 存放待配准影像的文件夹(1景或多景)
2.实现过程
- 准备.sml文件
在envi软件中,sarscape/preference中设置好参数,然后保存。
- 打开ENVI+IDL
- 新建文件并重命名(建议名称与2中PRO的名称一致)
- 写入代码并按照注释运行
;函数功能
;批量配准SLC影像到同一主影像
;使用方法
;0.编译本pro文件
;1.命令行初始化路径参数
;the_master_dir = 'E:\SecondInsar\3.import\path55_01';#master影像路径(单景)
;the_slave_dir = 'E:\SecondInsar\3.import\path55_02';#slave影像路径(单景或多景)
;the_output_dir = 'E:\SecondInsar\8.idl';
;the_suffix = 'VV';#影像二进制文件名识别标志
;注意:SARscape_default_values_dataset_SENTINEL_TOPSAR.sml
;可以从envi/preference中保存得到
;名称要设置一致
;要放在output_dir路径下
;2.命令行运行
;IDLscript_batch_SLCcoregistration, the_master_dir, the_slave_dir, the_output_dir, the_suffix
FUNCTION PATHPARSE,the_Path
path = the_Path
path = STRSPLIT(path,'\',/EXTRACT)
path = path[-1]
RETURN,path
END
pro IDLscript_batch_SLCcoregistration, the_master_dir, the_slave_dir, the_output_dir, the_suffix
compile_opt idl2
; 判断IDL是否成功启动
CATCH, error
if error ne 0 then begin
k = dialog_message(!error_state.msg,/ERROR)
return
endif
; 设置运行路径
if (