magicbathynet

Quick start guide for benchmarking MagicBathyNet dataset in learning-based bathymetry and pixel-based classification using Remote Sensing imagery.

https://github.com/pagraf/magicbathynet

Science Score: 49.0%

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

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 5 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, ieee.org, zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.9%) to scientific vocabulary

Keywords

aerial-imagery bathymetry computer-vision dataset deep-learning depth-estimation earth-observation eu-project magicbathy models ocean-data ocean-mapping remote-sensing satellite-imagery seabed-mapping semantic-segmentation sentinel-2 shallow-water spot6
Last synced: 6 months ago · JSON representation

Repository

Quick start guide for benchmarking MagicBathyNet dataset in learning-based bathymetry and pixel-based classification using Remote Sensing imagery.

Basic Info
  • Host: GitHub
  • Owner: pagraf
  • License: other
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage: https://www.magicbathy.eu
  • Size: 813 KB
Statistics
  • Stars: 34
  • Watchers: 1
  • Forks: 4
  • Open Issues: 1
  • Releases: 1
Topics
aerial-imagery bathymetry computer-vision dataset deep-learning depth-estimation earth-observation eu-project magicbathy models ocean-data ocean-mapping remote-sensing satellite-imagery seabed-mapping semantic-segmentation sentinel-2 shallow-water spot6
Created about 2 years ago · Last pushed 9 months ago
Metadata Files
Readme License

README.md

magicbathynet

MagicBathyNet: A Multimodal Remote Sensing Dataset for Benchmarking Learning-based Bathymetry and Pixel-based Classification in Shallow Waters

MagicBathyNet is a benchmark dataset made up of image patches of Sentinel-2, SPOT-6 and aerial imagery, bathymetry in raster format and seabed classes annotations. Dataset also facilitates unsupervised learning for model pre-training in shallow coastal areas. It is developed in the context of MagicBathy project.

MagicBathy
DOI of GitHub Repository DOI

Package for benchmarking MagicBathyNet dataset in learning-based bathymetry and pixel-based classification.

This repository contains the code of the paper "P. Agrafiotis, Ł. Janowski, D. Skarlatos and B. Demir, "MAGICBATHYNET: A Multimodal Remote Sensing Dataset for Bathymetry Prediction and Pixel-Based Classification in Shallow Waters," IGARSS 2024 - 2024 IEEE International Geoscience and Remote Sensing Symposium, Athens, Greece, 2024, pp. 249-253, doi: 10.1109/IGARSS53475.2024.10641355."

arXiv IEEE

Citation

If you find this repository useful, please consider giving a star ⭐.
If you use the code in this repository or the dataset please cite:

P. Agrafiotis, Ł. Janowski, D. Skarlatos and B. Demir, "MAGICBATHYNET: A Multimodal Remote Sensing Dataset for Bathymetry Prediction and Pixel-Based Classification in Shallow Waters," IGARSS 2024 - 2024 IEEE International Geoscience and Remote Sensing Symposium, Athens, Greece, 2024, pp. 249-253, doi: 10.1109/IGARSS53475.2024.10641355. @INPROCEEDINGS{10641355, author={Agrafiotis, Panagiotis and Janowski, Łukasz and Skarlatos, Dimitrios and Demir, Begüm}, booktitle={IGARSS 2024 - 2024 IEEE International Geoscience and Remote Sensing Symposium}, title={MAGICBATHYNET: A Multimodal Remote Sensing Dataset for Bathymetry Prediction and Pixel-Based Classification in Shallow Waters}, year={2024}, volume={}, number={}, pages={249-253}, doi={10.1109/IGARSS53475.2024.10641355}}

Getting started

Downloading the dataset

For downloading the dataset and a detailed explanation of it, please visit the MagicBathy Project website at https://www.magicbathy.eu/magicbathynet.html

Dataset structure

