E-learning Python for Ocean Mapping (ePOM) project.
Complementary slides to the Raster and Vector Data Formats module (part of the Introduction to Ocean Data Science training).
More details at https://www.hydroffice.org/epom
ePOM - Intro to Ocean Data Science - Raster and Vector Data Formats
1. RASTER AND VECTOR DATA FORMATS
GIUSEPPE MASETTI
ESCI 872 – APPLIED TOOLS FOR OCEAN MAPPING – INTRODUCTION TO OCEAN DATA SCIENCE
Durham, NH – September 10, 2019
V1
2. TWO WAYS TO REPRESENT THE WORLD
• Field Approach
• Continuous data without well-defined boundaries
• Data smoothly transition from one value to another
• Discrete-objects Approach
• Objects at fixed locations with distinct boundaries
• Data usually represented in vector format:
POINT LINE POLYGON
5. RASTER GRID → DESCRIPTIVE ELEMENTS
Number of Columns
NumberofRows
(𝑥0, 𝑦0)
Cell Size
Average cell value
No-Data Value
Value at the cell center
Value at a corner
What each value represents?
10. GEOSPATIAL DATA FORMATS
RASTER VECTOR
BATHYMETRIC ATTRIBUTED GRID
ARC/INFO ASCII GRID
GEOTIFF
HDF5
GEOPACKAGE
GEOJSON
GML
IHO S57
KML
GPSBABEL
ARC/INFO BINARY GRID
CAD
ECW
ENVI
ORACLE SPATIAL GEORASTER
GMT COMPATIBLE NETCDF
GRASS RASTER
MBTILES
GEOSPATIAL PDF
RASTERLITE
XYZ
USGS ASCII DEM
MRSID
DWG
MICROSTATION DGN
ESRI FILEGDB
GPX
JML
GEORSS
GTM ASCII VECTORSGRASS VECTOR FORMAT
NETCDF
ESRI PERSONAL GEODATABASE
SPATIALITE
OSM ORACLE SPATIAL
MAPINFO TAB AND MIF/MID
SHAPEFILE
11. THE GEOSPATIAL DATA ABSTRACTION LIBRARY
• A translator library for raster and vector geospatial data formats
• 214+ raster formats*
• 80+ vector formats* (e.g., GeoJSON, GeoPackage, GML, IHO S57, KML, Shapefile)
• “It presents a single raster abstract data model and single vector
abstract data model to the calling application for all supported formats”
(GDAL documentation, 2019)
• C++ library with Python binding
* Values retrieved from GDAL v.2.4.1 on ePOM server.
12. GDAL AND NUMPY
Open
GDAL Dataset
Get
Raster Band(s)
ReadAsArray()
Convert raster band(s)
to a NumPy array
Process array
using NumPy
functionalities
WriteAsArray()
Convert a NumPy array
to GDAL raster bands
Write
GDAL Dataset
13. GDAL → COMMAND LINE UTILITIES
• Raster programs
• gdalinfo → Lists information about a raster dataset
• gdal_translate → Converts raster data between different formats
• gdalwarp → Image reprojection and mosaicking utility
• gdal_contour → Builds vector contour lines from a raster elevation model
• gdaldem → Tools to analyze and shade DEMs
• gdal_rasterize → Burns vector geometries into a raster
• gdal_grid → Creates regular grid from the scattered data
• …
• Vector programs
• ogrinfo → Lists information about an OGR-supported data source
• ogr2ogr → Converts simple features data between file formats
• ogrmerge → Merge several vector datasets into a single one
• … (source: gdal.org)