Introduction
很多Geotiff文件本身的众多Tag没有包含对于Nodata的设定,这就导致日后的处理过程中不得不针对逐个文件再次定义Nodata,若将Geotiff文件转换为Arc/Grid文件,得到的输出文件是不存在NODATA_value这一设置的。
其实,Geotiff文件加上表示Nodata的Tag也很简单,利用GDAL的gdal_translate命令,演示代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | % Created by LI Xu % Version 1.0 % June 15, 2016 % Description: % Add Nodata Tag to TIFF files % If you have any question about this code, % please do not hesitate to contact me via E-mail: % jeremy456@163.com % Blog: % http://blog.sciencenet.cn/u/lixujeremy % http://lixuworld.blogspot.com/ clear; clc; % Source Directory SouDir='input'; % Destination Directory DesDir='output'; % All Input Files files=dir(fullfile(SouDir, '*.tif')); % Nodata Value nodata=-99; % Loop for ii=1:length(files) filename=files(ii).name; filepath=fullfile(SouDir, filename); otpath=fullfile(DesDir, filename); % GDAL Command strcmd='gdal_translate -of GTiff -a_nodata '; strcmd=[strcmd, num2str(nodata), ' ', filepath, ' ', otpath]; system(strcmd); disp([num2str(ii), ': ', filename]); end disp('****************************************'); |
输出结果前后对比如Fig. 1,经上述代码加上指示Nodata的Tag之后就出现了NODATA_value这一配置,而且新输出文件在ArcMap中打开不需要再次配置就可以直接剔除背景区域,见Fig. 2。
Fig. 1
Fig. 2
References
[1] gdal_translate, GDAL.
No comments:
Post a Comment