Coder Social home page Coder Social logo

nasa / delta Goto Github PK

View Code? Open in Web Editor NEW
205.0 19.0 63.0 10.12 MB

Deep Learning for Satellite Imagery

License: Apache License 2.0

Python 77.24% Shell 1.59% Dockerfile 0.14% Jupyter Notebook 21.04%
deep-learning machine-learning remote-sensing usg-artificial-intelligence

delta's Introduction

DELTA (Deep Earth Learning, Tools, and Analysis) is a framework for deep learning on satellite imagery, based on Tensorflow. DELTA classifies large satellite images with neural networks, automatically handling tiling large imagery.

DELTA example flowchart

DELTA is under active development by the NASA Ames Intelligent Robotics Group through the end of 2021. Initially, it is mapping floods for disaster response, in collaboration with the U.S. Geological Survey, National Geospatial Intelligence Agency, National Center for Supercomputing Applications, and University of Alabama.

Installation

  1. Install python3, GDAL, and the GDAL python bindings. For Ubuntu Linux, you can run scripts/setup.sh from the DELTA repository to install these dependencies.

  2. Install Tensorflow following the instructions. For GPU support in DELTA (highly recommended) follow the directions in the GPU guide.

  3. Checkout the delta repository and install with pip:

    git clone http://github.com/nasa/delta
    python3 -m pip install delta

DELTA is now installed and ready to use!

Alternate install using a Conda environment

  1. Install Miniconda.

  2. Checkout the delta repository and cd into the directory:

    git clone http://github.com/nasa/delta
    cd ./delta
    
  3. Run the following commands to create a conda environment, install dependences, and install delta:

    conda create --name delta --yes python gdal
    conda activate delta
    pip install . # This command should be run in the ./delta directory we made in step 2
  4. For GPU support in DELTA you'll need to install the required NVIDIA software before running the conda commands in step 3.

Installing ESA SNAP

In order to process Sentinel-1 images you will need to instal the ESA SNAP tool. You can download it here: https://step.esa.int/main/download/snap-download/

Once it is installed, you will need to add SNAP's bin folder to your path like this: export PATH=$PATH:/where/you/installed/snap/bin

Documentation

  • README Docs
  • Python Documentation - DELTA can be used either as a command line tool or as a python library. You can view the documentation at the linked URL or generate the documentation with scripts/docs.sh.
    • delta.config.extensions documentation - details on extending DELTA for use with custom layers, image types, preprocessing, etc.

Example

Bash Script Example (Linux Only)

As a simple example, consider training a neural network to map clouds with Landsat-8 images. The script scripts/example/l8_cloud.sh trains such a network using DELTA from the USGS SPARCS dataset, and shows how DELTA can be used. The steps involved in this, and other, classification processes are:

  1. Collect training data. The SPARCS dataset contains Landsat-8 imagery with and without clouds.

  2. Label training data. The SPARCS labels classify each pixel according to cloud, land, water and other classes.

  3. Train the neural network. The script scripts/example/l8_cloud.sh invokes the command

    delta train --config l8_cloud.yaml l8_clouds.h5
    

    where scripts/example/l8_cloud.yaml is a configuration file specifying the labeled training data and training parameters (learn more about configuration files below). A neural network file l8_clouds.h5 is output.

  4. Classify with the trained network. The script runs

    delta classify --config l8_cloud.yaml --image-dir ./validate --overlap 32 l8_clouds.h5
    

    to classify the images in the validate folder using the network l8_clouds.h5 learned previously. The overlap tiles to ignore border regions when possible to make a more aesthetically pleasing classified image. The command outputs a predicted image and confusion matrix.

The results could be improved--- with more training, more data, an improved network, or more--- but this example shows the basic usage of DELTA.

JupyterLab Example (Linux/Mac)

The jupyter lab example is very similar to the bash script example above but has a more visual demonstration of the steps and imagery used. It is especially helpful if you are less experienced with the command line.

You can view a read-only version at the above link. Or if you'd like to run the example yourself you'll need to install JupyterLab. To do that you can simply run

pip install jupyterlab

after installing DELTA using the above instructions. Then run

jupyter-lab path_to_delta_install/scripts/example/l8_cloud_example.ipynb

Once jupyter loads, you can advance through the cells one by one using the "play" button

or run all the cells at once using the "fast-foward" button.

Configuration and Extensions

DELTA provides many options for customizing data inputs and training. All options are configured via YAML files. Some options can be overwritten with command line options (use delta --help to see which). See the delta.config README to learn about available configuration options.

DELTA can be extended to support custom neural network layers, image types, preprocessing operations, metrics, losses, and training callbacks. Learn about DELTA extensions in the delta.config.extensions documentation.

Data Management

DELTA integrates with MLFlow to track training. MLFlow options can be specified in the corresponding area of the configuration file. By default, training and validation metrics are logged, along with all configuration parameters. The most recent neural network is saved to a file when the training program is interrupted or completes.

View all the logged training information through mlflow by running::

  delta mlflow_ui

and navigating to the printed URL in a browser. This makes it easier to keep track when running experiments and adjusting parameters.

Data Preparation

By default DELTA operates on compressed input images which are unpacked to a temporary cache before they are processed. You can speed up processing by pre-unpacking your input data to a new folder using the tool scripts/fetch/unpack_inputs.py as in this example:

  python3 scripts/fetch/unpack_inputs.py --input-folder raw_images --output-folder unpacked_images \
  --image-type worldview --image-ext .zip

The images will be unpacked in the output folder, ready for training or classification. To train or classify with unpacked data, the image type specified in the configuration file remains the same but the extension should match the new extension in the unpacked folders (.tif for worldview, .vrt for Sentinel1).

Contributors

We welcome pull requests to contribute to DELTA. However, due to NASA legal restrictions, we must require that all contributors sign and submit a NASA Individual Contributor License Agreement. You can scan the document and submit via email. Thank you for your understanding.

Important notes for developers:

  • Branching: Active development occurs on develop. Releases are pushed to master.

  • Code Style: Code must pass our linter before merging. Run scripts/linter/install_linter.sh to install the linter as a git pre-commit hook.

  • Unit Tests: Code must pass unit tests before merging. Run pytest in the tests directory to run the tests. Please add new unit tests as appropriate.

  • Development Setup: You can install delta using pip's -e flag which installs in editable mode. Then you can run delta and it will use your latest changes made to the repo without reinstalling.

Licensing

DELTA is released under the Apache 2 license.

Copyright (c) 2020, United States Government, as represented by the Administrator of the National Aeronautics and Space Administration. All rights reserved.

delta's People

Contributors

abnsy avatar alimuhammadofficial avatar bcoltin avatar furlong-cmu avatar martialbm avatar mvonpohle avatar parkeraddison avatar rcampbell95 avatar scottmcmichael avatar snoyes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

delta's Issues

DELTA throws error when classifying images without labels

I think in the ROI metric changes there's a bug where if you try to classify some images without any associated labels (like I'm currently doing for the cloud shadow) you get an error in classify.py.

Here's the specific Traceback:

