Exporting matlab matrices to ESRI ArcMap
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Sally
le 20 Juin 2011
Commenté : Matthew Cooper
le 13 Oct 2015
I have a large (4499x1459) 2D matrix containing surface ocean current data, and want to create an ArcMap shapefile from the matrix NaN values (i.e. a land mask). I have a code which creates polygon vertices (lat, lon) for each NaN value cell, but this is taking too long to do for such a large matrix. Is there a way I can simply read the matlab matrix into ArcMap as a raster image, so I can then convert it to a vector format there?
I have had no luck with this in searches so far.
Thanks in advance.
0 commentaires
Réponse acceptée
Walter Roberson
le 20 Juin 2011
A thought: bwboundaries(isnan(YourMatrix)) would construct pixel lists; the pixel lists would be the vector coordinates. Not optimized to remove pixels that are in straight lines between pixels, but perhaps that is not needed at this time.
I do not know the performance of bwboundaries(), but it might be worth trying.
Plus de réponses (1)
Rob Comer
le 21 Juin 2011
ArcGIS can read GeoTIFF format. If you have R2011a, perhaps you could write your ocean current grid to a GeoTIFF file using the Mapping Toolbox geotiffwrite function, then import it into ArcGIS. See:
2 commentaires
Matthew Cooper
le 13 Oct 2015
Also, it is not clear from the documentation how geotiffwrite handles NaN values - can you clarify? In my experience, when I use geotiffwrite to write Matlab matrices with NaN values into a .tif file, the NaN values are converted to NoData values such as -1.38E-38, however when I load the .tif's into ArcMap the NoData value is not recognized. Arc has tools for setting NoData, but they are in the Spatial Analyst toolbox that I do not have authorized.
Any idea how to solve that problem?
Voir également
Catégories
En savoir plus sur Map Display dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!