Skip to content

Introduction to WherobotsAI

WherobotsAI makes it easy for you to get the information that you need from your geospatial data without needing to be a geospatial, infrastructure, or modeling expert.

What does WherobotsAI let me do today?

WherobotsAI enables users to quickly process and analyze raster and vector geospatial data, regardless of that data’s size.

WherobotsAI offers a suite of powerful tools:

  • WherobotsAI Raster Inference - Use Computer Vision to gather insights from raster data at planetary scale.
  • WherobotsAI GeoStats - Leverage distributed Machine Learning clustering algorithms to quickly detect hot spots, areas of high activity versus low activity, and local outliers.
  • WherobotsAI Map Matching - Leverage distributed Machine Learning systems to match coordinates to maps at scale.

By leveraging Computer Vision, Machine Learning, and Statistical algorithms, WherobotsAI can unlock the full potential of your geospatial data.

Use Cases

Each WherobotsAI tool tackles specific geospatial challenges at scale.

WherobotsAI Raster Inference

Extract actionable insights from vast and complex aerial imagery

  • Land Use Classification: Continuously analyze large-scale overhead imagery to gain a deep understanding of land utilization patterns.
  • Infrastructure Detection: Accurately pinpoint and identify infrastructure elements like buildings, solar panels, and offshore turbines within satellite imagery.
  • Deforestation Monitoring: Effectively track and measure the rate and extent of deforestation activities.

WherobotsAI GeoStats

Uncover hidden patterns and anomalies within your vector data at scale

  • Pedestrian Activity Hot spots: Identify areas with high foot traffic within neighborhoods to inform urban planning and business decisions.
  • Public Health Outbreak Detection: Pinpoint clusters of disease outbreaks for timely public health interventions.
  • Strategic Retail Placement: Analyze competitor locations and customer demographics to optimize store placement for maximum reach and impact.

WherobotsAI Map Matching

Precisely align location data with digital maps

  • Traffic Pattern Analysis: Gain valuable insights into traffic flow and congestion by accurately matching GPS or other location-tracking coordinates to digital maps.
  • Optimized Routing: Leverage up-to-date road infrastructure information to determine the most efficient routes between source and destination points.

How it works

WherobotsAI Raster Inference

WherobotsAI Raster Inference uses machine learning to automate the analysis of satellite and aerial imagery. This simplifies tasks like object detection, classification, and semantic segmentation, making geospatial insights more accessible.

Computer Vision Model Inference at Planetary Scale

WherobotsAI Raster Inference lets you derive insights from massive amounts of satellite imagery data.

At a high level, you can analyze raster data in a few steps with WherobotsAI Raster Inference:

  1. Create the WherobotsDB Context.
  2. Bring your own computer vision model or use one of our hosted models. WherobotsAI Raster Inference lets you use the following hosted models:
    • Classification - model_id = 'landcover-eurosat-sentinel2'
    • Object detection - model_id = 'marine-satlas-sentinel2'
    • Segmentation - model_id = 'solar-satlas-sentinel2'
  3. Load your dataset.
  4. Run model inference on your raster dataset.
  5. Visualize your results.
Raster inference example

The following code snippet previews how to run raster inference using the Wherobots-hosted Classification model.

# Example: Running Raster Inference with a Wherobots hosted model for classifying satellite imagery

## Create a WherobotsDB Context
sedona = SedonaContext.create(config)

## Choose a Computer Vision model
model_id = 'landcover-eurosat-sentinel2'

## Choose a dataset
tif_folder_path = 's3a://wherobots-examples/data/eurosat_small'

## Run raster inference
predictions = create_single_label_classification_udfs(model_id, tif_folder_path)

## Visualize results
SedonaUtils.display_image(htmlDF.orderBy(rand()).limit(3))

Get Started

WherobotsAI GeoStats

Machine Learning Toolkit for Vector Data Analysis

At a high level, you can analyze vector data in a few steps with WherobotsAI GeoStats:

  1. Create the WherobotsDB Context.
  2. Load your vector dataset.
  3. From Geostats’ distributed Machine Learning Toolkit, choose an algorithm that works best for your research. Geostats offers the following algorithms:
    • DBSCAN
    • Getis-Ord Gi*
    • Local Outlier Factor
  4. Cluster your data.
  5. Explore your results.