Traceback (most recent call last):
  File "/home/mvonpohl/miniconda3/envs/delta/bin/delta", line 7, in <module>
    exec(compile(f.read(), __file__, 'exec'))
  File "/usr/local/home/mvonpohl/projects/delta_project/delta/bin/delta", line 25, in <module>
    sys.exit(main.main(sys.argv))
  File "/usr/local/home/mvonpohl/projects/delta_project/delta/delta/subcommands/main.py", line 50, in main
    return options.function(options)
  File "/usr/local/home/mvonpohl/projects/delta_project/delta/delta/subcommands/commands.py", line 28, in main_classify
    classify.main(options)
  File "/usr/local/home/mvonpohl/projects/delta_project/delta/delta/subcommands/classify.py", line 368, in main
    cm, metrics, full_metrics = classify_image(model, this_image,
TypeError: cannot unpack non-iterable NoneType object

Line 368 is expecting a Tuple return:

cm, metrics, full_metrics = classify_image(model, this_image,
                                                       labels.load(i) if labels else None,
                                                       image_path, net_name, options,
                                                       shapes, persistent_metrics=full_metrics)

But classify_image (lines 207-219) can return None if there are no labels:

    if label:
        cm = predictor.confusion_matrix()
        class_names = list(map(lambda x: x.name, config.dataset.classes))
        if len(config.dataset.classes) != cm.shape[0]:
            class_names = list(map(lambda x: 'Class %d' % (x), range(cm.shape[0])))
        if options.confusion and (not shapes):
            save_confusion(cm, class_names,
                           os.path.join(out_path, 'confusion_' + os.path.splitext(base_out)[0] + '.pdf'))
        metrics = predictor.metrics()
        metrics, persistent_metrics = (metrics[0:num_temp_metrics], metrics[num_temp_metrics:])
        return cm, metrics, persistent_metrics
    return None

You can replicate this by running a trained model using this config (wv_validate.yaml):

dataset:
  images:
    type: tiff
    nodata_value: 0.0
    directory: /usr/local/irg/data/wv/validate

io:
  tile_size: [2048, 2048]

and this command:

delta classify --config wv_validate.yaml --prob --overlap 32 E102_WV_S1.1_nopool.h5

Cacheing when Loading Imagery in ImageryDataset

Right now disk IO is the bottleneck. Would be good if we could select random blocks and then randomize tiles within the blocks, instead of the current method, so we could do larger reads at once and cache the blocks.

delta classify error summary output - regions of interest

Goal: When running DELTA classify, output error metrics for a list of regions of interest.

  • Error Metrics: precision, recall, accuracy, loss, subcomponents of loss
  • Regions of Interest: file name of image and polygon(?) for region of interest

Implementation:

  • error metrics/regions of interest provided in a yaml config file. Possibly as part of dataset config?

Name brainstorm:

  • targeted error output
  • specific error output
  • focused
  • specific
  • area of interest
  • polygon error
  • subset
  • region error
  • subregion error
  • area of interest error
  • region of interest errer

Set Trainable Callback Doesn't Work

Apparently you need to recompile the callback to fix this. You also can't recompile the model during the training. May want to combine with an early stopping callback, a recompile on_train_end, and recalling fit with a decreased number of epochs.

Improve metric support in delta classify

The delta classify command supports using different metrics to evaluate the results, similar to how they are used in the delta train operation. Currently only about half of the implemented metrics work in the classify command, so we need to go through and fix them where possible and then document which ones do and do not work.

Add config option to select bands used from imagery

Add a config options that allows selection of which bands to use from the imagery. Could also include ability to re-order those bands before input to network.

The band selection would be useful for current approaches if we want to limit model to certain bands.
The band re-ordering could be useful for using other networks that used a different band ordering in their pertained models.

Validation from_training is slow at start

When we set validation to be from_training, it skips in _prep_dataset, which involves reading through all the data and ignoring it. This takes a long time. We should find a better way to do this.

Improved Boundary Classification

Currently, incomplete tiles are not labeled, leaving unlabeled regions on the bottom and right sides of the image. Furthermore, tiles which are mostly nodata behave badly. Perhaps we could use tiles closer to the edges?

Upgrading to Tensorflow 2.3.0 breaks train.py

When using delta with tensorflow 2.3 line 183 in delta/ml/train.py breaks with an error message saying something to the effect of "Layer has never been initiated and as such has no input size"

conflict with new lazy compilation thing?

Add Verbose Mode

Print network structure and possibly other things. Maybe try to hide tensorflow prints based on this.

Improved Support for Extensions

Make it easier for users to add custom metrics, losses, network layers, and image types. Add options for extension modules, and search through them?

Add class weights to config file

We want to be able to use class weighting while training.
Need to specify class weights in the config file, and if they are specified, use them in training.

Can't resume training using CPU

The code currently does not load models within a devices/strategy scope which makes them die when using only the CPU. This may work with non .h5 model files but those don't load properly for some reason. TF 2.2 is supposed to handle model loading better within device/strategy scope so this may have to wait until we can upgrade to that version of TF.

test_geotiff_write.py fails because projection is not written to file

I am working on a project that uses the delta library for loading/writing geotiffs, so I am working directly from python, not via the CLI. When calling delta.extensions.sources.tiff.write_tiff, the output file doesn't carry any projection info. I found a workaround by inserting the following snippet into my script after calling tiff.write_tiff, with the critical step being the .FlusheCache() method:

Workaround

## Check/update projection if none exists
from osgeo import gdal
ds = gdal.Open(geotiff_path)
if ds.GetProjection() == '':
    ds.SetProjection(metadata["projection"]) # CRS.from_string(metadata["projection"]).to_wkt()
    ds.FlushCache() # close file/buffer
pass

Attempted fix

I tried inserting self._handle.FlushCache() # close file/buffer into the function write_tiff here, but that did not fix the issue.

Pytest

This issue is actually flagged by pytest. Assuming it passed the test on someone else's environment, there must be an issue with one of my dependency libraries. Here is the pytest failure message for reference:

pytest output for test_tiff.py:

(geospatial-ml) ethan_kyzivat_brown_edu@deeplearning-ethan-vm:~/code/delta-fork/tests$ pytest -k test_tiff
=================================================================================== test session starts ====================================================================================
platform linux -- Python 3.10.4, pytest-7.1.2, pluggy-1.0.0
rootdir: /home/ethan_kyzivat_brown_edu/code/delta-fork/tests, configfile: pytest.ini
plugins: typeguard-2.13.3, anyio-3.5.0
collected 57 items / 54 deselected / 3 selected                                                                                                                                            

test_tiff.py .F.                                                                                                                                                                     [100%]

========================================================================================= FAILURES =========================================================================================
____________________________________________________________________________________ test_geotiff_save _____________________________________________________________________________________

tmpdir = local('/tmp/pytest-of-ethan_kyzivat_brown_edu/pytest-3/test_geotiff_save0')

    def test_geotiff_save(tmpdir):
        '''
        Tests writing a landsat geotiff.
        '''
        file_path = os.path.join(os.path.dirname(__file__), 'data', 'landsat.tiff')
    
        image = TiffImage(file_path)
        new_tiff = str(tmpdir / 'test.tiff')
    
        image.save(new_tiff) # test
    
>       check_same(file_path, new_tiff)

test_tiff.py:100: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

filename1 = '/home/ethan_kyzivat_brown_edu/code/delta-fork/tests/data/landsat.tiff', filename2 = '/tmp/pytest-of-ethan_kyzivat_brown_edu/pytest-3/test_geotiff_save0/test.tiff'
data_only = False

    def check_same(filename1, filename2, data_only=False):
        '''
        Checks whether or not two files are the same
        '''
        in1 = TiffImage(filename1)
        in2 = TiffImage(filename2)
        assert in1.size() == in2.size()
        assert in1.num_bands() == in2.num_bands()
        assert in1.dtype() == in2.dtype()
        if not data_only:
            assert in1.block_size() == in2.block_size()
        assert in1.nodata_value() == in2.nodata_value()
    
        if not data_only:
            m_1 = in1.metadata()
            m_2 = in2.metadata()
            assert m_1['geotransform'] == m_2['geotransform']
            assert m_1['gcps'] == m_2['gcps']
            assert m_1['gcpproj'] == m_2['gcpproj']
>           assert m_1['projection'] == m_2['projection']
E           assert 'GEOGCS["WGS ...PSG","4326"]]' == ''
E             + GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AXIS["Latitude",NORTH],AXIS["Longitude",EAST],AUTHORITY["EPSG","4326"]]

test_tiff.py:75: AssertionError
===================================================================================== warnings summary =====================================================================================
../../../../../opt/conda/envs/geospatial-ml/lib/python3.10/site-packages/flatbuffers/compat.py:19
  /opt/conda/envs/geospatial-ml/lib/python3.10/site-packages/flatbuffers/compat.py:19: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
    import imp

