sunshine2014331的个人博客分享 http://blog.sciencenet.cn/u/sunshine2014331

博文

【代码】读取由NetCDF转存成的tiff文件

已有 6798 次阅读 2014-8-7 17:59 |系统分类:科研笔记


【代码】读取由NetCDF转存成的tiff文件,求每个像素多个波段的Max,并重写成新的tiff文件

读取由NetCDF转存成的tiff文件(365or366个波段),求每个像素365个波段的Max,并重写成新的tiff文件

pro runnian

  path='F:c2'

 fname=file_search(path,'*.tif',count=fnums)

 for n=0,fnums-1 do begin

 print,fname[n]

 d=read_tiff(fname[n])

 

 name=strmid(fname[n],11,4)

 print,name

 if (name mod 400 eq 0) or (name mod 4 eq 0 and name mod 4 ne 100) then begin

     print, name + "是闰年"

     data=dblarr(240,121,366)

 for i=0,365 do begin

    for j=0,239 do begin

         for k=0,120 do begin

         data[j,k,i]=d[i,j,k]

         endfor

     endfor

 endfor

 help,data

 a=dblarr(366)

 newarr=dblarr(240,121)

 for j=0,239 do begin

     for k=0,120 do begin

        for i=0,365 do begin

        a[i]=data[j,k,i]

        newarr[j,k]=max(a)

        endfor

     endfor

 endfor

write_tiff,'F:a1max'+name+'.tiff',newarr,/double

 

endif else begin

     data=dblarr(240,121,365)

 for i=0,364 do begin

    for j=0,239 do begin

         for k=0,120 do begin

         data[j,k,i]=d[i,j,k]

         endfor

     endfor

 endfor

 help,data

 a=dblarr(365)

 newarr=dblarr(240,121)

 for j=0,239 do begin

     for k=0,120 do begin

        for i=0,364 do begin

        a[i]=data[j,k,i]

        newarr[j,k]=max(a)

        endfor

     endfor

 endfor

 

write_tiff,'F:a1max'+name+'.tiff',newarr,/double

 endelse

 

endfor


print, 'success'

end





https://blog.sciencenet.cn/blog-1300784-817834.html


下一篇:NetCDF(.nc)格式在ArcGIS中的数据预处理
收藏 IP: 60.13.141.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-24 15:26

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部