Giter VIP home page Giter VIP logo

decorrelation's Introduction

Decorrelation

A InSAR postprocessing tool in big data era

This package provide functions for InSAR post-processing which refers as processing after SAR images co-registration and geocoding. The functions include PS/DS identification, coherence matrix estimation, phase linking etc.

What make Decorrelation different?

  • Decorrelation implements state-of-art InSAR techniques. Currently it includes advanced PS/DS identification, phase linking and deep-learning-based methods that performs much better than the classic one.
  • Decorrelation runs fast. As many of InSAR processing are pixel-wise or patch-wise manipulation, Most of Decorrelation functions are implemented with well-optimized GPU code. Furthermore, with the support of Dask, Decorrelation can be runed on multi-GPUs to further accelerate the processing and get rid of the limitation of GPU memory.
  • Decorrelation support interative big data visulization. Since the SAR data volume increase dramatically recently and in near future, not only the processing time is a concern (which is largely solved as Decorrelation runs so fast!), the inspection on the images is a problem. Decorrelation provide Datashader-based functions for accurate, interative representation on even largest time series InSAR data.

Please refer to the Documentation for detailed usage.

Warning

Due to the heavy dependence on CuPy and CUDA, this package only works on device with Nivida GPU.

Warning

This package is under intensive development. API is subjected to change without any noticement.

Install

Because of GPU driver and CUDA Version Compatibility, there is no simple solution for CUDA related packages installation. Users need to successfully install cupy and dask_cuda first.

Here is some tips for installing them. Generally, the cuda driver is alrealy installed and maintained by the system administrator. Users only need to determine the right cudatoolkit version. Frist run

nvidia-smi

It will prints something like:

...
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17   Driver Version: 525.105.17   CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
...

The CUDA Version is the maxminum cudatoolkit version that supported by the current CUDA driver. Here we use version 11.8 as an example. Then you can install the needed cudatoolkit, cupy, dask_cuda by:

conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit
conda install -c conda-forge cupy cuda-version=11.8
conda install -c rapidsai -c conda-forge -c nvidia dask-cuda cuda-version=11.8

Then

With conda:

conda install -c conda-forge decorrelation

Or with pip:

pip install decorrelation

In development mode:

git clone [email protected]:kanglcn/decorrelation.git ./decorrelation
cd ./decorrelation
pip install -e '.[dev]'

How to use

Read the software architecture first.

Contact us

  • Most discussion happens on GitHub. Feel free to open an issue or comment on any open issue or pull request.
  • use github discussions to ask questions or leave comments.

Contribution

  • Pull requests are welcomed! Before making a pull request, please open an issue to talk about it.
  • We have notice many excellent open-source packages are rarely paid attention to due to lack of documentation. The package is developed with the nbdev, a notebook-driven development platform. Developers only need to simply write notebooks with lightweight markup and get high-quality documentation, tests, continuous integration, and packaging automatically.

decorrelation's People

Contributors

kanglcn avatar sianxiaochn avatar

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.