../../../../../opt/conda/envs/geospatial-ml/lib/python3.10/site-packages/numexpr/expressions.py:21
../../../../../opt/conda/envs/geospatial-ml/lib/python3.10/site-packages/numexpr/expressions.py:21
  /opt/conda/envs/geospatial-ml/lib/python3.10/site-packages/numexpr/expressions.py:21: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
    _np_version_forbids_neg_powint = LooseVersion(numpy.__version__) >= LooseVersion('1.12.0b1')

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
================================================================================= short test summary info ==================================================================================
FAILED test_tiff.py::test_geotiff_save - assert 'GEOGCS["WGS ...PSG","4326"]]' == ''
================================================================== 1 failed, 2 passed, 54 deselected, 3 warnings in 0.95s ==================================================================

Environment

Finally, I'm copying my environment below. It is installed via the amazing geospatial-ml package, which installs virtually all of the python geospatial packages plus some ml packages via one conda command. As a result, the environment is a beast! I've also noticed some gdal projection errors (I think they mentioned proj4) when working from within this environment, and those problems go away if I switch machines, but use the same files.

(geospatial-ml) ethan_kyzivat_brown_edu@deeplearning-ethan-vm:~/code/delta-fork/tests$ conda list
# packages in environment at /opt/conda/envs/geospatial-ml:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
abseil-cpp                20210324.2           h9c3ff4c_0    conda-forge
absl-py                   1.0.0              pyhd8ed1ab_0    conda-forge
aenum                     3.1.11             pyhd8ed1ab_0    conda-forge
affine                    2.3.1              pyhd8ed1ab_0    conda-forge
aiohttp                   3.8.1           py310h5764c6d_1    conda-forge
aiosignal                 1.2.0              pyhd8ed1ab_0    conda-forge
alembic                   1.7.7                    pypi_0    pypi
alsa-lib                  1.2.3                h516909a_0    conda-forge
altair                    4.2.0              pyhd8ed1ab_1    conda-forge
aniso8601                 9.0.1              pyhd8ed1ab_0    conda-forge
antlr-python-runtime      4.9.3              pyhd8ed1ab_1    conda-forge
anyio                     3.5.0           py310hff52083_0    conda-forge
aom                       3.3.0                h27087fc_1    conda-forge
appdirs                   1.4.4              pyh9f0ad1d_0    conda-forge
argh                      0.26.2          pyh9f0ad1d_1002    conda-forge
argon2-cffi               21.3.0             pyhd8ed1ab_0    conda-forge
argon2-cffi-bindings      21.2.0          py310h5764c6d_2    conda-forge
arrow-cpp                 6.0.1           py310h500f8fe_8_cpu    conda-forge
asciitree                 0.3.3                      py_2    conda-forge
asgiref                   3.5.0              pyhd8ed1ab_0    conda-forge
astor                     0.8.1              pyh9f0ad1d_0    conda-forge
astroid                   2.5                      pypi_0    pypi
asttokens                 2.0.5              pyhd8ed1ab_0    conda-forge
astunparse                1.6.3              pyhd8ed1ab_0    conda-forge
async-timeout             4.0.2              pyhd8ed1ab_0    conda-forge
attrs                     21.4.0             pyhd8ed1ab_0    conda-forge
aws-c-cal                 0.5.11               h95a6274_0    conda-forge
aws-c-common              0.6.2                h7f98852_0    conda-forge
aws-c-event-stream        0.2.7               h3541f99_13    conda-forge
aws-c-io                  0.10.5               hfb6a706_0    conda-forge
aws-checksums             0.1.11               ha31a3da_7    conda-forge
aws-sdk-cpp               1.8.186              hb4091e7_3    conda-forge
babel                     2.9.1              pyh44b312d_0    conda-forge
backcall                  0.2.0              pyh9f0ad1d_0    conda-forge
backports                 1.0                        py_2    conda-forge
backports.functools_lru_cache 1.6.4              pyhd8ed1ab_0    conda-forge
base58                    2.1.1              pyhd8ed1ab_0    conda-forge
beautifulsoup4            4.11.1             pyha770c72_0    conda-forge
black                     22.3.0             pyhd8ed1ab_0    conda-forge
black-jupyter             22.3.0               hd8ed1ab_0    conda-forge
bleach                    5.0.0              pyhd8ed1ab_0    conda-forge
blinker                   1.4                        py_1    conda-forge
blosc                     1.21.1               hd32f23e_0    conda-forge
bokeh                     2.4.2           py310hff52083_1    conda-forge
boost-cpp                 1.74.0               h6cacc03_7    conda-forge
boto3                     1.22.3             pyhd8ed1ab_0    conda-forge
botocore                  1.25.3             pyhd8ed1ab_0    conda-forge
bqplot                    0.12.33            pyhd8ed1ab_0    conda-forge
branca                    0.4.2              pyhd8ed1ab_0    conda-forge
brotli                    1.0.9                h166bdaf_7    conda-forge
brotli-bin                1.0.9                h166bdaf_7    conda-forge
brotlipy                  0.7.0           py310h5764c6d_1004    conda-forge
brunsli                   0.1                  h9c3ff4c_0    conda-forge
bump2version              1.0.1              pyh9f0ad1d_0    conda-forge
bzip2                     1.0.8                h7f98852_4    conda-forge
c-ares                    1.18.1               h7f98852_0    conda-forge
c-blosc2                  2.0.4                h5f21a17_1    conda-forge
ca-certificates           2022.5.18.1          ha878542_0    conda-forge
cached-property           1.5.2                hd8ed1ab_1    conda-forge
cached_property           1.5.2              pyha770c72_1    conda-forge
cachetools                4.2.4              pyhd8ed1ab_0    conda-forge
cairo                     1.16.0            ha12eb4b_1010    conda-forge
cairocffi                 1.3.0              pyhd8ed1ab_0    conda-forge
cairosvg                  2.5.2              pyhd8ed1ab_0    conda-forge
cartopy                   0.20.2          py310hb89acbc_4    conda-forge
cenpy                     1.0.0.post4                py_0    conda-forge
certifi                   2022.5.18.1     py310hff52083_0    conda-forge
cffi                      1.15.0          py310h0fdd8cc_0    conda-forge
cfitsio                   4.1.0                hd9d235c_0    conda-forge
cftime                    1.6.0           py310hde88566_1    conda-forge
charls                    2.3.4                h9c3ff4c_0    conda-forge
charset-normalizer        2.0.12             pyhd8ed1ab_0    conda-forge
chroma-py                 0.1.0.dev1                 py_0    conda-forge
click                     8.1.3           py310hff52083_0    conda-forge
click-plugins             1.1.1                      py_0    conda-forge
cligj                     0.7.2              pyhd8ed1ab_1    conda-forge
cloudpickle               2.0.0              pyhd8ed1ab_0    conda-forge
codespell                 2.1.0              pyhd8ed1ab_0    conda-forge
colorama                  0.4.4              pyh9f0ad1d_0    conda-forge
colorcet                  3.0.0              pyhd8ed1ab_0    conda-forge
colour                    0.1.5                      py_0    conda-forge
conda                     4.12.0          py310hff52083_0    conda-forge
conda-package-handling    1.8.1           py310h5764c6d_1    conda-forge
configobj                 5.0.6                      py_0    conda-forge
contextily                1.2.0              pyhd8ed1ab_0    conda-forge
cryptography              36.0.2          py310h597c629_1    conda-forge
cssselect2                0.2.1              pyh9f0ad1d_1    conda-forge
curl                      7.83.0               h7bff187_0    conda-forge
cycler                    0.11.0             pyhd8ed1ab_0    conda-forge
cytoolz                   0.11.2          py310h5764c6d_2    conda-forge
dask                      2022.4.1           pyhd8ed1ab_0    conda-forge
dask-core                 2022.4.1           pyhd8ed1ab_0    conda-forge
dask-geopandas            0.1.0              pyhd8ed1ab_0    conda-forge
databricks-cli            0.16.6                   pypi_0    pypi
dataclasses               0.8                pyhc8e2a94_3    conda-forge
dataclasses-json          0.5.7              pyhd8ed1ab_0    conda-forge
datacube                  1.8.6              pyhd8ed1ab_0    conda-forge
datashader                0.14.0             pyh6c4a22f_0    conda-forge
datashape                 0.5.4                      py_1    conda-forge
dbus                      1.13.6               h5008d03_3    conda-forge
debugpy                   1.6.0           py310hd8f1fbe_0    conda-forge
decorator                 5.1.1              pyhd8ed1ab_0    conda-forge
defusedxml                0.7.1              pyhd8ed1ab_0    conda-forge
delta                     1.0.1                     dev_0    <develop>
descartes                 1.1.0                      py_4    conda-forge
distributed               2022.4.1           pyhd8ed1ab_0    conda-forge
docker                    5.0.3                    pypi_0    pypi
docutils                  0.18.1          py310hff52083_1    conda-forge
donfig                    0.7.0              pyhd8ed1ab_1    conda-forge
double-conversion         3.2.0                h9c3ff4c_0    conda-forge
earthengine-api           0.1.307            pyhd8ed1ab_0    conda-forge
earthpy                   0.9.4              pyhd8ed1ab_0    conda-forge
easystac                  0.0.1              pyhd8ed1ab_0    conda-forge
ee_extra                  0.0.13             pyhd8ed1ab_0    conda-forge
eemont                    0.3.4              pyhd8ed1ab_0    conda-forge
efficientnet-pytorch      0.6.3              pyh9f0ad1d_0    conda-forge
eigen                     3.4.0                h4bd325d_0    conda-forge
einops                    0.4.1              pyhd8ed1ab_0    conda-forge
entrypoints               0.4                pyhd8ed1ab_0    conda-forge
eomaps                    3.5                pyhd8ed1ab_0    conda-forge
executing                 0.8.3              pyhd8ed1ab_0    conda-forge
expat                     2.4.8                h27087fc_0    conda-forge
fasteners                 0.17.3             pyhd8ed1ab_0    conda-forge
ffmpeg                    4.4.1                hd7ab26d_2    conda-forge
ffmpeg-python             0.2.0                      py_0    conda-forge
filelock                  3.6.0              pyhd8ed1ab_0    conda-forge
fiona                     1.8.21          py310h35effa4_1    conda-forge
flask                     2.1.2              pyhd8ed1ab_0    conda-forge
flask-caching             1.10.1             pyhd8ed1ab_0    conda-forge
flask-cors                3.0.10             pyhd8ed1ab_0    conda-forge
flask-restx               0.5.1              pyhd8ed1ab_0    conda-forge
flit-core                 3.7.1              pyhd8ed1ab_0    conda-forge
folium                    0.12.1.post1       pyhd8ed1ab_1    conda-forge
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.14.0               h8e229c2_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
freetype                  2.10.4               h0708190_1    conda-forge
freexl                    1.0.6                h7f98852_0    conda-forge
frozenlist                1.3.0           py310h5764c6d_1    conda-forge
fsspec                    2022.3.0           pyhd8ed1ab_0    conda-forge
future                    0.18.2          py310hff52083_5    conda-forge
fuzzywuzzy                0.18.0             pyhd8ed1ab_0    conda-forge
gast                      0.4.0              pyh9f0ad1d_0    conda-forge
gdal                      3.4.2                    pypi_0    pypi
gdown                     4.4.0              pyhd8ed1ab_0    conda-forge
geeadd                    0.5.4              pyhd8ed1ab_0    conda-forge
geemap                    0.13.4             pyhd8ed1ab_1    conda-forge
gemgis                    0.1.18             pyhd8ed1ab_0    conda-forge
geoalchemy2               0.6.3                      py_0    conda-forge
geocoder                  1.38.1                     py_1    conda-forge
geocube                   0.2.0              pyhd8ed1ab_0    conda-forge
geographiclib             1.52               pyhd8ed1ab_0    conda-forge
geojson                   2.5.0                      py_0    conda-forge
geomet                    0.3.0              pyhd3deb0d_0    conda-forge
geopandas                 0.10.2             pyhd8ed1ab_1    conda-forge
geopandas-base            0.10.2             pyha770c72_1    conda-forge
geopy                     2.2.0              pyhd8ed1ab_0    conda-forge
geos                      3.10.2               h9c3ff4c_0    conda-forge
geospatial                0.5.6              pyhd8ed1ab_2    conda-forge
geospatial-ml             0.1.2              pyhd8ed1ab_2    conda-forge
geotiff                   1.7.1                h509b78c_1    conda-forge
geoviews                  1.9.5              pyhd8ed1ab_0    conda-forge
geoviews-core             1.9.5              pyha770c72_0    conda-forge
gettext                   0.19.8.1          h73d1719_1008    conda-forge
gflags                    2.2.2             he1b5a44_1004    conda-forge
giflib                    5.2.1                h36c2ea0_2    conda-forge
gitdb                     4.0.9              pyhd8ed1ab_0    conda-forge
gitpython                 3.1.27             pyhd8ed1ab_0    conda-forge
gl2ps                     1.4.2                h0708190_0    conda-forge
glew                      2.1.0                h9c3ff4c_2    conda-forge
glog                      0.5.0                h48cff8f_0    conda-forge
gmp                       6.2.1                h58526e2_0    conda-forge
gnutls                    3.6.13               h85f3911_1    conda-forge
google-api-core           1.31.5             pyhd8ed1ab_0    conda-forge
google-api-python-client  1.12.8             pyhd3deb0d_0    conda-forge
google-auth               1.35.0             pyh6c4a22f_0    conda-forge
google-auth-httplib2      0.1.0              pyhd8ed1ab_0    conda-forge
google-auth-oauthlib      0.4.6              pyhd8ed1ab_0    conda-forge
google-cloud-core         1.7.2              pyh6c4a22f_0    conda-forge
google-cloud-storage      2.1.0              pyh6c4a22f_0    conda-forge
google-crc32c             1.1.2           py310h82b6597_2    conda-forge
google-pasta              0.2.0              pyh8c360ce_0    conda-forge
google-resumable-media    2.1.0              pyh6c4a22f_0    conda-forge
googleapis-common-protos  1.56.0          py310hff52083_0    conda-forge
greenlet                  1.1.2           py310hd8f1fbe_2    conda-forge
grpc-cpp                  1.42.0               ha1441d3_1    conda-forge
grpcio                    1.42.0          py310h94ab34a_0    conda-forge
gst-plugins-base          1.20.1               hcf0ee16_1    conda-forge
gstreamer                 1.20.1               hd4edc92_1    conda-forge
gunicorn                  20.1.0                   pypi_0    pypi
h11                       0.13.0             pyhd8ed1ab_0    conda-forge
h3                        3.7.2                h9c3ff4c_0    conda-forge
h3-py                     3.7.4           py310hd8f1fbe_0    conda-forge
h5py                      3.6.0           nompi_py310he751f51_100    conda-forge
hdf4                      4.2.15               h10796ff_3    conda-forge
hdf5                      1.12.1          nompi_h2386368_104    conda-forge
heapdict                  1.0.1                      py_0    conda-forge
here-map-widget-for-jupyter 1.1.3              pyhd8ed1ab_0    conda-forge
holoviews                 1.14.8             pyhd8ed1ab_0    conda-forge
html2text                 2020.1.16                  py_0    conda-forge
httplib2                  0.20.4             pyhd8ed1ab_0    conda-forge
httplib2shim              0.0.3              pyh9f0ad1d_0    conda-forge
hvplot                    0.7.3              pyh6c4a22f_0    conda-forge
icu                       69.1                 h9c3ff4c_0    conda-forge
idna                      3.3                pyhd8ed1ab_0    conda-forge
imagecodecs               2022.2.22       py310h31a0021_4    conda-forge
imageio                   2.18.0             pyhcf75d05_0    conda-forge
importlib-metadata        4.11.3          py310hff52083_1    conda-forge
importlib_metadata        4.11.3               hd8ed1ab_1    conda-forge
importlib_resources       5.7.1              pyhd8ed1ab_0    conda-forge
iniconfig                 1.1.1              pyh9f0ad1d_0    conda-forge
intel-openmp              2022.0.1          h06a4308_3633  
ipycanvas                 0.11.0             pyhd8ed1ab_0    conda-forge
ipyevents                 2.0.1              pyhd8ed1ab_0    conda-forge
ipyfilechooser            0.6.0              pyhd8ed1ab_0    conda-forge
ipygany                   0.5.0              pyhd8ed1ab_0    conda-forge
ipykernel                 6.13.0          py310hfdc917e_0    conda-forge
ipyleaflet                0.16.0             pyhd8ed1ab_3    conda-forge
ipympl                    0.9.1              pyhd8ed1ab_0    conda-forge
ipynb-py-convert          0.4.6              pyh9f0ad1d_0    conda-forge
ipysheet                  0.5.0              pyhd8ed1ab_0    conda-forge
ipython                   8.3.0           py310hff52083_0    conda-forge
ipython_genutils          0.2.0                      py_1    conda-forge
ipytree                   0.2.1              pyhd8ed1ab_0    conda-forge
ipyvtklink                0.2.2              pyhd8ed1ab_0    conda-forge
ipywidgets                7.7.0              pyhd8ed1ab_0    conda-forge
isort                     4.3.21                   pypi_0    pypi
itsdangerous              2.1.2              pyhd8ed1ab_0    conda-forge
jbig                      2.1               h7f98852_2003    conda-forge
jedi                      0.18.1          py310hff52083_1    conda-forge
jinja2                    3.1.1              pyhd8ed1ab_0    conda-forge
jmespath                  1.0.0              pyhd8ed1ab_0    conda-forge
joblib                    1.1.0              pyhd8ed1ab_0    conda-forge
jpeg                      9e                   h166bdaf_1    conda-forge
json-c                    0.16                 hc379101_0    conda-forge
json5                     0.9.5              pyh9f0ad1d_0    conda-forge
jsoncpp                   1.9.5                h4bd325d_1    conda-forge
jsonschema                4.4.0              pyhd8ed1ab_0    conda-forge
jupyter_client            7.3.0              pyhd8ed1ab_0    conda-forge
jupyter_core              4.9.2           py310hff52083_0    conda-forge
jupyter_server            1.17.0             pyhd8ed1ab_0    conda-forge
jupyterlab                3.3.4              pyhd8ed1ab_0    conda-forge
jupyterlab_pygments       0.2.2              pyhd8ed1ab_0    conda-forge
jupyterlab_server         2.13.0             pyhd8ed1ab_1    conda-forge
jupyterlab_widgets        1.1.0              pyhd8ed1ab_0    conda-forge
jupytext                  1.13.8             pyh4b9bcc7_0    conda-forge
jxrlib                    1.1                  h7f98852_2    conda-forge
kealib                    1.4.14               h87e4c3c_3    conda-forge
keplergl                  0.3.2              pyhd8ed1ab_0    conda-forge
keras                     2.7.0              pyhd8ed1ab_0    conda-forge
keras-preprocessing       1.1.2              pyhd8ed1ab_0    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
kiwisolver                1.4.2           py310hbf28c38_1    conda-forge
kornia                    0.6.4              pyhd8ed1ab_0    conda-forge
krb5                      1.19.3               h3790be6_0    conda-forge
lame                      3.100             h7f98852_1001    conda-forge
large-image               1.14.2             pyhd8ed1ab_0    conda-forge
large-image-source-gdal   1.14.1             pyhd8ed1ab_1    conda-forge
lark-parser               0.12.0             pyhd8ed1ab_0    conda-forge
laspy                     2.1.2              pyh8a188c0_0    conda-forge
lazy-object-proxy         1.7.1                    pypi_0    pypi
lcms2                     2.12                 hddcbb42_0    conda-forge
ld_impl_linux-64          2.36.1               hea4e1c9_2    conda-forge
leafmap                   0.9.2              pyhd8ed1ab_1    conda-forge
lerc                      3.0                  h9c3ff4c_0    conda-forge
libaec                    1.0.6                h9c3ff4c_0    conda-forge
libarchive                3.5.2                hccf745f_1    conda-forge
libavif                   0.10.1               h166bdaf_0    conda-forge
libblas                   3.9.0            14_linux64_mkl    conda-forge
libbrotlicommon           1.0.9                h166bdaf_7    conda-forge
libbrotlidec              1.0.9                h166bdaf_7    conda-forge
libbrotlienc              1.0.9                h166bdaf_7    conda-forge
libcblas                  3.9.0            14_linux64_mkl    conda-forge
libclang                  13.0.1          default_hc23dcda_0    conda-forge
libcrc32c                 1.1.2                h9c3ff4c_0    conda-forge
libcurl                   7.83.0               h7bff187_0    conda-forge
libdap4                   3.20.6               hd7c4107_2    conda-forge
libdeflate                1.10                 h7f98852_0    conda-forge
libdrm                    2.4.109              h7f98852_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 h516909a_1    conda-forge
libevent                  2.1.10               h9b69904_4    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 11.2.0              h1d223b6_16    conda-forge
libgdal                   3.4.2                hb785293_6    conda-forge
libgfortran-ng            11.2.0              h69a702a_16    conda-forge
libgfortran5              11.2.0              h5c6108e_16    conda-forge
libglib                   2.70.2               h174f98d_4    conda-forge
libglu                    9.0.0             he1b5a44_1001    conda-forge
libgomp                   11.2.0              h1d223b6_16    conda-forge
libiconv                  1.16                 h516909a_0    conda-forge
libkml                    1.3.0             h238a007_1014    conda-forge
liblapack                 3.9.0            14_linux64_mkl    conda-forge
libllvm11                 11.1.0               hf817b99_3    conda-forge
libllvm13                 13.0.1               hf817b99_2    conda-forge
libmamba                  0.23.0               hd8a31e3_1    conda-forge
libmambapy                0.23.0          py310hab0e683_1    conda-forge
libnetcdf                 4.8.1           nompi_h329d8a1_102    conda-forge
libnghttp2                1.47.0               h727a467_0    conda-forge
libnsl                    2.0.0                h7f98852_0    conda-forge
libogg                    1.3.4                h7f98852_1    conda-forge
libopus                   1.3.1                h7f98852_1    conda-forge
libpciaccess              0.16                 h516909a_0    conda-forge
libpng                    1.6.37               h21135ba_2    conda-forge
libpq                     14.2                 hd57d9b9_0    conda-forge
libprotobuf               3.19.4               h780b84a_0    conda-forge
libpysal                  4.6.2              pyhd8ed1ab_0    conda-forge
librttopo                 1.1.0                hf69c175_9    conda-forge
libsodium                 1.0.18               h36c2ea0_1    conda-forge
libsolv                   0.7.22               h6239696_0    conda-forge
libspatialindex           1.9.3                h9c3ff4c_4    conda-forge
libspatialite             5.0.1               ha867d66_15    conda-forge
libssh2                   1.10.0               ha56f1ee_2    conda-forge
libstdcxx-ng              11.2.0              he4da1e4_16    conda-forge
libtheora                 1.1.1             h7f98852_1005    conda-forge
libthrift                 0.15.0               he6d91bd_1    conda-forge
libtiff                   4.3.0                h542a066_3    conda-forge
libutf8proc               2.7.0                h7f98852_0    conda-forge
libuuid                   2.32.1            h7f98852_1000    conda-forge
libva                     2.14.0               h7f98852_0    conda-forge
libvorbis                 1.3.7                h9c3ff4c_0    conda-forge
libvpx                    1.11.0               h9c3ff4c_3    conda-forge
libwebp-base              1.2.2                h7f98852_1    conda-forge
libxcb                    1.13              h7f98852_1004    conda-forge
libxkbcommon              1.0.3                he3ba5ed_0    conda-forge
libxml2                   2.9.12               h885dcf4_1    conda-forge
libzip                    1.8.0                h4de3113_1    conda-forge
libzlib                   1.2.11            h166bdaf_1014    conda-forge
libzopfli                 1.0.3                h9c3ff4c_0    conda-forge
lightgbm                  3.3.2           py310h122e73d_0    conda-forge
llvmlite                  0.38.0          py310h58363a5_1    conda-forge
localtileserver           0.5.5              pyhd8ed1ab_0    conda-forge
locket                    1.0.0              pyhd8ed1ab_0    conda-forge
loguru                    0.6.0           py310hff52083_1    conda-forge
logzero                   1.7.0           py310hff52083_2    conda-forge
lz4                       4.0.0           py310h5d5e884_1    conda-forge
lz4-c                     1.9.3                h9c3ff4c_1    conda-forge
lzo                       2.10              h516909a_1000    conda-forge
mako                      1.2.0                    pypi_0    pypi
mamba                     0.23.0          py310hf87f941_1    conda-forge
mapboxgl                  0.10.2                     py_1    conda-forge
mapclassify               2.4.3              pyhd8ed1ab_0    conda-forge
markdown                  3.3.6              pyhd8ed1ab_0    conda-forge
markdown-it-py            2.1.0              pyhd8ed1ab_0    conda-forge
markupsafe                2.1.1           py310h5764c6d_1    conda-forge
marshmallow               3.15.0             pyhd8ed1ab_1    conda-forge
marshmallow-enum          1.5.1              pyh9f0ad1d_3    conda-forge
matplotlib                3.4.3           py310hff52083_2    conda-forge
matplotlib-base           3.4.3           py310h23f4a51_2    conda-forge
matplotlib-inline         0.1.3              pyhd8ed1ab_0    conda-forge
mccabe                    0.6.1                    pypi_0    pypi
mdit-py-plugins           0.3.0              pyhd8ed1ab_0    conda-forge
mdurl                     0.1.0              pyhd8ed1ab_0    conda-forge
mercantile                1.2.1              pyhd8ed1ab_0    conda-forge
mistune                   0.8.4           py310h6acc77f_1005    conda-forge
mkl                       2022.0.1           h06a4308_117  
mlflow                    1.25.1                   pypi_0    pypi
morecantile               3.1.2              pyhd8ed1ab_0    conda-forge
movingpandas              0.9rc3             pyhd8ed1ab_0    conda-forge
msgpack-python            1.0.3           py310hbf28c38_1    conda-forge
multidict                 6.0.2           py310h5764c6d_1    conda-forge
multipledispatch          0.6.0                      py_0    conda-forge
munch                     2.5.0                      py_0    conda-forge
mypy_extensions           0.4.3           py310hff52083_5    conda-forge
mysql-common              8.0.29               haf5c9bc_0    conda-forge
mysql-libs                8.0.29               h28c427c_0    conda-forge
nbclassic                 0.3.7              pyhd8ed1ab_0    conda-forge
nbclient                  0.5.13             pyhd8ed1ab_0    conda-forge
nbconvert                 6.5.0              pyhd8ed1ab_0    conda-forge
nbconvert-core            6.5.0              pyhd8ed1ab_0    conda-forge
nbconvert-pandoc          6.5.0              pyhd8ed1ab_0    conda-forge
nbformat                  5.3.0              pyhd8ed1ab_0    conda-forge
ncurses                   6.3                  h27087fc_1    conda-forge
nest-asyncio              1.5.5              pyhd8ed1ab_0    conda-forge
netcdf4                   1.5.8           nompi_py310hd7ca5b8_101    conda-forge
nettle                    3.6                  he412f7d_0    conda-forge
networkx                  2.8                pyhd8ed1ab_0    conda-forge
ninja                     1.10.2               h4bd325d_1    conda-forge
noise                     1.2.2           py310h6acc77f_1002    conda-forge
notebook                  6.4.11             pyha770c72_0    conda-forge
notebook-shim             0.1.0              pyhd8ed1ab_0    conda-forge
nspr                      4.32                 h9c3ff4c_1    conda-forge
nss                       3.77                 h2350873_0    conda-forge
numba                     0.55.1          py310hc55943c_0    conda-forge
numcodecs                 0.9.1           py310h122e73d_2    conda-forge
numexpr                   2.7.3           py310hb5077e9_1    conda-forge
numpy                     1.21.6          py310h45f3432_0    conda-forge
oauthlib                  3.2.0              pyhd8ed1ab_0    conda-forge
odc-geo                   0.1.2              pyhd8ed1ab_0    conda-forge
odc-stac                  0.2.4              pyhd8ed1ab_0    conda-forge
olefile                   0.46               pyh9f0ad1d_1    conda-forge
omegaconf                 2.1.2           py310hff52083_0    conda-forge
openh264                  2.1.1                h780b84a_0    conda-forge
openjpeg                  2.4.0                hb52868f_1    conda-forge
openssl                   1.1.1o               h166bdaf_0    conda-forge
opt_einsum                3.3.0              pyhd8ed1ab_1    conda-forge
orc                       1.7.2                h1be678f_0    conda-forge
orjson                    3.6.8           py310h5764c6d_0    conda-forge
osmnx                     1.1.2              pyhd8ed1ab_0    conda-forge
owslib                    0.25.0             pyhd8ed1ab_0    conda-forge
packaging                 21.3               pyhd8ed1ab_0    conda-forge
palettable                3.3.0                      py_0    conda-forge
pandas                    1.4.2           py310h769672d_1    conda-forge
pandoc                    2.18                 ha770c72_0    conda-forge
pandocfilters             1.5.0              pyhd8ed1ab_0    conda-forge
panel                     0.12.6             pyhd8ed1ab_0    conda-forge
param                     1.12.1             pyh6c4a22f_0    conda-forge
parquet-cpp               1.5.1                         2    conda-forge
parso                     0.8.3              pyhd8ed1ab_0    conda-forge
partd                     1.2.0              pyhd8ed1ab_0    conda-forge
pathspec                  0.9.0              pyhd8ed1ab_0    conda-forge
patsy                     0.5.2              pyhd8ed1ab_0    conda-forge
pcre                      8.45                 h9c3ff4c_0    conda-forge
pexpect                   4.8.0              pyh9f0ad1d_2    conda-forge
pickleshare               0.7.5                   py_1003    conda-forge
pillow                    8.4.0           py310h07f4688_0    conda-forge
pip                       22.0.4             pyhd8ed1ab_0    conda-forge
pixman                    0.40.0               h36c2ea0_0    conda-forge
planetary-computer        0.4.6              pyhd8ed1ab_0    conda-forge
platformdirs              2.5.1              pyhd8ed1ab_0    conda-forge
plotly                    5.7.0              pyhd8ed1ab_0    conda-forge
pluggy                    1.0.0           py310hff52083_3    conda-forge
pooch                     1.6.0              pyhd8ed1ab_0    conda-forge
poppler                   22.01.0              h1434ded_2    conda-forge
poppler-data              0.4.11               hd8ed1ab_0    conda-forge
portalocker               2.4.0                    pypi_0    pypi
postgresql                14.2                 h2510834_0    conda-forge
pretrainedmodels          0.7.4              pyhd8ed1ab_2    conda-forge
proj                      9.0.0                h93bde94_1    conda-forge
prometheus-flask-exporter 0.20.1                   pypi_0    pypi
prometheus_client         0.14.1             pyhd8ed1ab_0    conda-forge
prompt-toolkit            3.0.29             pyha770c72_0    conda-forge
proplot                   0.9.5              pyhd8ed1ab_1    conda-forge
protobuf                  3.19.4          py310h122e73d_0    conda-forge
pscript                   0.7.5              pyhd3deb0d_0    conda-forge
psutil                    5.9.0           py310h5764c6d_1    conda-forge
psycopg2                  2.9.3           py310h6acc77f_0    conda-forge
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
ptyprocess                0.7.0              pyhd3deb0d_0    conda-forge
pugixml                   1.11.4               h9c3ff4c_0    conda-forge
pure_eval                 0.2.2              pyhd8ed1ab_0    conda-forge
py                        1.11.0             pyh6c4a22f_0    conda-forge
pyarrow                   6.0.1           py310h1a3fb3d_8_cpu    conda-forge
pyasn1                    0.4.8                      py_0    conda-forge
pyasn1-modules            0.2.7                      py_0    conda-forge
pybind11-abi              4                    hd8ed1ab_3    conda-forge
pycosat                   0.6.3           py310h5764c6d_1010    conda-forge
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pycrs                     1.0.2                      py_0    conda-forge
pyct                      0.4.6                      py_0    conda-forge
pyct-core                 0.4.6                      py_0    conda-forge
pydantic                  1.9.0           py310h5764c6d_1    conda-forge
pydeck                    0.7.1              pyh6c4a22f_0    conda-forge
pydeprecate               0.3.1              pyhd8ed1ab_0    conda-forge
pyepsg                    0.4.0                      py_0    conda-forge
pygeos                    0.12.0          py310hb974679_2    conda-forge
pygments                  2.12.0             pyhd8ed1ab_0    conda-forge
pyjwt                     2.3.0              pyhd8ed1ab_1    conda-forge
pykdtree                  1.3.4           py310hde88566_3    conda-forge
pylint                    2.5.3                    pypi_0    pypi
pympler                   0.9                pyh9f0ad1d_0    conda-forge
pyntcloud                 0.2.0              pyhd8ed1ab_0    conda-forge
pyopenssl                 22.0.0             pyhd8ed1ab_0    conda-forge
pyorbital                 1.7.1              pyhd8ed1ab_0    conda-forge
pyparsing                 3.0.8              pyhd8ed1ab_0    conda-forge
pyproj                    3.3.1           py310h9bf108f_0    conda-forge
pyqt                      5.12.3          py310hff52083_8    conda-forge
pyqt-impl                 5.12.3          py310h1f8e252_8    conda-forge
pyqt5-sip                 4.19.18         py310h122e73d_8    conda-forge
pyqtchart                 5.12            py310hfcd6d55_8    conda-forge
pyqtwebengine             5.12.1          py310hfcd6d55_8    conda-forge
pyresample                1.23.0          py310h769672d_1    conda-forge
pyrsistent                0.18.1          py310h5764c6d_1    conda-forge
pyshp                     2.2.0              pyhd8ed1ab_0    conda-forge
pysocks                   1.7.1           py310hff52083_5    conda-forge
pyspectral                0.11.0             pyhd8ed1ab_0    conda-forge
pystac                    1.1.0              pyhd8ed1ab_0    conda-forge
pystac-client             0.3.0              pyhd8ed1ab_0    conda-forge
pytables                  3.7.0           py310hf5df6ce_0    conda-forge
pytest                    7.1.2           py310hff52083_0    conda-forge
python                    3.10.4          h9a8a25e_0_cpython    conda-forge
python-box                6.0.2              pyhd8ed1ab_0    conda-forge
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python-fastjsonschema     2.15.3             pyhd8ed1ab_0    conda-forge
python-flatbuffers        2.0                pyhd8ed1ab_0    conda-forge
python-geotiepoints       1.4.0           py310hde88566_0    conda-forge
python-levenshtein        0.12.2          py310h5764c6d_2    conda-forge
python-mss                6.1.0              pyhd3deb0d_0    conda-forge
python-tzdata             2022.1             pyhd8ed1ab_0    conda-forge
python_abi                3.10                    2_cp310    conda-forge
pytorch                   1.11.0          cpu_py310h2272b30_0    conda-forge
pytorch-lightning         1.5.8              pyhd8ed1ab_0    conda-forge
pytz                      2022.1             pyhd8ed1ab_0    conda-forge
pytz-deprecation-shim     0.1.0.post0     py310hff52083_1    conda-forge
pyu2f                     0.1.5              pyhd8ed1ab_0    conda-forge
pyvista                   0.34.0             pyhd8ed1ab_0    conda-forge
pyviz_comms               2.2.0              pyhd8ed1ab_0    conda-forge
pywavelets                1.3.0           py310hde88566_1    conda-forge
pyyaml                    6.0             py310h5764c6d_4    conda-forge
pyzmq                     22.3.0          py310h330234f_2    conda-forge
qt                        5.12.9               h1304e3e_6    conda-forge
querystring-parser        1.2.4                    pypi_0    pypi
radiant-mlhub             0.4.1              pyhd8ed1ab_0    conda-forge
rasterio                  1.2.10          py310hdadb6e9_5    conda-forge
rasterstats               0.16.0             pyhd8ed1ab_0    conda-forge
ratelim                   0.1.6                      py_2    conda-forge
re2                       2021.11.01           h9c3ff4c_0    conda-forge
readline                  8.1                  h46c0cb4_0    conda-forge
reproc                    14.2.3               h7f98852_0    conda-forge
reproc-cpp                14.2.3               h9c3ff4c_0    conda-forge
requests                  2.27.1             pyhd8ed1ab_0    conda-forge
requests-futures          1.0.0                    pypi_0    pypi
requests-oauthlib         1.3.1              pyhd8ed1ab_0    conda-forge
rio-cogeo                 3.2.0              pyhd8ed1ab_0    conda-forge
rioxarray                 0.11.1             pyhd8ed1ab_0    conda-forge
rsa                       4.8                pyhd8ed1ab_0    conda-forge
rtree                     1.0.0           py310hbdcdc62_1    conda-forge
ruamel.yaml               0.17.21         py310h5764c6d_1    conda-forge
ruamel.yaml.clib          0.2.6           py310h5764c6d_1    conda-forge
ruamel_yaml               0.15.80         py310h6acc77f_1006    conda-forge
s2cloudless               1.5.0              pyhd8ed1ab_0    conda-forge
s2n                       1.0.10               h9b69904_0    conda-forge
s3transfer                0.5.2              pyhd8ed1ab_0    conda-forge
sankee                    0.0.7              pyhd8ed1ab_0    conda-forge
sarpy                     1.2.69             pyhd8ed1ab_0    conda-forge
satpy                     0.36.0             pyhd8ed1ab_0    conda-forge
scikit-gstat              1.0.1           py310hff52083_0    conda-forge
scikit-image              0.19.2          py310hb5077e9_0    conda-forge
scikit-learn              1.0.2           py310h1246948_0    conda-forge
scikit-plot               0.3.7                      py_1    conda-forge
scipy                     1.8.0           py310hea5193d_1    conda-forge
scooby                    0.5.12             pyhd8ed1ab_0    conda-forge
seaborn                   0.11.2               hd8ed1ab_0    conda-forge
seaborn-base              0.11.2             pyhd8ed1ab_0    conda-forge
segmentation-models-pytorch 0.2.1              pyhd8ed1ab_0    conda-forge
semver                    2.13.0             pyh9f0ad1d_0    conda-forge
send2trash                1.8.0              pyhd8ed1ab_0    conda-forge
sentinelhub               3.4.4              pyhd8ed1ab_0    conda-forge
sentinelsat               1.1.1              pyhd8ed1ab_0    conda-forge
server-thread             0.1.0              pyhd8ed1ab_0    conda-forge
setuptools                62.1.0          py310hff52083_0    conda-forge
shapely                   1.8.0           py310hb974679_6    conda-forge
simplejson                3.17.6          py310h5764c6d_1    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
sleef                     3.5.1                h9b69904_2    conda-forge
sliderule                 1.4.1              pyhd8ed1ab_0    conda-forge
smmap                     3.0.5              pyh44b312d_0    conda-forge
snappy                    1.1.8                he1b5a44_3    conda-forge
sniffio                   1.2.0           py310hff52083_3    conda-forge
snuggs                    1.4.7                      py_0    conda-forge
sortedcontainers          2.4.0              pyhd8ed1ab_0    conda-forge
soupsieve                 2.3.1              pyhd8ed1ab_0    conda-forge
spyndex                   0.0.5              pyhd8ed1ab_0    conda-forge
sqlalchemy                1.4.36          py310h5764c6d_0    conda-forge
sqlite                    3.38.3               h4ff8645_0    conda-forge
sqlparse                  0.4.2                    pypi_0    pypi
stack_data                0.2.0              pyhd8ed1ab_0    conda-forge
stackstac                 0.4.1              pyhd8ed1ab_0    conda-forge
statsmodels               0.13.2          py310h96516ba_0    conda-forge
streamlit                 1.8.0              pyhd8ed1ab_0    conda-forge
streamlit-folium          0.6.7              pyhd8ed1ab_0    conda-forge
stringcase                1.2.0                      py_0    conda-forge
svt-av1                   0.9.1                h27087fc_0    conda-forge
tabulate                  0.8.9                    pypi_0    pypi
tbb                       2021.5.0             h924138e_1    conda-forge
tbb-devel                 2021.5.0             h924138e_1    conda-forge
tblib                     1.7.0              pyhd8ed1ab_0    conda-forge
tenacity                  8.0.1              pyhd8ed1ab_0    conda-forge
tensorboard               2.6.0              pyhd8ed1ab_1    conda-forge
tensorboard-data-server   0.6.0           py310h597c629_2    conda-forge
tensorboard-plugin-wit    1.8.1              pyhd8ed1ab_0    conda-forge
tensorflow                2.7.0           cpu_py310hd1aba9c_0    conda-forge
tensorflow-addons         0.16.1                   pypi_0    pypi
tensorflow-base           2.7.0           cpu_py310h8d3bea7_0    conda-forge
tensorflow-estimator      2.7.0           cpu_py310hb7a2f4b_0    conda-forge
termcolor                 1.1.0                      py_2    conda-forge
terminado                 0.13.3          py310hff52083_1    conda-forge
threadpoolctl             3.1.0              pyh8a188c0_0    conda-forge
tifffile                  2022.4.28          pyhd8ed1ab_0    conda-forge
tiledb                    2.8.2                h1e4a385_0    conda-forge
timm                      0.4.12             pyhd8ed1ab_0    conda-forge
tinycss2                  1.1.1              pyhd8ed1ab_0    conda-forge
tk                        8.6.12               h27826a3_0    conda-forge
tokenize-rt               4.2.1              pyhd8ed1ab_0    conda-forge
toml                      0.10.2             pyhd8ed1ab_0    conda-forge
tomli                     2.0.1              pyhd8ed1ab_0    conda-forge
toolz                     0.11.2             pyhd8ed1ab_0    conda-forge
torchgeo                  0.2.0              pyhd8ed1ab_0    conda-forge
torchmetrics              0.8.1              pyhd8ed1ab_0    conda-forge
torchvision               0.12.0          cpu_py310hafc6a86_1    conda-forge
tornado                   6.1             py310h5764c6d_3    conda-forge
tqdm                      4.64.0             pyhd8ed1ab_0    conda-forge
traitlets                 5.1.1              pyhd8ed1ab_0    conda-forge
traittypes                0.2.1              pyh9f0ad1d_2    conda-forge
trollimage                1.18.3             pyhd8ed1ab_0    conda-forge
trollsift                 0.4.0              pyhd8ed1ab_0    conda-forge
typed-ast                 1.5.3           py310h5764c6d_0    conda-forge
typeguard                 2.13.3                   pypi_0    pypi
typing-extensions         4.2.0                hd8ed1ab_1    conda-forge
typing_extensions         4.2.0              pyha770c72_1    conda-forge
typing_inspect            0.7.1              pyh6c4a22f_0    conda-forge
tzcode                    2022a                h166bdaf_0    conda-forge
tzdata                    2022a                h191b570_0    conda-forge
tzlocal                   4.2             py310hff52083_0    conda-forge
uritemplate               3.0.1                      py_0    conda-forge
urllib3                   1.26.9             pyhd8ed1ab_0    conda-forge
usgs                      0.2.8                    pypi_0    pypi
utfcpp                    3.2.1                ha770c72_0    conda-forge
utm                       0.7.0              pyhd8ed1ab_0    conda-forge
uvicorn                   0.17.6          py310hff52083_1    conda-forge
validators                0.18.2             pyhd3deb0d_0    conda-forge
verde                     1.7.0              pyhd8ed1ab_0    conda-forge
voila                     0.3.5              pyhd8ed1ab_0    conda-forge
vtk                       9.1.0           qt_py310hf3393c1_207    conda-forge
watchdog                  2.1.7           py310hff52083_1    conda-forge
wcwidth                   0.2.5              pyh9f0ad1d_2    conda-forge
webencodings              0.5.1                      py_1    conda-forge
websocket-client          1.3.2              pyhd8ed1ab_0    conda-forge
websockets                10.3            py310h5764c6d_0    conda-forge
werkzeug                  2.1.2              pyhd8ed1ab_0    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
whitebox                  2.1.2              pyhd8ed1ab_0    conda-forge
whiteboxgui               0.7.0              pyhd8ed1ab_0    conda-forge
widgetsnbextension        3.6.0           py310hff52083_0    conda-forge
wrapt                     1.12.1                   pypi_0    pypi
wxee                      0.3.2              pyhd8ed1ab_0    conda-forge
x264                      1!161.3030           h7f98852_1    conda-forge
x265                      3.5                  h924138e_3    conda-forge
xarray                    2022.3.0           pyhd8ed1ab_0    conda-forge
xarray-spatial            0.3.3              pyhd8ed1ab_0    conda-forge
xerces-c                  3.2.3                h8ce2273_4    conda-forge
xmltodict                 0.12.0                     py_0    conda-forge
xmovie                    0.3.1              pyhd8ed1ab_0    conda-forge
xorg-fixesproto           5.0               h7f98852_1002    conda-forge
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.0.10               h7f98852_0    conda-forge
xorg-libsm                1.2.3             hd9c2040_1000    conda-forge
xorg-libx11               1.7.2                h7f98852_0    conda-forge
xorg-libxau               1.0.9                h7f98852_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h7f98852_1    conda-forge
xorg-libxfixes            5.0.3             h7f98852_1004    conda-forge
xorg-libxrender           0.9.10            h7f98852_1003    conda-forge
xorg-libxt                1.2.1                h7f98852_2    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h7f98852_1002    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xyzservices               2022.4.0           pyhd8ed1ab_0    conda-forge
xz                        5.2.5                h516909a_1    conda-forge
yaml                      0.2.5                h7f98852_2    conda-forge
yaml-cpp                  0.6.3                he1b5a44_4    conda-forge
yarl                      1.7.2           py310h5764c6d_2    conda-forge
zarr                      2.11.3             pyhd8ed1ab_0    conda-forge
zeromq                    4.3.4                h9c3ff4c_1    conda-forge
zfp                       0.5.5                h9c3ff4c_8    conda-forge
zict                      2.2.0              pyhd8ed1ab_0    conda-forge
zipp                      3.8.0              pyhd8ed1ab_0    conda-forge
zlib                      1.2.11            h166bdaf_1014    conda-forge
zstd                      1.5.2                ha95c52a_0    conda-forge

BUG: Overlap breaks predictions on trained networks

When predicting single band prediction or multi-band predictions with the --overlap option the output tiff results in a grid of nodata or 1 values.

Example command:
classify --prob --config cloud_shadow.yaml band_reduced_cloud_shadow_model_bandorder2.SavedModel --outprefix bandorder2_scaleoroffset2_overlap128_withprob_ --overlap 128

image

Better Class Handling

The class label id transformation is confusing to deal with in other aspects of the system. Should make it more consistent.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.