Skip to main content

A utility to search, download and process Landsat 8 satellite imagery

Project description

Landsat-util

https://travis-ci.org/developmentseed/landsat-util.svg?branch=v0.5 Latest Version Downloads Wheel Status License

Landsat-util is a command line utility that makes it easy to search, download, and process Landsat imagery.

This tool uses Development Seed’s API for Landsat Metadata.

This API is accessible here: https://api.developmentseed.org/landsat

You can also run your own API and connect it to this tool.

Installation

On Mac

$: pip install landsat-util

On Ubuntu 14.04

Use pip to install landsat-util. If you are not using virtualenv, you might have to run pip as sudo.

$: sudo apt-get update

$: sudo apt-get install python-pip python-numpy python-scipy libgdal-dev libatlas-base-dev gfortran

$: pip install landsat-util

On Other systems

Make sure Python setuptools is installed.

$: python setup.py numpy six

$: python setup.py install

To Upgrade

$: pip install -U landsat-util

If you have installed previous version of landsat using brew, first run:

$: brew uninstall landsat-util

To Test

$: pip install -U requirements/dev.txt

$: nosetests

Or

$: python setup.py test

Overview: What can landsat-util do?

Landsat-util has three main functions:

  • Search for landsat tiles based on several search parameters.

  • Download landsat images.

  • Image processing and pan sharpening on landsat images.

These three functions have to be performed separately.

Help: Type landsat -h for detailed usage parameters.

Step 2: Download

You can download tiles using their unique sceneID, which you get from landsat search.

Landsat-util will download a zip file that includes all the bands. You have the option of specifying the bands you want to down. In this case, landsat-util only downloads those bands if they are available online.

Examples of download:

Download images by their custom sceneID, which you get from landsat search:

$: landsat download LC80090452014008LGN00

Download only band 4, 3 and 2 for a particular sceneID:

$: landsat download LC80090452014008LGN00 --bands 432

Download multiple sceneIDs:

$: landsat download LC80090452014008LGN00 LC80090452015008LGN00 LC80090452013008LGN00

Step 3: Image processing

You can process your downloaded tiles with our custom image processing algorithms. In addition, you can choose to pansharpen your images and specify which bands to process.

Examples of image processing:

Process images that are already downloaded. Remember, the program accepts both zip files and unzipped folders:

$: landsat process path/to/LC80090452014008LGN00.tar.bz

If unzipped:

$: landsat process path/to/LC80090452014008LGN00

Specify bands 3, 5 and 1:

$: landsat process path/to/LC80090452014008LGN00 --bands 351

Process and pansharpen a downloaded image:

$: landsat process path/to/LC80090452014008LGN00.tar.bz --pansharpen

Important Notes

  • All downloaded and processed images are stored at your home directory in landsat forlder: ~/landsat

  • The image thumbnail web address that is included in the results can be used to make sure that clouds are not obscuring the subject of interest. Run the search again if you need to narrow down your result and then start downloading images. Each image is usually more than 700mb and it might takes a very long time if there are too many images to download

  • Image processing is a very heavy and resource consuming task. Each process takes about 5-10 mins. We recommend that you run the processes in smaller badges. Pansharpening, while increasing image resolution 2x, substantially increases processing time.

  • Landsat-util requires at least 2GB of Memory (RAM).

Recently Added

  • Add longitude latitude search

  • Improve console output

  • Add more color options such as false color, true color, etc.

To Do List

  • Add Sphinx Documentation

  • Add capacity for NDVI output

  • Add alternative projections (currently only option is default web-mercator; EPSG: 3857)

  • Connect search to Google Address API

  • Include 16-bit image variant in output

  • Add support for color correct looping over multiple compressed inputs (currently just 1)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

landsat-util-0.6.2.tar.gz (7.4 MB view details)

Uploaded Source

Built Distribution

landsat_util-0.6.2-py2.py3-none-any.whl (7.4 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file landsat-util-0.6.2.tar.gz.

File metadata

File hashes

Hashes for landsat-util-0.6.2.tar.gz
Algorithm Hash digest
SHA256 b395c1016fbe02a224c2d035850efe92ce70e6733d402cb41765e70aebd7ea53
MD5 6f8e7b56d6f8d6eac6211b840754699a
BLAKE2b-256 3909bcf5fa543c326d5798e16157600e27c2b6e526f9e060170c4d3142bea4cd

See more details on using hashes here.

File details

Details for the file landsat_util-0.6.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for landsat_util-0.6.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d786ff4dd25ae1e7a1b25c9fdb9ae7bf2c2456e5fdadc21bb33050401a6bf2a6
MD5 f2371f2b5fb96df8e23423b630197432
BLAKE2b-256 661ab8cb6f3ee15b37b591bad949946482b834dd41a4ce93ca1a36b5d4cbe903

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page