Utilities for SAR and InSAR processing
Alternatives To Apertools
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Map Matching640612 years ago73September 30, 202026apache-2.0Java
Map Matching based on GraphHopper
Geo16782a month ago34March 04, 202317lgpl-3.0C#
A geospatial library for .NET
3 years ago6agpl-3.0JavaScript
NuPIC demo app for geospatial anomaly detection.
4 months ago6apache-2.0CSS
🌎 Atlas is a set of APIs for looking up information about locations
12 days agomitPython
Utilities for SAR and InSAR processing
Geospatial Storytelling14
6 years ago1mitPython
Visualization of gps tracking data
3 years ago10apache-2.0HTML
Tactical Observation of RF GNSS Interference
4 months agomitC++
Simple, precise, accurate and fast Geographic/Cartesian coordinate transformations via C++ header-only implementation.
6 years agolgpl-2.1C#
A GPS framework for .Net, including device detection, diagnostics, emulators, and a NMEA protocol interpreter
Webcore Presence3
4 years agoJava
Alternatives To Apertools
Select To Compare

Alternative Project Comparisons

Apertools: tools for InSAR (Interferometric Synthetic Aperture Radar)

Other helping tools: sentineleof for downloading Sentinel 1 EOF precise orbit files.

Setup and installation

pip install -e apertools

There is a version on pypi, but it's pretty outdated. I have not tried to keep track of all requirements throughout the entire package, so if you run into ImportErrors, I have probably installed it using mamba into my existing conda environment.

After installing, the aper command line tool is installed, which has multiple sub-commands.

Also installs asfdownload for downloading many files from ASF.

The most used modules are...


Input/Output functions for SAR data. Contains methods to load Sentinel, UAVSAR and DEM files

Main function:

from apertools import sario
# Loads images from ROI_PAC format:
my_slc = sario.load('/file/path/radar.slc')
geocoded_slc = sario.load('/file/path/myslc.geo')
my_int = sario.load('/file/path/interferogram.int')
unwrapped_int = sario.load('/file/path/igram.unw')
my_dem = sario.load('/file/path/elevation.dem')

# Can also just pass through to GDAL for any other gdal-readable format.
other_img = sario.load("gdal_readable_image.tif", use_gdal=True)


Functions for using GPS data in conjunction with InSAR stacks.


Contains LatlonImage class, which loads metadata about an image and acts as a smart numpy array. Includes functionality for slicing/selecting pixels by latitude/longitude, among other things.

Also contains helper functions for maniuplating lat/lon data.


Useful plotting functions, including center-shifted colormap (to make 0 values a neutral color), and 3D stack viewing function

from apertools import gps
enu_dataframe = gps.load_station_enu("TXKM", start_date="2015-01-01")

from apertools import gps_plots


Classes to deal with extracting relevant data from SAR filenames. Example:

from apertools.parsers import Sentinel

parser = Sentinel('S1A_IW_SLC__1SDV_20180408T043025_20180408T043053_021371_024C9B_1B70.zip')
    datetime.datetime(2018, 4, 8, 4, 30, 25)



 'Product type',
 'Resolution class',
 'Product level',
 'Product class',
 'Start datetime',
 'Stop datetime',
 'Orbit number',
 'data-take identified',
 'product unique id')

UAVSAR parser also exists.


Module to make logging pretty with times and module names.

If you also pip install colorlog, it will become colored (didn't require this in case people like non-color logs.)

from apertools.log import get_log
logger = get_log()
logger.info("Better than printing")
[05/29 16:28:19] [INFO log.py] Better than printing
Popular Gps Projects
Popular Geospatial Projects
Popular Hardware Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Satellite Imagery