How can I set the NoData value using Geotiffwrite
40 次查看(过去 30 天)
显示 更早的评论
I have MATLAB matrices that contain NaN values. These are raster data that contain NaN values (the NaN values are an ocean mask). I use geotiffwrite to write them to .tif files, but when I load the .tif files into ArcMap to create a map, it seems that the NaN values have been replaced with -Inf and +Inf (which ArcMap displays as something like -1.38e-38 and 1.38e38). Arc has tools for setting NoData, but they are in the Spatial Analyst toolbox that I do not have authorized.
In general, it is not clear from the documentation how geotiffwrite handles NaN values. There should be a tag in the GeoKeyDirectory to set the value of NoData, but there doesn't appear to be one.
How can I set the NoData value in the R spatial referencing object (or otherwise) so that when I export a .tif file from MATLAB using geotiffwrite, any and all other spatial software will recognize the NoData value (e.g. R, Arc, QGis, GRass, etc).
1 个评论
Qian
2024-3-3
I made it using GDAL, following the tutorial: https://lixuworld.blogspot.com/2016/06/matlabgdal-add-nodata-tag-to.html
回答(3 个)
Chad Greene
2015-10-13
编辑:Chad Greene
2015-10-13
For most of the GeoTIFFs I've used, NaNs have been set to the value -32767. If you're saving matrix Z that has NaN values in it, try
Z(isnan(Z)) = -32767;
before saving as a GeoTIFF. I'm not sure, but Arc may automatically interpret this correctly.
Maddie Harasyn
2017-11-27
Hey!
I know this question was asked two years ago, however I thought I would provide an update for others who may be in the same situation.
Arc uses the value -9999 for NaN values in rasters, so you could use the same formula as Chad suggested above, just replace the value. I found that in certain circumstances, Arc doesn't recognize this as the NaN value. To fix this, before adding the GeoTiff as a layer in your map, right-click the layer in the Catalog, click properties, and then look for 'NoData Value' under 'Raster Information'. Click the 'Edit...' button, and then change the NoData Value to -9999.
No tool use required! Hopefully this can help out others processing Arc rasters in MATLAB.
0 个评论
Zhou Zhiling
2024-10-5
Supplementary from 2024, we can set the value -9999 (or any other value) to Nodata using the raster properties tool in the gis toolbox. So we can set the NAN value to -9999 (or any other value) when exporting from matlab.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!