A client working with Australian bathymetry data needed to transform large, irregular seafloor point datasets into high-resolution georeferenced grids suitable for GIS analysis and mapping. I built and optimized a complete interpolation pipeline that handles multi-gigabyte inputs and produces correctly georeferenced GeoTIFF outputs.
Highlights
- Built a Verde-based interpolation pipeline: block-average decimation (median), 1st-degree polynomial trend removal, and cubic interpolation — replacing the original Spline interpolation which attempted a 769GB memory allocation.
- Implemented spatial masking using distance checks and convex hull bounds to suppress extrapolated artifacts outside the data coverage area.
- Added bounding-box filtering for spatial subsets and optimized data loading (~30% faster) by disabling unnecessary geometry parsing.
- Ensured coordinate reference system (CRS) alignment so output GeoTIFFs integrate correctly with QGIS and other GIS tooling.
- Provided guidance on PyGMT as an alternative interpolation engine for cases requiring GMT-specific algorithms.
Technology
- Python
- Verde (geospatial interpolation)
- GeoPandas
- rasterio
- PyProj
- NumPy
- QGIS (client validation)