Maritime Vertical

Use Case

Detect and identify vessels

Fuse satellite imagery and ship detection algorithms with AIS data to accurately detect, identify, and gather information on vessels in a specific area.


Vessel detection and identification with UP42

Monitoring maritime activity is of great interest for several reasons, from optimizing coastline support to monitoring and tackling suspicious activity. Advances in satellite imagery resolution, accessibility of AIS data streams, and machine learning enable vessel detection and identification to be fully automated.


High-resolution satellite imagery

Access a vast archive of SPOT 6/7 imagery with a 1.5m resolution or commission the SPOT 6/7 constellation to take images of your AOI for a given period.

Ship detection

Process your satellite imagery with machine-learning algorithms that accurately identify vessels in your area of interest.

Ship identification with AIS data

Fuse AIS data to your ship identification results to provide AIS information, such as vessel name, cargo, and destination. Identify ships without AIS data to detect potential dark vessels.



Benefits for you

  • Access satellite imagery, processing algorithms, and AIS data all in one platform.
  • Use out-of-the-box ship detection and identification algorithms, avoiding excessive customization.
  • Keep costs down through our scalable volume-based pricing model for many data sources.
  • Automate your analysis and easily integrate the outputs in external tools via API.

Benefits for your customers

  • Monitor large areas of the ocean and coastline at a relatively low cost.
  • With all the analysis in a single analytics workflow, there's no need for data consolidation or manual interpretation.
  • Receive the analysis results in your own tools or set up alerts for anomalies, such as dark vessels.

Maritime surveillance for:



Detect and identify vessels in strategic areas of interest, augmenting ships' detection with crucial information from AIS data.



Understand maritime transportation globally through the detection and identification of vessels along global shipping lines.

The technical details

How can you use UP42 to build vessel detection solutions?

High-resolution satellite imagery

Access SPOT satellite imagery

Whether you want to monitor activity in the past or set up monitoring for the future, UP42 has you covered. We maintain access to a vast library of archive imagery from SPOT while also offering a bespoke tasking service that enables you to commission regular or one-off satellite imagery of your area of interest, guaranteeing a low cloud coverage and consistent incidence angle.


Ship detection algorithms

Automatically detect vessels

Run your satellite imagery through an analytics workflow that identifies vessels from large aircraft carriers to the smaller ships that are more likely to be dark vessels. The ship detection algorithm's output is available as a GeoJSON, which can be easily overlaid and visualized with your archive imagery.


AIS data

Gather vessel information

Our Ship Identification processing block fuses AIS data with the Ship Detection block's outputs to provide information on all vessels transmitting data via AIS. This enables access to a wide range of information on registered vessels. It also allows the detection of dark vessels that are detected by the algorithm but for which no AIS data is being transmitted.


API and Python SDK

Easily download or integrate results

The outputs of your entire analytics workflow are easily accessible via API. The Python SDK enables the comfortable download or integration of the results into external tools. The downloaded outputs can be visualized in GIS tools, such as QGIS. Furthermore, the SDK allows the workflow to be triggered automatically or, for larger areas of interest, for the jobs to be parallelized for extra scalability.

Access our Python SDK

import up42
up42.authenticate(project_id="12345", project_api_key="12345")

workflow = project.create_workflow(name="Vessels", use_existing=True)
input_tasks=['oneatlas-spot-aoiclipped', 'tiling', 'ship-detection', 'ship-identification']
parameter = workflow.construct_parameters(
    geometry=[13.452029, 52.496316, 13.459797, 52.500888],

job = workflow.run_job(input_parameters=parameter, track_status=True)

Start building with UP42

Ready to get started? Create an account and we’ll give you up to 10,000 free credits towards your first insights.

Get started