gitmyhub

gdal

C++ ★ 6.0k updated 2d ago

GDAL is an open source MIT licensed translator library for raster and vector geospatial data formats.

GDAL is an open-source library that reads and writes dozens of geospatial file formats, satellite images, elevation maps, shapefiles, and more, giving any app a single interface to work with location data.

C++GeoTIFFShapefileDockerCMakesetup: hardcomplexity 4/5

GDAL, which stands for Geospatial Data Abstraction Library, is an open-source software library for reading and writing geospatial data. Geospatial data is any information that is tied to a location on Earth, such as satellite imagery, elevation maps, road networks, or city boundary polygons. GDAL handles two broad categories of this data: raster formats (grid-based data like images and elevation grids) and vector formats (geometric shapes like points, lines, and polygons).

The library acts as a translator. There are dozens of different file formats used across the geospatial industry, from common ones like GeoTIFF and Shapefile to specialized ones used by government agencies, scientific instruments, and commercial mapping software. GDAL provides a single consistent programming interface so that software built on top of it can read and write many of these formats without needing separate code for each one. It is written in C++ and is released under the MIT license.

GDAL is widely used as foundational infrastructure in geographic information systems (GIS) software. Many popular mapping and spatial analysis tools depend on it under the hood. The project is fiscally sponsored by NumFOCUS, a non-profit organization that supports open-source scientific computing projects, and accepts tax-deductible donations through them.

The GitHub repository README is brief and delegates all detailed documentation to the main project website at gdal.org. Build instructions are in a separate file called BUILDING.md, and contribution guidelines are in CONTRIBUTING.md. Official Docker images are available for running GDAL in containers. The project runs on Linux, macOS, Windows, and Android.

Where it fits