GeoStats Example

The following code snippet previews how to analyze vector data with the DBSCAN algorithm.

# Example, running DBSCAN on data to locate high and low density regions

## Create a WherobotsDB Context
sedona = SedonaContext.create(config)

## Choose your vector dataset
centers = [[1, 1], [-1, -1], [1, -1]]
X, labels_true = make_blobs(
    n_samples=750, centers=centers, cluster_std=0.4, random_state=0
)

## Choose a Machine Learning clustering algorithm and cluster your data
clusters_df = dbscan(df, 0.3, 10, include_outliers=True)

## Explore your results
gdf.plot(
    figsize=(10, 8),
    column="cluster",
    markersize=gdf['isCore'],
    edgecolor='lightgray',
)

Get Started

WherobotsAI Map Matching

Offline distributed map matching

At a high level, you can match location tracking data to the physical world in a few steps with WherobotsAI Map Matching:

  1. Create the WherobotsDB Context.
  2. Load your location tracking data.
  3. Load your map data.
  4. Run Map Matching to map your location tracking data.
  5. Explore your results.
Map Matching Example

The following code snippet previews how to use Map Matching with GPS coordinates.

# Example: Running Map Matching on Open Street Map data with GPS coordinates

## Create a WherobotsDB Context
sedona = SedonaContext.create(config)

## Load your location tracking data
dfEdge = matcher.load_osm("data/osm.xml", "[car]")

## Run Map Matching
result_df = matcher.match(df_edge, df_paths, "geometry", "geometry")

## Explore your results
SedonaKepler.create_map()

Get Started

Get Started

The easiest way to get started with WherobotsAI is to run an example notebook.

  1. Create a Wherobots Organization. Different organization tiers have different capabilities. The following table details which notebooks can be run in each type of Organization. For a detailed comparison of Wherobots Organization Editions, see Wherobots Pricing.

    To create or join a Wherobots Organization, see Create an Account in the Wherobots Documentation.

    Notebook Community Edition Professional Edition Enterprise Edition
    Raster Inference - Classification ❌1 βœ… βœ…
    Raster Inference - Segmentation ❌1 βœ… βœ…
    Raster Inference - Object Detection ❌1 βœ… βœ…
    GeoStats - DBSCAN βœ… βœ… βœ…
    GeoStats - LOF βœ… βœ… βœ…
    GeoStats - Gi* βœ… βœ… βœ…
    Map Matching βœ… βœ… βœ…

    Map Matching in Community Edition Organizations

    Using Map Matching in a Community Edition Organization may cause latency issues. For more information on the different plans available, see Wherobots Pricing.

    Raster Inference requires submitting a compute request

    WherobotsAI Raster Inference requires a GPU-Optimized runtime.

    To access this runtime category, do the following:

    1. Sign up for a paid Wherobots Organization Edition (Professional or Enterprise).
    2. Submit a Compute Request for a GPU-Optimized runtime.
  2. Run a notebook. Sign in to your Wherobots Organization, launch a runtime, and navigate to a notebook.

    For more information on starting and using notebooks, see Notebook Instance management and Jupyter Instance Management in the Wherobots Documentation.

    Notebook Notebook Path
    Raster Inference - Classification1 examples/python/wherobots-ai/gpu/classification.ipynb
    Raster Inference - Segmentation1 examples/python/wherobots-ai/gpu/segmentation.ipynb
    Raster Inference - Object Detection1 examples/python/wherobots-ai/gpu/object_detection.ipynb
    Raster Inference - Bring your own model1 examples/python/wherobots-ai/gpu/bring-your-own-model.ipynb
    GeoStats - DBSCAN examples/python/wherobots-ai/dbscan_example.ipynb
    GeoStats - LOF examples/python/wherobots-ai/lof_example.ipynb
    GeoStats - Gi* examples/python/wherobots-ai/glocal_example.ipynb
    Map Matching examples/python/wherobots-ai/mapmatching_example.ipynb

  1. WherobotsAI Raster Inference requires a GPU-Optimized runtime. You can access a GPU runtime by signing up for a paid Wherobots Organization (Professional or Enterprise) and submitting a Compute Request for a GPU-Optimized runtime.