首先是处理Himawari8数据的一个函数,当然了只处理可见光与短波红外波段:
;; ; 宿鑫(XXIN,www.ixxin.cn) ; 2017 ; <a href="https://www.ixxin.cn/tag/himawari8/" title="查看更多关于Himawari8的文章" target="_blank">Himawari8</a> NC 转换为 ENVI格式 ; 参数: ; NCFile:Himawari8 NC文件 ; shpfile : 裁剪矢量 ; save_dir : 保存目录 ; GPL开源协议(https://opensource.org/licenses/GPL-3.0): ;;<H8_NC2ENVI> Copyright (C) <2018> <suxin> ;;This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. ;;This is free software, and you are welcome to redistribute it ;;under certain conditions; type `show c' for details. ;; Pro H8_NC2ENVI,NCFile = NCFile,shpfile = shpfile,save_dir = save_dir COMPILE_OPT IDL2 e = envi(/headless) ;envi,/RESTORE_BASE_SAVE_FILES ;envi_batch_init restore,filepath('RasterSubsetViaShapefile.sav',root_dir = file_dirname(routine_filepath('H8_NC2ENVI'))) dir = file_dirname(NCFILE)+'\' name = file_basename(NCFILE,'.nc') save_dir = save_dir+'\' envi_file = save_dir+name+'_ENVI_all.dat' latfile = save_dir+name+'_ENVI.dat' openw,lun,envi_file,/GET_LUN names1 = ['/SAA','/SAZ','/SOA','/SOZ'] for i = 0,3 do begin tmp_data = H5_GETDATA(NCFile, names1[i])*0.01 writeu,lun,tmp_data dim = tmp_data.dim tmp_data = 0 endfor names2 = ['/albedo_01','/albedo_02','/albedo_03','/albedo_04','/albedo_05','/albedo_06'] for i = 0,5 do begin tmp_data = H5_GETDATA(NCFile, names2[i])*0.0001 writeu,lun,tmp_data tmp_data = 0 endfor free_lun,lun ns = dim[0] nl = dim[1] nb = 10 bnames = [names1,names2] mc = [0.0,0.0,80.0,60.0] ps = [0.05,0.05] map_info = ENVI_MAP_INFO_CREATE(/GEOGRAPHIC,mc = mc,ps = ps,DATUM='WGS-84') ENVI_SETUP_HEAD,fname = envi_file,ns = ns,nl = nl,nb = nb,DATA_TYPE=4,INTERLEAVE=0,$ map_info = map_info,BNAMES=BNAMES,/WRITE envi_open_file,envi_file,r_fid = fid if ~N_ELEMENTS(shpfile) then begin print,'H8NC2ENVI IS OK' return endif RasterSubsetViaShapefile,fid,shpfile = shpfile,r_fid = r_fid,outFile = latfile envi_file_mng,id = fid,/REMOVE,/DELETE ENVI_FILE_MNG,id = r_fid,/REMOVE ;ENVI_BATCH_EXIT print,'Subset,OK' end
然后是调用这个函数进行批处理:
;; ; 宿鑫 (suxin,www.ixxin.cn) ; 2017 ; 批处理 ; ; GPL开源协议(https://opensource.org/licenses/GPL-3.0): ;;<h8_nc2envi_Batch> Copyright (C) <2018> <suxin> ;;This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. ;;This is free software, and you are welcome to redistribute it ;;under certain conditions; type `show c' for details. ;; Pro h8_nc2envi_Batch COMPILE_OPT IDL2 dir = 'I:\Rs_data\FY4\Data\Himawari8' save_dir = 'I:\Rs_data\FY4\Data\Himawari8' shpfile = 'I:\H8\SHP\zhanghan\china_wgs84.shp' ;dir = ENVI_PICKFILE(title = '请选择Himawari8文件夹',/DIRECTORY) ;shpfile = ENVI_PICKFILE(title = '请选择shp文件') ;save_dir = ENVI_PICKFILE(title = '请选择输出文件夹',/DIRECTORY) file_mkdir,save_dir files = file_search(dir,'*.nc',count = count) print,count for i = 0, count-1 do begin H8_NC2ENVI,NCFile = files[i],shpfile = shpfile,save_dir = save_dir ;H8_NC2ENVI,NCFile = files[i],save_dir = save_dir endfor end
处理结果图(中国区域)
重要
支持博主的点击一下网站头部与底部的广告哦,扫一下支付宝红包。

如有问题,请发邮件到:s_xxin@qq.com