The folder structure should be as follows: ┗ 📂 magicbathynet/ ┣ 📂 agia_napa/ ┃ ┣ 📂 img/ ┃ ┃ ┣ 📂 aerial/ ┃ ┃ ┃ ┣ 📜 img_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┃ ┣ 📂 s2/ ┃ ┃ ┃ ┣ 📜 img_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┃ ┣ 📂 spot6/ ┃ ┃ ┃ ┣ 📜 img_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┣ 📂 depth/ ┃ ┃ ┣ 📂 aerial/ ┃ ┃ ┃ ┣ 📜 depth_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┃ ┣ 📂 s2/ ┃ ┃ ┃ ┣ 📜 depth_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┃ ┣ 📂 spot6/ ┃ ┃ ┃ ┣ 📜 depth_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┣ 📂 gts/ ┃ ┃ ┣ 📂 aerial/ ┃ ┃ ┃ ┣ 📜 gts_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┃ ┣ 📂 s2/ ┃ ┃ ┃ ┣ 📜 gts_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┃ ┣ 📂 spot6/ ┃ ┃ ┃ ┣ 📜 gts_339.tif ┃ ┃ ┃ ┣ 📜 ... ┃ ┣ 📜 [modality]_split_bathymetry.txt ┃ ┣ 📜 [modality]_split_pixel_class.txt ┃ ┣ 📜 norm_param_[modality]_an.txt ┃ ┣ 📂 puck_lagoon/ ┃ ┣ 📂 img/ ┃ ┃ ┣ 📜 ... ┃ ┣ 📂 depth/ ┃ ┃ ┣ 📜 ... ┃ ┣ 📂 gts/ ┃ ┃ ┣ 📜 ... ┃ ┣ 📜 [modality]_split_bathymetry.txt ┃ ┣ 📜 [modality]_split_pixel_class.txt ┃ ┣ 📜 norm_param_[modality]_pl.txt The mapping between RGB color values and classes is:

``` For the Agia Napa area: 0 : (0, 128, 0), #seagrass 1 : (0, 0, 255), #rock 2 : (255, 0, 0), #macroalgae 3 : (255, 128, 0), #sand 4 : (0, 0, 0)} #Undefined (black)

For the Puck Lagoon area: 0 : (255, 128, 0), #sand 1 : (0, 128, 0) , #eelgrass/pondweed 2 : (0, 0, 0)} #Undefined (black) ```

Clone the repo

git clone https://github.com/pagraf/MagicBathyNet.git

Installation Guide

The requirements are easily installed via Anaconda (recommended):

conda env create -f environment.yml

After the installation is completed, activate the environment:

conda activate magicbathynet

Open Jupyter Notebook:

jupyter notebook

Train and Test the models

To train and test the bathymetry models use MagicBathyNet_bathymetry.ipynb.

To train and test the pixel-based classification models use MagicBathyNet_pixelclass.ipynb.

Pre-trained Deep Learning Models

We provide code and model weights for the following deep learning models that have been pre-trained on MagicBathyNet for pixel-based classification and bathymetry tasks:

Pixel-based classification

| Model Names | Modality | Area | Pre-Trained PyTorch Models | | ----------- |----------| ---- |----------------------------------------------------------------------------------------------------------------------------------------------| | U-Net | Aerial | Agia Napa | unetaerialan.zip | | SegFormer | Aerial | Agia Napa | segformeraerialan.zip | | U-Net | Aerial | Puck Lagoon | unetaerialpl.zip | | SegFormer | Aerial | Puck Lagoon | segformeraerialpl.zip | | U-Net | SPOT-6 | Agia Napa | unetspot6an.zip | | SegFormer | SPOT-6 | Agia Napa | segformerspot6an.zip | | U-Net | SPOT-6 | Puck Lagoon | unetspot6pl.zip | | SegFormer | SPOT-6 | Puck Lagoon | segformerspot6pl.zip | | U-Net | Sentinel-2 | Agia Napa | unets2an.zip | | SegFormer | Sentinel-2 | Agia Napa | segformers2an.zip | | U-Net | Sentinel-2 | Puck Lagoon | unets2pl.zip | | SegFormer | Sentinel-2 | Puck Lagoon | segformers2pl.zip |

Learning-based Bathymetry

| Model Name | Modality | Area | Pre-Trained PyTorch Models | | ----------- |----------| ---- |----------------------------------------------------------------------------------------------------------------------------------------------| | Modified U-Net for bathymetry | Aerial | Agia Napa | bathymetryaerialan.zip | | Modified U-Net for bathymetry | Aerial | Puck Lagoon | bathymetryaerialpl.zip | | Modified U-Net for bathymetry | SPOT-6 | Agia Napa | bathymetryspot6an.zip | | Modified U-Net for bathymetry | SPOT-6 | Puck Lagoon | bathymetryspot6pl.zip | | Modified U-Net for bathymetry | Sentinel-2 | Agia Napa | bathymetrys2an.zip | | Modified U-Net for bathymetry | Sentinel-2 | Puck Lagoon | bathymetrys2pl.zip |

To achieve the results presented in the paper, use the parameters and the specific train-evaluation splits provided in the dataset. Parameters can be found here while train-evaluation splits are included in the dataset.

