Home

Awesome

OSSP

Open Source Sea-ice Processing

Open Source Algorithm for Detecting Sea Ice Surface Features in High Resolution Optical Imagery

Nicholas Wright and Chris Polashenski

Introduction

Welcome to OSSP; a set of tools for detecting surface features in high resolution optical imagery of sea ice. The primary focus is on the detection of and differentiation between open water, melt ponds, and snow/ice.

The Anaconda distribution of Python is recommended, but any distribution with the appropriate packages will work. You can download Anaconda, version 3.6, here: https://www.continuum.io/downloads

Dependencies

Optional

Usage

For detailed usage and installation instructions, see the pdf document 'Algorithm_Instructions.pdf'

setup.py

The first step is to run the setup.py script to compile C libraries. Run python setup.py build_ext --build-lib . from the OSSP directory. Be sure to include the period after --build-lib.

ossp_process.py

This combines all steps of the image classification scheme into one script and should be the only script to call directly. If given a folder of images, this script finds all appropriately formatted files directory (.tif(f) and .jpg) and queues them for processing. If given an image file, this script processes that single image alone. This script processes images as follows: Image preprocessing (histogram stretch or pansharpening if chosen) -> segmentation (segment.py) -> classification (classify.py) -> calculate statistics. Output results are saved as a geotiff with the same georeference of the input image.

Required Arguments

Optional Arguments

Notes:

Example: ossp_process.py input_dir im_type training_dataset_file -v

This example will process all .tif and .jpg files in the input_dir.

training_gui.py

Graphical user interface for creating a custom training dataset. Provide a directory of images that you wish to use as the basis of your training set. The GUI will present a random segment each time a classification is assigned. The display images can also be clicked classify a specific area. The segments themselves are automatically generated. The highlighted region corresponds to the segment that will be labeled.

Output is a .h5 file that can be provided to ossp_process.py.

Note: Images are segmented prior to display on the GUI, and as such may take up to a minute to load (depending on image size and computer specs)

Positional Arguments:

Optional arguments:

Contact

Nicholas Wright