The Ocean Worlds Life Surveyor (OWLS) project is aimed at autonomously detecting signatures of life in water at the molecular and cellular scale. The ACME, FAME, HELM, and JEWEL components of OWLS (this package) are a set of software-based autonomy tools to process data from different instruments aboard the OWLS instrument. Their goal is to generate and prioritize Autonomous Data Science Products (ASDPs) to send only the most scientifically valuable subset of information back to Earth.
- ACME: Autonomous CE-ESI Mass-spectra Examination. Extracts ASDPs from mass-spectra data.
- FAME: FLFM Autonomous Motility Evaluation. Extracts ASDPs from Volumetric Flourescent Imaging (VFI) microscopy data.
- HELM: Holographic Examination for Life-like motility. Extracts ASDPs from Digital Holography Microscopy (DHM) data.
- JEWEL: Joint Examination for Water-based Extant Life. Prioritizes ASDPs from all instruments to transmit data back to Earth in an "optimal" order.
- ImageMagick
Full instructions for installing ImageMagick are here. For MacOSX, usebrew install imagemagick
. - ffmpeg
Full instructions for installing ffmpeg are here. For MacOSX, usebrew install ffmpeg@4
.
git clone https://github.jpl.nasa.gov/OWLS-Autonomy/OWLS-Autonomy.git
cd OWLS-Autonomy
pip install -e . # use 'editable' to avoid repeated pip installs
For development or CI builds (e.g., on Jenkins).
cd OWLS-Autonomy
pip install -r requirements_dev.txt
A demonstration script is available to confirm successful installation, give first time users an overview of the autonomy pipelines and provide a set of example input/outputs. Please see the demo README.md
for usage.
For ACME, HELM, and FAME, data processsing scripts that you can run from the
command line are located in the src/cli
directory. Please see
the CLI README.md
for examples.
You can build a docker image from the source code if you can't pip install the repository. This may be useful for Windows users.
You can build a Docker image to run OWLS-Autonomy functions. Navigate a terminal to this dir and run the command below:
Build with Dockerfile
and tag the image. Change the version of the tag as needed.
docker build . -f Dockerfile --tag owls-autonomy:v1
Run a container in the Docker Dashboard GUI
or via the CLI. Be sure to mount your local data directory into the Docker
container. The CLI approach is shown below. After starting the container, see the
CLI README.md
for examples on running OWLS functionality.
The --rm
flag will automatically cause the container to stop running as soon as
you exit.
docker run -it --rm -volume /Users/wronk/Data:/Users/wronk/Data owls-autonomy:v1 /bin/bash
All software is licensed according to the JPL Software License, while all documentation is Caltech/JPL Proprietary - Not for public release or distribution.