如何在Matlab中将Sentinel3A卫星netcdf文件有效转换为geotiff图像?

时间:2019-06-13 15:58:43

标签: matlab latitude-longitude projection arcmap geotiff

我在线获得了Sentinel 3A NetCDF文件,我想将它们转换为经纬度较长的geotiff。

当在Matlab中读取NetCDF文件时,我意识到我的辐射带NetCDF文件没有纬度/经度变量,而是行,列和大小。还有另一个免费的单独文件(tie_geo_coordinates.nc),其变量为lat / long,但是经度为负,纬度为正,应该反过来。通过在tie_geo_coordinates.nc中找到每个值的最大值/最小值,可以在下面的代码中获得经度/纬度值。

file = dir('Oa14_radiance.nc') ; 
N = length(file) ;
ncfile = file.name ;
  A = ncread(ncfile,'Oa14_radiance') ;
  % Write  into geotiff
  B = imrotate(A,90);
  R = georasterref('RasterSize',size(B),...
  'LongitudeLimits',[60.4556,73.8768],'LatitudeLimits', 
    [-67.5003,-29.9244]);
  tiffile = strcat(ncfile,'.tif') ;
  geotiffwrite(tiffile,B,R);

当我尝试以下代码时,在Arc中打开时图像会失真,并且纬度/经度完全错误且不成比例。有人有类似的问题吗?

0 个答案:

没有答案