笔者最近需要将大量.raw后缀的多光谱图像转换为tif格式,然后再利用matlab对tif格式的图片进行处理。
然而,利用ENVI将.raw图片读入后,只能一张一张地将其另存为.tif格式。
笔者考虑在ENVI+IDL环境下用IDL语言实现批量转换图片格式,然而在网上没有搜到直接能用的代码,通过查阅ENVIRaster::Export方法的Example(https://www.harrisgeospatial.com/docs/ENVIRaster__Export.html),结合for循环,实现了批量将raw图片转换为tif图片。
IDL代码如下:
; 2017-08-21 00:00:40
; author: xiaohu
PRO ENVIRaster_Study
e = ENVI() ; Launch the application
for i = 2158, 2355 do begin ; 利用for循环实现批量转换
filepath_input = 'E:\input images\prefix_'+strcompress(string(i), /remove)+