Package features:
  • SQL database for storing AIS position reports and vessel metadata

  • Vessel position cleaning and trajectory modeling

  • Utilities for streaming and decoding AIS data in the NMEA binary string format (See Base Station Deployment)

  • Integration with external datasources including depth charts, distances from shore, vessel geometry, etc.

  • Network graph analysis, MMSI deduplication, interpolation, and other processing utilities

  • Data visualization

What is AIS?


Requires Python version 3.8 or newer. Optionally requires SQLite (included in Python) or PostgresQL server (installed separately). The AISDB Python package can be installed using pip. It is recommended to install the package in a virtual Python environment such as venv.

python -m venv env_ais
source ./env_ais/*/activate
pip install aisdb

For information on installing AISDB from source code, see Installing from Source


An introduction to AISDB can be found here: Introduction.

Additional API documentation: API Docs.

Code examples

  1. Parsing raw format messages into a database

  2. Automatically generate SQL database queries

  3. Compute trajectories from database rows

  4. Vessel trajectory cleaning and MMSI deduplication

  5. Compute network graph of vessel movements between polygons

  6. Integrating data from web sources, such as depth charts, shore distance, etc.