arosics

AROSICS - Automated and Robust Open-Source Image Co-Registration Software

https://github.com/gfz/arosics

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: mdpi.com, zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.0%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

AROSICS - Automated and Robust Open-Source Image Co-Registration Software

Basic Info
Statistics
  • Stars: 184
  • Watchers: 7
  • Forks: 31
  • Open Issues: 19
  • Releases: 72
Created almost 6 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog Contributing License Citation Authors Zenodo

README.rst

.. figure:: https://danschef.git-pages.gfz-potsdam.de/arosics/images/arosics_logo.png
    :target: https://git.gfz-potsdam.de/danschef/arosics
    :align: center

==================================================================================================
An Automated and Robust Open-Source Image Co-Registration Software for Multi-Sensor Satellite Data
==================================================================================================

* Free software: Apache 2.0
* **Documentation:** https://danschef.git-pages.gfz-potsdam.de/arosics/doc/
* The (open-access) **paper** corresponding to this software repository can be found here:
  `Scheffler et al. 2017 `__
  (cite as: Scheffler D, Hollstein A, Diedrich H, Segl K, Hostert P. AROSICS: An Automated and Robust Open-Source
  Image Co-Registration Software for Multi-Sensor Satellite Data. Remote Sensing. 2017; 9(7):676).
* Information on how to **cite the AROSICS Python package** can be found in the
  `CITATION `__ file.
* Submit feedback by filing an issue `here `__
  or join our chat here: |Gitter|

.. |Gitter| image:: https://badges.gitter.im/Join%20Chat.svg
    :target: https://gitter.im/arosics/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link
    :alt: https://gitter.im/arosics/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link

Status
------

.. image:: https://git.gfz-potsdam.de/danschef/arosics/badges/main/pipeline.svg
        :target: https://git.gfz-potsdam.de/danschef/arosics/commits/main
.. image:: https://git.gfz-potsdam.de/danschef/arosics/badges/main/coverage.svg
        :target: https://danschef.git-pages.gfz-potsdam.de/arosics/coverage/
.. image:: https://img.shields.io/pypi/v/arosics.svg
        :target: https://pypi.python.org/pypi/arosics
.. image:: https://img.shields.io/conda/vn/conda-forge/arosics.svg
        :target: https://anaconda.org/conda-forge/arosics
.. image:: https://img.shields.io/pypi/l/arosics.svg
        :target: https://git.gfz-potsdam.de/danschef/arosics/blob/main/LICENSE
.. image:: https://img.shields.io/pypi/pyversions/arosics.svg
        :target: https://img.shields.io/pypi/pyversions/arosics.svg
.. image:: https://img.shields.io/pypi/dm/arosics.svg
        :target: https://pypi.python.org/pypi/arosics
.. image:: https://zenodo.org/badge/253474603.svg
        :target: https://zenodo.org/badge/latestdoi/253474603

See also the latest coverage_ report and the pytest_ HTML report.

Feature overview
----------------

AROSICS is a python package to perform **automatic subpixel co-registration** of two satellite image datasets
based on an image matching approach working in the frequency domain, combined with a multistage workflow for
effective detection of false-positives.

It detects and corrects **local as well as global misregistrations** between two input images in the subpixel scale,
that are often present in satellite imagery. The algorithm is robust against the typical difficulties of
multi-sensoral/multi-temporal images. Clouds are automatically handled by the implemented outlier detection algorithms.
The user may provide user-defined masks to exclude certain image areas from tie point creation. The image overlap area
is automatically detected. AROSICS supports a wide range of input data formats and can be used from the command
line (without any Python experience) or as a normal Python package.


Global co-registration - fast but only for static X/Y-shifts
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Only a global X/Y translation is computed within a small subset of the input images (window position is adjustable).
This allows very fast co-registration but only corrects for translational (global) X/Y shifts.
The calculated subpixel-shifts are (by default) applied to the geocoding information of the output image.
No spatial resampling is done automatically as long as both input images have the same projection. However, AROSICS
also allows to align the output image to the reference image coordinate grid if needed.

Here is an example of a Landsat-8 / Sentinel-2 image pair before and after co-registration using AROSICS:

.. image:: https://git.gfz-potsdam.de/danschef/arosics/raw/main/docs/images/animation_testcase1_zoom_L8_S2_global_coreg_before_after_900x456.gif


Local co-registration - for spatially variable shifts but a bit slower
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A dense grid of tie points is automatically computed, whereas tie points are subsequently validated using a
multistage workflow. Only those tie points not marked as false-positives are used to compute the parameters of an
affine transformation. Warping of the target image is done using an appropriate resampling technique
(cubic by default).

Here is an example of the computed shift vectors after filtering false-positives
(mainly due to clouds in the target image):

.. image:: https://git.gfz-potsdam.de/danschef/arosics/raw/main/docs/images/shift_vectors_testcase1__900x824.gif


For further details check out the `documentation `__!


