finds.dev← search

// the find

opengeos/geoai

★ 3,111 · Python · MIT · updated Jun 2026

GeoAI: Artificial Intelligence for Geospatial Data

GeoAI is a Python library that wraps PyTorch, SAM, segmentation_models.pytorch, and a handful of geospatial libraries (rasterio, leafmap, torchgeo) behind high-level APIs for satellite/aerial imagery tasks: segmentation, object detection, change detection, land cover classification. It's aimed at geospatial researchers who know GIS but don't want to wire up PyTorch training loops from scratch, and at ML practitioners who don't want to deal with GeoTIFF projections and CRS transforms.

1. Breadth of task coverage is real — SAM integration, DINOv3 fine-tuning, change detection with torchange, super-resolution with ESRGAN, and ONNX export are all present as working notebooks, not placeholders. 2. The QGIS plugin ships subprocess isolation correctly: heavy ML inference runs in a separate managed venv rather than QGIS's Python, which is the right call for avoiding DLL hell on Windows. 3. The example notebook library is large and task-specific (building footprints by continent, wetland mapping, parking detection) — these are the kind of worked examples that save a researcher a week of plumbing. 4. NASA and USGS funding means the project has a real survival runway, not just a grad student's side project.

1. The package is essentially a coordination layer — nearly every interesting operation delegates to samgeo, torchgeo, segmentation_models.pytorch, or leafmap. If any of those break a public API, geoai silently breaks too; there's no abstraction layer that would protect users from upstream churn. 2. The `agent-harness/` directory is a full parallel CLI implementation of the same functionality, which suggests the architecture is not settled — two code paths for the same operations is a maintenance debt that will bite contributors. 3. Installation is painful in practice: the full dependency graph pulls in GDAL, PROJ, rasterio, PyTorch, and the HuggingFace stack simultaneously; conda is the only sane path, and the docs undersell how broken pip installs will be on anything but a clean environment. 4. Test coverage is thin — the test suite in `agent-harness/tests/` has two files and the main `geoai/` package has essentially no unit tests visible in the tree, so regressions in the high-level APIs are caught by users, not CI.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →