All Projects → haoliangyu → Pymasker

haoliangyu / Pymasker

Licence: mit
generate masks from Landsat and MODIS land product QA band

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Pymasker

Qgis Earthengine Examples
A collection of 300+ Python examples for using Google Earth Engine in QGIS
Stars: ✭ 482 (+1454.84%)
Mutual labels:  remote-sensing
Earthengine Py Notebooks
A collection of 360+ Jupyter Python notebook examples for using Google Earth Engine with interactive mapping
Stars: ✭ 807 (+2503.23%)
Mutual labels:  remote-sensing
Preloader.ophiuchus
Custom Label to apply animations on whole text or letters.
Stars: ✭ 880 (+2738.71%)
Mutual labels:  mask
Albert pytorch
A Lite Bert For Self-Supervised Learning Language Representations
Stars: ✭ 539 (+1638.71%)
Mutual labels:  mask
Softmaskforugui
UI Soft Mask is a smooth masking component for Unity UI (uGUI) elements.
Stars: ✭ 688 (+2119.35%)
Mutual labels:  mask
React Native Text Input Mask
Text input mask for React Native, Android and iOS
Stars: ✭ 922 (+2874.19%)
Mutual labels:  mask
Awesome Remote Sensing Change Detection
List of datasets, codes, and contests related to remote sensing change detection
Stars: ✭ 414 (+1235.48%)
Mutual labels:  remote-sensing
Opencv Cheat Sheet
Opencv cheat sheet for C++
Stars: ✭ 30 (-3.23%)
Mutual labels:  mask
Ngx Mask
Angular Plugin to make masks on form fields and html elements.
Stars: ✭ 772 (+2390.32%)
Mutual labels:  mask
Prompt Password
This repository has been archived, use the built-in password prompt in Enquirer instead.
Stars: ✭ 8 (-74.19%)
Mutual labels:  mask
R2cnn faster Rcnn tensorflow
Rotational region detection based on Faster-RCNN.
Stars: ✭ 548 (+1667.74%)
Mutual labels:  remote-sensing
Masked Edittext
Android library contain custom realisation of EditText component for masking and formatting input text
Stars: ✭ 592 (+1809.68%)
Mutual labels:  mask
Nn mask
multichannel linear filters based on mask estimation neural networks for CHiME4
Stars: ✭ 26 (-16.13%)
Mutual labels:  mask
Maskara
A simple way to format text fields without getting affected by input filters
Stars: ✭ 515 (+1561.29%)
Mutual labels:  mask
Wetland Hydro Gee
Mapping wetland hydrological dynamics using Google Earth Engine (GEE)
Stars: ✭ 20 (-35.48%)
Mutual labels:  remote-sensing
Jquery Mask Plugin
A jQuery Plugin to make masks on form fields and HTML elements.
Stars: ✭ 4,534 (+14525.81%)
Mutual labels:  mask
Nativescript Masked Text Field
#️⃣ A NativeScript Masked Text Field widget
Stars: ✭ 24 (-22.58%)
Mutual labels:  mask
Phenofit
R package: A state-of-the-art Vegetation Phenology extraction package, phenofit
Stars: ✭ 31 (+0%)
Mutual labels:  remote-sensing
Pyint
Python&GAMMA based interfermetry toolbox for single or time-series of InSAR data processing.
Stars: ✭ 30 (-3.23%)
Mutual labels:  remote-sensing
Php Bitmap
Bitmap representation with bitwise operations
Stars: ✭ 7 (-77.42%)
Mutual labels:  mask

pymasker

Pymasker is a python package to generate various masks from the Landsat Quality Assessment band and MODIS land products.

Installation

The package can be shipped to your computer using pip.

pip install pymasker

Or just install it with the source code.

python setup.py install

This package depends on numpy and GDAL.

An ArcMap python toolbox based on this package could be find here.

Use Example

Python

For Landsat pre-collection and collection-1 Quality Accessment band

from pymasker import LandsatMasker
from pymasker import LandsatConfidence

# load the QA band directly
#
# The "collection" parameter is required for landsat to specify the collection
# number. Acceptable number: 0 (pre-collection), 1 (collection-1)
#
masker = LandsatMasker('LC80170302014272LGN00_BQA.TIF', collection=0)

# algorithm has high confidence that this condition exists
# (67-100 percent confidence)
conf = LandsatConfidence.high

# Get mask indicating cloud pixels with high confidence
mask = masker.get_cloud_mask(conf)

# save the result
masker.save_tif(mask, 'result.tif')

For MODIS land products

from pymasker import ModisMasker
from pymasker import ModisQuality

# load the QA band directly
masker = ModisMasker('MOD09GQ.A2015025.h12v04.005.2015027064556.hdf')

# Corrected product produced at ideal quality for all bands.
quality = ModisQuality.high

# Create a MODIS QA masker
mask = masker.get_qa_mask(quality)

# save the result
masker.save_tif(mask, 'result.tif')

Command Line

pymasker [source] [input.tif] [output.tif] [options...]

Required arguments:

source SOURCE
  source type: landsat, modis

input INPUT
  input image file path

output OUTPUT
  output raster path

Landsat arguments:

-C, --collection  LANDSAT COLLECTION NUMBER
  collection number of input image: 0 (pre-collection), 1

-c, --confidence CONFIDENCE
  level of confidence that a condition exists in a landsat image:
  high, medium, low, undefined, none

-cv, --confidence_value CONFIDENCE VALUE
   confidence values: -1, 0, 1, 2, 3

-m, --mask MASK
  pre-collection mask: fill, cloud, cirrus, water, snow
  collection-1 mask: fill, no_cloud, cloud, cloud_shadow, cirrus, snow

MODIS arguments:

-q, --quality QUALITY
  Level of data quality of MODIS land products at each pixel:
  high, medium, low, low_cloud

More Detail

The following two articles explains the mechanism behind the tool in detail.

For JavaScript Developer

node-qa-masker provides the same masking functionality in NodeJS.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].