Home

Awesome

Post-Storm Imagery Collection

Codecov PyPI Travis-CI

Maintenance Last Commit

JOSS DOI

ReadTheDocs Documentation

This package downloads, catalogs, and stores NOAA emergency response imagery

Quick Start

There are two ways to get started with psi-collect — using the version on PyPI or installing directly from this GitHub repository. The version currently on PyPI does not work with images from the two most recent Hurricanes (Hx Delta and Hx Zeta). The version here on GitHub is modified and works with these storms (but we still need to make a few more modifications before this new version is packaged for PyPI).

from PyPI:

  1. Install Python 3.6, 3.7, or 3.8 (Download Here)
  2. Run pip3 install psi-collect in your favorite terminal
  3. Run pstorm collect -h for help on collecting images or pstorm catalog -h for help on cataloging local archives

from GitHub Repository

  1. Install Python 3.6, 3.7, or 3.8 (Download Here)
  2. Make sure you have dependecies installed (check them out in requirements.txt)
  3. Run pip install git+https://github.com/UNCG-DAISY/psi-collect in your favorite terminal
  4. Run pstorm collect -h for help on collecting images or pstorm catalog -h for help on cataloging local archives

Usage Guide

Check out the documentation for Collecting and Cataloging images to see usage.

An Example Use of psi-collect: Labeling Imagery

We labeled storm impacts for ~300 images from Hurricane Florence using the Coastal Image Labeler. The labels are available on figshare.

The specific NOAA imagery to link to these labels can be retrieved with psi-collect via:

pstorm collect -s Florence -a 20180917a_jpgs -d

Contributing / Developing

Code of Conduct

We hope to foster an inclusive and respectful environment surrounding the contribution and discussion of our project. Make sure you understand our Code of Conduct.

Code Conventions

Before committing to the repository please read the project Code Conventions.

Project Pre-Requisites

  1. Python 3.6, 3.7, or 3.8 (Download Here)
  2. Pipenv (Run pip install pipenv)
  3. You will need to add the module path <parent dir>/psi-collect/psicollect/ to your PYTHONPATH (See Configuring Module)

If you get an error message that looks something like Module not found: "psicollect", then the PYTHONPATH is not configured correctly!

You will need this in order to run the project.

Installing Dependencies for Development

  1. Change current directory (cd) to psi-collect/ (the project root)
  2. Run pipenv install --dev to install dependencies
  3. Run pre-commit install to install style checking when committing

Testing the Collect Script

  1. Change current directory to the collector module (cd collector/)
  2. Either use pipenv run collect.py <args> or pipenv shell then collect.py <args>
  3. In addition tests can be run using pytest from the project root directory

The arguments for collect.py are listed here

NOAA Data 💾

Team Members and contributors