Software We Help Maintain

RSGISLibGeneral software for the processing of remote sensing and GIS data using a python API
ARCSISoftware for the production of optical analysis ready data (ARD) including atmospheric correction, topographic correction and cloud masking
SPDLibLiDAR data processing including full waveform data.
pylidarPython lidar for the processing of LiDAR data
KEALibSoftware for reading and writing the KEA file format. This includes a GDAL driver, which since GDAL 2.0 is now embedded within GDAL.
TuiViewImage viewer for remotely sensed image data. Written in python and opens all formats which GDAL supports.

Other useful software tools

Data Storage and I/O
GDALLoads of useful utilities for processing spatial image and vector data and support for loads of file formats.
RIOSA python library which provides an easy method of accessing the image data (pixels values or attribute tables) as numpy arrays.
Open Data CubeLibrary with a python interface for the organisation and storage of remote sensing image data. Provides access to the data using the python xarray library
Graphical Tools
QGISOpen source graphic GIS application which builds on and links together many other open source spatial data applications.
CartopyPython library for producing maps. Builds on Matplotlib.
Python Libraries
python-fmaskThis is a python implementation of the FMask algorithm for cloud masking Landsat 4-8 data and Sentinel-2. This library is used with ARCSI to perform cloud masking.
scikit-imagePython library for manipulating image data. When linked with RIOS it is very powerful in terms of analysing spatial image data.
scikit-learnA powerful and easy to use machine learning library which can be linked with RIOS to perform many classification and clustering operations. Used a lot within RSGISLib to provide classification functionality.
KerasA python library which provides neural networks and the extension to deep learning.
shapelyA python library which provides functionality from the GEOS library for manipulating vector geometries.
FionaA python library for the manipulation of vector data.
pysolarPysolar is a collection of Python libraries for simulating the irradiation of any point on earth by the sun. It includes code for extremely precise ephemeris calculations, and more.
xarrayA python library which is heavily used by the open data cube which allows access to and manipulation of spatial time series data. Links closely with the NetCDF file format.
DARTDART models radiative transfer in the system "Earth - Atmosphere", from visible to thermal infrared. It simulates measurements (images, waveforms,…) of passive and active (lidar) satellite/plane sensors, as well as the radiative budget, for urban and natural landscapes.
Py6SPy6S is a interface to the Second Simulation of the Satellite Signal in the Solar Spectrum (6S) atmospheric Radiative Transfer Model through the Python programming language.

Mobile Apps

Drone Data Capture
Precision FlightFor DJI drones this automates the collection process for capturing survey data. This is the app I prefer to use.
Pix4D CaptureThis app automates the collection process for capturing survey data. Has a nice function for collecting orthogonal flightlines for a given area.
Drone DeployDoes a similar job to the Precision Flight app, I believe this app is probably a more popular than Precision Flight.

Online Services

Drone Data Processing
Precision MapperNice tool for generating ortho-mosaics from drone imagery and the free tier allows 5 free scenes to be processed each month.
Drone DeployOnline service for processing drone imagery into ortho-mosaics.
Pix4DOnline service for processing drone imagery into ortho-mosaics.
Online Mapping
CartoMaking an online mapping system.

Manage Software Installations

For managing our software installations we use the conda python package management system with and help maintain the relevant packages via the conda-forge channel.

To get set up you must first install conda, which I recommend you do via the miniconda installation. Once you have miniconda installed you should create a custom environment in which to install everything into, this can be done using the command below:

conda create -n osgeo-env-v1 python=3.6

To change to the new environment run the following command (Linux/MacOS):

source activate osgeo-env-v1

You can create multiple environments on your machine so if you want to upgrade packages and you want to ensure you don’t break your old system then you can create osgeo-env-v2 etc.

The installation command that I use for my whole system is:

conda install -c conda-forge arcsi tuiview

If you have problems with your installation (which does happen sometimes) then run the following command:

conda update -c conda-forge --all