Example testing results

Example patch of the Agia Napa area (left), pixel classification results obtained by U-Net (middle) and predicted bathymetry obtained by MagicBathy-U-Net (right). For more information on the results and accuracy achieved read our paper.

img_410_aerial aerial_410_unet depth_410_aerial

Authors

Panagiotis Agrafiotis https://www.user.tu-berlin.de/pagraf/

Feedback

Feel free to give feedback, by sending an email to: agrafiotis@tu-berlin.de

Funding

This work is part of MagicBathy project funded by the European Union’s HORIZON Europe research and innovation programme under the Marie Skłodowska-Curie GA 101063294. Work has been carried out at the Remote Sensing Image Analysis group. For more information about the project visit https://www.magicbathy.eu/.

Owner

  • Name: Panagiotis Agrafiotis
  • Login: pagraf
  • Kind: user
  • Location: Athens Greece
  • Company: National Technical University of Athens

GitHub Events

Total
  • Issues event: 1
  • Watch event: 11
  • Issue comment event: 2
  • Push event: 17
  • Fork event: 3
Last Year
  • Issues event: 1
  • Watch event: 11
  • Issue comment event: 2
  • Push event: 17
  • Fork event: 3

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 243
  • Total Committers: 1
  • Avg Commits per committer: 243.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 27
  • Committers: 1
  • Avg Commits per committer: 27.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Panagiotis Agrafiotis a****s@g****m 243

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 2.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 2.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • vinson2233 (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 2
proxy.golang.org: github.com/pagraf/MagicBathyNet
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.5%
Dependent repos count: 5.7%
Last synced: 6 months ago
proxy.golang.org: github.com/pagraf/magicbathynet
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.5%
Dependent repos count: 5.7%
Last synced: 6 months ago

Dependencies

environment.yml pypi
  • argon2-cffi ==21.3.0
  • argon2-cffi-bindings ==21.2.0
  • async-generator ==1.10
  • backcall ==0.2.0
  • bleach ==4.1.0
  • branca ==0.5.0
  • cartopy ==0.19.0.post1
  • cmocean ==2.0
  • comm ==0.1.4
  • decorator ==4.4.2
  • defusedxml ==0.7.1
  • dill ==0.3.4
  • entrypoints ==0.4
  • folium ==0.13.0
  • geoarray ==0.15.8
  • geojson ==2.5.0
  • imageio ==2.15.0
  • importlib-metadata ==4.8.3
  • ipykernel ==5.5.6
  • ipython ==7.16.3
  • ipython-genutils ==0.2.0
  • ipywidgets ==7.8.1
  • jedi ==0.17.2
  • jinja2 ==3.0.3
  • jsonschema ==3.2.0
  • jupyter ==1.0.0
  • jupyter-client ==7.1.2
  • jupyter-console ==6.4.3
  • jupyter-core ==4.9.2
  • jupyterlab-pygments ==0.1.2
  • jupyterlab-widgets ==1.1.7
  • markupsafe ==2.0.1
  • mistune ==0.8.4
  • nbclient ==0.5.9
  • nbconvert ==6.0.7
  • nbformat ==5.1.3
  • nest-asyncio ==1.6.0
  • networkx ==2.5.1
  • notebook ==6.4.10
  • packaging ==21.3
  • pandocfilters ==1.5.1
  • parso ==0.7.1
  • pexpect ==4.9.0
  • pickleshare ==0.7.5
  • pillow ==8.4.0
  • plotly ==5.13.1
  • prometheus-client ==0.17.1
  • prompt-toolkit ==3.0.36
  • ptyprocess ==0.7.0
  • py-tools-ds ==0.20.2
  • pyepsg ==0.4.0
  • pyfftw ==0.12.0
  • pygments ==2.14.0
  • pykrige ==1.6.1
  • pyrsistent ==0.18.0
  • pyshp ==2.3.1
  • pywavelets ==1.1.1
  • pyzmq ==25.1.2
  • qtconsole ==5.2.2
  • qtpy ==2.0.1
  • scikit-image ==0.17.2
  • send2trash ==1.8.3
  • spectral ==0.23.1
  • tenacity ==8.2.2
  • terminado ==0.12.1
  • testpath ==0.6.0
  • tifffile ==2020.9.3
  • traitlets ==4.3.3
  • wcwidth ==0.2.13
  • webencodings ==0.5.1
  • widgetsnbextension ==3.6.6
  • yellowbrick ==1.3.post1
  • zipp ==3.6.0