Skip to content

Python toolkit for characterizing Coal and Open-pit surface mining impacts on American Lands

License

Notifications You must be signed in to change notification settings

capstone-coal/pycoal

Repository files navigation

Pycoal

Development

license PyPI Python3 GoogleGroup documentation Travis Coveralls Requirements Status Anaconda-Server Version Anaconda-Server Downloads

Docker

Docker Pulls microbadger

COAL is a Python library for processing hyperspectral imagery from remote sensing devices such as the Airborne Visible/InfraRed Imaging Spectrometer (AVIRIS) and AVIRIS-Next Generation enabling scientific analysis of Coal and Open-pit surface mining impacts on American Lands.

Introduction and Context

Mountain-top Mining (MTM) is a method of open surface mining with the primary aim of exploring and exploiting coal seams present within the land and solid earth (LSE) on mountaintops. Amongst other surface mining activities, MTM is known to be an extremely destructive mining procedure predominantly limited to the spatial boundaries of the Southern Appalachians (Eastern Kentucky, West Virginia and very small sections of Virginia and Tennessee). MTM is known to have caused irreparable damage to mountain landscapes and significant immediate and longer-term damage to key streams and watersheds. Larger afield, the rest of the U.S.A has some extensive surface mining in various places for exploitation of resources such as gravel/sand, various metals, other minerals and even radioactive materials, etc. Several studies have provided important scientific understanding related to the local, regional and state-level impacts of such environmentally destructive practices, however a similar understanding on the national and continental levels are very much lacking.

Project Motivation & Statement

COAL provides a suite of algorithms (written in Python) to identify, classify, characterize, and quantify (by reporting a number of key metrics) the direct and indirect impacts of MTM and related destructive surface mining activities across the continental U.S.A (and further afield).

More information on COAL can be seen at the Project Website as well as the docs directory.

Installation

pip

PyPI

The Python COAL package pycoal can be installed from the cheeseshop

pip3 install pycoal

conda

Anaconda-Server Version Anaconda-Server Downloads

or from conda

conda install -c conda-forge pycoal

Source

or from source

git clone https://github.com/capstone-coal/pycoal.git && cd pycoal
python3 setup.py install

Docker

Docker Pulls microbadger

Docker greatly simplifies installation of pycoal and the environment. The image can be installed from Dockerhub as follows

docker pull capstonecoal/coal:latest

Additionally, if you are developing the image and wish to build it locally, you can run the following

Installation

  1. Install Docker.
  2. Build from files in this directory:
docker build -t capstonecoal/coal .

Usage

Start up an image and attach to it

docker run -t -i -d --name coalcontainer capstonecoal/coal /bin/bash
docker attach --sig-proxy=false coalcontainer

pycoal is located in /coal and is almost ready to run. You just need to grab some data.

Tests

Travis Coveralls

COAL uses the popular nose testing suite for unit tests.

You can run the COAL tests simply by running

nosetests

Additonally, click on the build sticker at the top of this readme to be directed to the most recent build on travis-ci.

Quickstart

See the quickstart documentation.

If you would like to run the examples yourself, head over to the examples module.

WARNING Running the examples requires additional downloads. Ensure you have sufficient storage (~20 GB).

Documentation

documentation

COAL documentation can be found at Readthedocs however you can also build documentation manually.

$ cd docs/source && make html

Documentation can then be located in _build/html/index.html

Community and Development

Slack

Slack

Questions, concerns, and general communication is all encouraged in our Slack organization.

Mailing list

GoogleGroup

To become involved or if you require help using the project request to join our mailing list.

Issue Tracker

If you have issue using COAL, please log a ticket in our Github issue tracker.

License

COAL is licensed under the license a copy of which ships with this source code.