History / Changelog
-------------------

You can find the protocol of recent changes in the AROSICS package
`here `__.


Credits
-------

AROSICS was developed by Daniel Scheffler (German Research Centre of Geosciences) within the context of the
`GeoMultiSens `__ project funded by the German Federal Ministry of Education and Research
(project grant code: 01 IS 14 010 A-C).

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.
The test data represent modified Copernicus Sentinel-2 data (ESA 2016). The input data for the figures in the
documentation have been provided by NASA (Landsat-8) and ESA (Sentinel-2).

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
.. _coverage: https://danschef.git-pages.gfz-potsdam.de/arosics/coverage/
.. _pytest: https://danschef.git-pages.gfz-potsdam.de/arosics/test_reports/report.html
.. _conda: https://docs.conda.io/

Owner

  • Name: GFZ Helmholtz-Zentrum für Geoforschung
  • Login: GFZ
  • Kind: organization
  • Email: software-legal@gfz.de
  • Location: Potsdam, Germany

Citation (CITATION)

You are welcome to use and modify the `arosics` project.
See the README.rst and LICENSE files for details.

If you use this software for research we would appreciate appropriate citation.
This may be prepared using the bibliographic metadata contained in our DOI, accessible through the DOI system and at
https://doi.org/10.5281/zenodo.3742909

To cite the `arosics` Python package in your publication, please use (modify the version number if needed):

  Daniel Scheffler. (2017, July 3). AROSICS: An Automated and Robust Open-Source Image Co-Registration Software for Multi-Sensor Satellite Data (Version 0.2.1). Zenodo. https://doi.org/10.5281/zenodo.3742909

This may need modification for the citation style of your publication.
You are encouraged to include the version number of the software.

A BibTeX entry for LaTeX users should look like this
(find the one for the latest version here: https://zenodo.org/record/3743085/export/hx):

@software{daniel_scheffler_2017_3743085,
  author       = {Daniel Scheffler},
  title        = {{AROSICS: An Automated and Robust Open-Source Image
                   Co-Registration Software for Multi-Sensor
                   Satellite Data}},
  month        = jul,
  year         = 2017,
  note         = {{This is the version as used in Scheffler et al.
                   (2017): https://www.mdpi.com/2072-4292/9/7/676.}},
  publisher    = {Zenodo},
  version      = {0.2.1},
  doi          = {10.5281/zenodo.3743085},
  url          = {https://doi.org/10.5281/zenodo.3743085}
}

For information on citing software products generally, see the
FORCE11 document [*].


[*] FORCE11 Software Citation Working Group (2016), "Software Citation Principles", (Editors: Arfon M. Smith, Daniel S. Katz, Kyle E. Niemeyer).
    Accessed 2017-08-08 at https://www.force11.org/sites/default/files/shared-documents/software-citation-principles.pdf

GitHub Events

Total
  • Create event: 1
  • Release event: 1
  • Issues event: 26
  • Watch event: 37
  • Issue comment event: 60
  • Push event: 5
  • Pull request event: 2
  • Fork event: 4
Last Year
  • Create event: 1
  • Release event: 1
  • Issues event: 26
  • Watch event: 37
  • Issue comment event: 60
  • Push event: 5
  • Pull request event: 2
  • Fork event: 4

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 15
  • Total pull requests: 0
  • Average time to close issues: 6 months
  • Average time to close pull requests: N/A
  • Total issue authors: 12
  • Total pull request authors: 0
  • Average comments per issue: 1.4
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 13
  • Pull requests: 0
  • Average time to close issues: 13 days
  • Average time to close pull requests: N/A
  • Issue authors: 11
  • Pull request authors: 0
  • Average comments per issue: 1.46
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • SARcycle (2)
  • LiamDiane (2)
  • rubikube2237 (2)
  • palec87 (1)
  • maben1556 (1)
  • sergeikharchenko (1)
  • camillelhenry (1)
  • eikeschuett (1)
  • tfriedel (1)
  • procton (1)
  • italomira13 (1)
  • danieliman (1)
  • miaodashi (1)
  • M18028063176 (1)
  • benedettomichelozzi (1)
Pull Request Authors
  • roelofvandijkO (8)
  • danieliman (1)
  • gianfrancodp (1)
  • adamchlus (1)
Top Labels
Issue Labels
documentation (2) enhancement (1) installation (1) help wanted (1)
Pull Request Labels
question (1) documentation (1) enhancement (1)

Dependencies

requirements.txt pypi
  • cartopy *
  • cmocean *
  • dill *
  • folium >=0.6.0,
  • gdal *
  • geoarray >=0.15.0
  • geojson *
  • geopandas *
  • matplotlib *
  • numpy *
  • pandas *
  • plotly *
  • py_tools_ds >=0.18.0
  • pyfftw <0.13.0
  • pykrige *
  • pyproj >2.2.0
  • scikit-image >=0.16.0
  • shapely *