Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.rst

ESPA Tools

Documentation Status PyPI Build Status Documentation Built by gendocs GitHub

An open-source Python package for simple loading of Landsat imagery as NumPy arrays. When downloading Landsat imagery from USGS Earth Explorer, the datasets contain many bands (.tif files) and a few metadata files (.txt and .xml files). espatools is built to parse the .xml metadata file to read all of the bands for that dataset and provide a convenient and intuitive means of accessing that metadata along side the raw data in a Python environment. espatools can be found on GitHub and PyPI.

Collage of RGB colors

Connections

  • The package heavily uses properties for the creation of strongly typed objects in a consistent, declarative way.
  • This package implements a way to convert these datasets to a PyVista dataset (vtkImageData).
  • PVGeo has implemented an interface for espatools to read Landsat imagery via XML metadata files. Check out PVGeo's Landsat Reader for more details.

Getting Started

espatools is available from PyPI

$ pip install espatools

Usage

We think espatools is easy to use; give it a try and let us know what you think as this is just the alpha-release!

  1. First, checkout this Jupyter Notebook for a demonstration of some simple plotting after reading Landsat imagery in a Python environment.
  1. And take a look at the .to_pyvista() method on RasterSet objects to have a 3D dataset of the imagery in PyVista/VTK
  2. Then take a look at the Landsat Reader in PVGeo's documentation where espatools has an interface for direct use in ParaView.

Example False Color

import espatools
import matplotlib.pyplot as plt

# Create the reader to manage I/O
reader = espatools.RasterSetReader(filename='metadata.xml')

# Perform the read and yield a raster set
raster = reader.read()

# Get an RGB color scheme
color = raster.get_rgb('false_a')

# Now plot the false color image
plt.imshow(color)

The results of the above code yield the following false color image:

RGB False Color

You can also view the dataset in 3D using PyVista:

mesh = raster.to_pyvista()
mesh.plot(scalars='false_a', rgb=True, cpos='xy')

About

A lightweight Python package for simple loading of Landsat imagery as NumPy arrays

Topics

Resources

License

Packages

No packages published

Languages

You can’t perform that action at this time.