ENVI5.1 与ENVI5.3 ReprojectGLT结果差异

对风云3(FY3)条带亮度温度数据进行几何校正,结果发现相同代码下,ENVI5.1+IDL8.3与 ENVI5.3+IDL8.5运行结果明显不同
 
代码如下:
pro fy3d_geo
  in_path ='D:\_User\test_he5\'
  out_path_rad = 'D:\_User\test_rad\'
  out_path_geo = 'D:\_User\test_geo\'
  file_arr = file_search(in_path, '*.he5')
  fileCount = n_elements(file_arr)
  for i=0, fileCount-1 do begin
    print, 'Processing... ' + file_arr[i]
    file = file_arr[i]
    filename = file_basename(file, '.he5')
    hd_id = h5f_open(file)
    sd_id1 = h5d_open(hd_id,'/Geolocation/Latitude')
    sd_id2 = h5d_open(hd_id,'/Geolocation/Longitude')
    lat = h5d_read(sd_id1)
    lon = h5d_read(sd_id2)
    lat[where(lat eq 65535)] = 90
    lon[where(lon eq 65535)] = -180
    sd_id3 = h5d_open(hd_id,'/Calibration/EARTH_OBSERVE_BT_10_to_89GHz')
    bt = h5d_read(sd_id3)
    bt89V = bt[*,*,8]
    bt89V_rad = bt89V*0.01+327.68
    fileLat = out_path_rad+filename+'_lat.tif'
    fileLon = out_path_rad+filename+'_lon.tif'
    file89V = out_path_rad+filename+'_89V_rad.tif'
    write_tiff, fileLat, lat, /float
    write_tiff, fileLon, lon, /float
    write_tiff, file89V, bt89V_rad, /float
    e = envi(/headless)
    rasterLat = e.openraster(fileLat)
    rasterLon = e.openraster(fileLon)
    raster89V = e.openraster(file89V)
    ; 89V
    file_geo89V = out_path_geo+filename+'_89V_geo'
    Task = envitask('ReprojectGLT')
    Task.INPUT_RASTER = raster89V
    Task.LATITUDE_RASTER = rasterLat
    Task.LONGITUDE_RASTER = rasterLon
    Task.OUTPUT_RASTER_URI = file_geo89V
    Task.execute
    envi_open_file, file_geo89V, R_FID =FID
    envi_file_query, fid, dims=dims, nb=nb, fname=fname, data_type=data_type, interleave=interleave
    out_name = out_path_geo+filename+'_89V_geo.tif'
    envi_output_to_external_format, OUT_NAME = out_name, FID = fid, DIMS=dims, POS = indgen(nb), /TIFF
  endfor
  print, 'finish'
end
ENVI5.3+IDL8.5结果如下
 
ENVI5.1+IDL8.3结果如下
 
ENVI5.1+IDL8.3的ReprojectGLT的结果在质量上明显优于ENVi5.3+IDL8.5
 
 
posted @   lqqgis  阅读(724)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示