采用最大合成法将月数据ndvi合成年数据NDVI,本文以spot的月ndvi为例进行,利用matlab平台,代码如下所示:
-
采用最大合成法将月数据ndvi合成年数据NDVI,本文以spot的月ndvi为例进行,利用matlab平台,代码如下所示: %author yinlichang3064@163.com [a,R]=geotiffread('F:\项目\data\spot_月ndvi\ndvi200001.tif');%先投影信息 info=geotiffinfo('F:\项目\data\spot_月ndvi\ndvi200001.tif'); for i=2000:2015 datasum=zeros(size(a,1)*size(a,2),12); %size(a,1)和size(a,2)分别是进行合成的图像的行列号 for j=1:12 if j<10 data=importdata(strcat('F:\项目\data\spot_月ndvi\ndvi',int2str(i),'0',int2str(j),'.tif')); else data=importdata(strcat('F:\项目\data\spot_月ndvi\ndvi',int2str(i),int2str(j),'.tif')); end data=reshape(data,size(a,1)*size(a,2),1); datasum(:,j)=data; end maxndvi=zeros(size(a,1),size(a,2))+NaN; for n=1:length(datasum) data=datasum(n,:); datamax=max(data); if datamax>-1 maxndvi(n)=datamax; end end filenameet=strcat('F:\项目\data\2000-2015年NDVI\spot_ndvi_',int2str(i),'.tif'); geotiffwrite(filenameet,maxndvi,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag); end
通过上述方式就能够批量输出tif格式的2000-2015年的NDVI最大合成数据了
更多疑问及需求,请联系原作者。