idl镶嵌

前提是你 提交于 2020-01-23 01:23:15

;镶嵌
;-----------------------

;-----------------------
;选择镶嵌数据文件(多选),点击OK,然后选择输出路径,IDL将自动进行无缝镶嵌,功能如下有:
;使用自动生成接边线;
;羽化距离为20(接边线两侧各10个像元);
;忽略值设置为0;
;重采样算法为双线性内插(三次卷积法);
;保存的接边线为“文件名+_Connectionline.shp”
pro Mosaic_Batch
;严格编译规则
compile_opt idl2
;启动ENVI
e=ENVI(/HEADLESS)
file=Dialog_pickfile(/MULTIPLE,title=‘选择镶嵌文件!!!’)
print,file
scenes=!NULL
;将每一个RASTER存放到SCENES中
for i=0,N_ELEMENTS(file)-1 do begin
raster=e.OpenRaster(file[i])
scenes=[scenes,raster]
endfor
;创建TASKMosaicRater对象
mosaicRaster=ENVIMosaicRaster(scenes,$
background=0,$
color_matching_method = ‘histogram matching’,$
color_matching_stats = ‘overlapping area’,$
feathering_distance = 20,$
feathering_method = ‘seamline’,$
resampling = ‘Cubic Convolution’,$
seamline_method = ‘geometry’)
;设置输出路径
outfile=ENVI_pickfile(title=‘选择输出路径’,/output)
if file_test (outfile) then file_delete,outfile
;输出镶嵌结果
mosaicRaster.export,outfile,‘ENVI’
;保存接边线
mosaicRaster.saveseampolygons,outfile+‘connectionline.shp’
e.close
end

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!