Skip to main content

Geograypher: Enabling Geospatial Predictions from Individual Drone Images

DOI

This tool is designed for multiview image datasets where multiple photos are taken of the same scene. The goal is to address two related tasks: generating a prediction about one point in the real world using observations of that point from multiple viewpoints and locating where a point in the real world is observed in each image. The intended application is drone surveys for ecology but the tool is designed to be generalizable.

In drone surveys, multiple overlapping images are taken of a region. A common technique to align these images is using photogrammetry software such as the commercially-available Agisoft Metashape or open-source COLMAP. This project only supports Metashape at the moment, but we plan to expand to other software. We use two outputs from photogrammetry, the location and calibration parameters of the cameras and a 3D "mesh" model of the environment. Using techniques from graphics, we can find the correspondences between locations on the mesh and on the image.

One task that this can support is multiview classification. For example, if you have a computer vision model that generates land cover classifications (for example trees, shrubs, grasses, and bare earth) for each pixel in an image, these predictions can be transferred to the mesh. Then, the predictions for each viewpoint can be aggregated using a voting or averaging scheme to come up with a final land cover prediction for that location. The other task is effectively the reverse. If you have the data from the field, for example marking one geospatial region as shrubs and another as grasses, you can determine which portions of each image corresponds to these classes. This information can be used to train a computer vision model, that could be used in the first step.

Basic Installation

Internal Collaborators please navigate here

Create and activate a conda environment:

conda create -n geograypher -c conda-forge python=3.9 -y
conda activate geograypher

Install Geograypher:

pip install geograypher

Note the instructions above are suitable if you only need to use the exisiting functionality of Geograypher and not make changes to the toolkit code or dependencies. If you want to do development work please navigate here for more instructions.

Getting started

There are two main places to look when getting started, the example notebooks and the command line scripts in geograypher/entrypoints. You can start by using the example data and download it to the data folder of this project. The notebooks have paths that point to this example data by default, so once the data is downloaded they can be run without any modifications. The command line tools each provide a help (--help/-h) option that describes the purpose of the tool and the command line options.

Documentation

Documentation of this tool, including how to set it up and examples of how to use it, can be found here.

Metadata

Release files for geograypher 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geograypher 0.4.0
File Size Uploaded
geograypher-0.4.0.tar.gz 121.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for geograypher 0.4.0
File Interpreter ABI Platform
geograypher-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 265.9 kB

Release files / geograypher-0.4.0.tar.gz

Download URL geograypher-0.4.0.tar.gz
Size 121.9 kB
Tags Source
SHA-256 checksum
How to use checksums
0597a6f737a3b0178cd01cf5c81776f00ee3ba5ae609d64909aba323671fa5e2
BLAKE2b-256 checksum
How to use checksums
59db0914a84fff1bbb24a487a69f5183bce791eb1761b2f86160b5d8c3f828ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.13.9 Linux/6.14.0-37-generic

Release files / geograypher-0.4.0-py3-none-any.whl

Download URL geograypher-0.4.0-py3-none-any.whl
Size 144.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
917a28b581a485eca696205610df7f19c42ea0854336d9873eb6a651ec80a451
BLAKE2b-256 checksum
How to use checksums
20d8ddd96d650e988b97b37f78aaf66cca4b113c23d98ea946c43257e5f8dc28
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.13.9 Linux/6.14.0-37-generic

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page