Skip to main content

PyTorch Lightning Implementations of Recent Satellite Image Classification !

Project description

Satellighte

Satellighte

Satellite Image Classification

WebsiteDocsDemo

TABLE OF CONTENTS
  1. About The Satellighte
  2. Prerequisites
  3. Installation
  4. Usage Examples
  5. Architectures
  6. Datasets
  7. Deployments
  8. Training
  9. Tests
  10. Contributing
  11. Contributors
  12. Contact
  13. License
  14. References
  15. Citations

About The Satellighte

Satellighte is an image classification library that consist state-of-the-art deep learning methods. It is a combination of the words 'Satellite' and 'Light', and its purpose is to establish a light structure to classify satellite images, but to obtain robust results.

Satellite image classification is the most significant technique used in remote sensing for the computerized study and pattern recognition of satellite information, which is based on diversity structures of the image that involve rigorous validation of the training samples depending on the used classification algorithm.

Source: paperswithcode

Prerequisites

Before you begin, ensure you have met the following requirements:

requirement version
imageio ~=2.15.0
numpy ~=1.21.0
pytorch_lightning ~=1.6.0
scikit-learn ~=1.0.2
torch ~=1.8.1

Installation

To install Satellighte, follow these steps:

From Pypi

pip install satellighte

From Source

git clone https://github.com/canturan10/satellighte.git
cd satellighte
pip install .

From Source For Development

git clone https://github.com/canturan10/satellighte.git
cd satellighte
pip install -e ".[all]"

Usage Examples

import imageio
import satellighte as sat

img = imageio.imread("test.jpg")

model = sat.Classifier.from_pretrained("model_config_dataset")
model.eval()

results = model.predict(img)
# [{'cls1': 0.55, 'cls2': 0.45}]

Architectures

For more information, please refer to the Architectures

Datasets

For more information, please refer to the Datasets

Deployments

For more information, please refer to the Deployment

Training

To training, follow these steps:

For installing Satellighte, please refer to the Installation.

python training/eurosat_training.py

For optional arguments,

python training/eurosat_training.py --help

Tests

During development, you might like to have tests run.

Install dependencies

pip install -e ".[test]"

Linting Tests

pytest satellighte --pylint --pylint-error-types=EF

Document Tests

pytest satellighte --doctest-modules

Coverage Tests

pytest --doctest-modules --cov satellighte --cov-report term

Contributing

To contribute to Satellighte, follow these steps:

  1. Fork this repository.
  2. Create a branch: git checkout -b <branch_name>.
  3. Make your changes and commit them: git commit -m '<commit_message>'
  4. Push to the original branch: git push origin
  5. Create the pull request.

Alternatively see the GitHub documentation on creating a pull request.

Contributors

Oğuzcan Turan

Oğuzcan Turan
Linkedin Portfolio

You ?

Oğuzcan Turan
Reserved

Contact

If you want to contact me you can reach me at can.turan.10@gmail.com.

License

This project is licensed under MIT license. See LICENSE for more information.

References

The references used in the development of the project are as follows.

Citations

@article{DBLP:journals/corr/ChengHL17,
  author    = {Gong Cheng and
               Junwei Han and
               Xiaoqiang Lu},
  title     = {Remote Sensing Image Scene Classification: Benchmark and State of
               the Art},
  journal   = {CoRR},
  volume    = {abs/1703.00121},
  year      = {2017},
  url       = {http://arxiv.org/abs/1703.00121},
  eprinttype = {arXiv},
  eprint    = {1703.00121},
  timestamp = {Mon, 02 Dec 2019 09:32:19 +0100},
  biburl    = {https://dblp.org/rec/journals/corr/ChengHL17.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}
@article{helber2019eurosat,
  title={Eurosat: A novel dataset and deep learning benchmark for land use and land cover classification},
  author={Helber, Patrick and Bischke, Benjamin and Dengel, Andreas and Borth, Damian},
  journal={IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing},
  year={2019},
  publisher={IEEE}
}
@inproceedings{helber2018introducing,
  title={Introducing EuroSAT: A Novel Dataset and Deep Learning Benchmark for Land Use and Land Cover Classification},
  author={Helber, Patrick and Bischke, Benjamin and Dengel, Andreas and Borth, Damian},
  booktitle={IGARSS 2018-2018 IEEE International Geoscience and Remote Sensing Symposium},
  pages={204--207},
  year={2018},
  organization={IEEE}
}
@article{DBLP:journals/corr/abs-1801-04381,
  author    = {Mark Sandler and
               Andrew G. Howard and
               Menglong Zhu and
               Andrey Zhmoginov and
               Liang{-}Chieh Chen},
  title     = {Inverted Residuals and Linear Bottlenecks: Mobile Networks for Classification,
               Detection and Segmentation},
  journal   = {CoRR},
  volume    = {abs/1801.04381},
  year      = {2018},
  url       = {http://arxiv.org/abs/1801.04381},
  archivePrefix = {arXiv},
  eprint    = {1801.04381},
  timestamp = {Tue, 12 Jan 2021 15:30:06 +0100},
  biburl    = {https://dblp.org/rec/journals/corr/abs-1801-04381.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}
@article{DBLP:journals/corr/abs-1905-11946,
  author    = {Mingxing Tan and
               Quoc V. Le},
  title     = {EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks},
  journal   = {CoRR},
  volume    = {abs/1905.11946},
  year      = {2019},
  url       = {http://arxiv.org/abs/1905.11946},
  eprinttype = {arXiv},
  eprint    = {1905.11946},
  timestamp = {Mon, 03 Jun 2019 13:42:33 +0200},
  biburl    = {https://dblp.org/rec/journals/corr/abs-1905-11946.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}
@article{DBLP:journals/corr/HeZRS15,
  author    = {Kaiming He and
               Xiangyu Zhang and
               Shaoqing Ren and
               Jian Sun},
  title     = {Deep Residual Learning for Image Recognition},
  journal   = {CoRR},
  volume    = {abs/1512.03385},
  year      = {2015},
  url       = {http://arxiv.org/abs/1512.03385},
  eprinttype = {arXiv},
  eprint    = {1512.03385},
  timestamp = {Wed, 17 Apr 2019 17:23:45 +0200},
  biburl    = {https://dblp.org/rec/journals/corr/HeZRS15.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}

Give a ⭐️ if this project helped you! -----------------------------------------------------

This readme file is made using the readme-template

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

satellighte-0.2.0.tar.gz (34.7 kB view details)

Uploaded Source

Built Distribution

satellighte-0.2.0-py3-none-any.whl (41.7 kB view details)

Uploaded Python 3

File details

Details for the file satellighte-0.2.0.tar.gz.

File metadata

  • Download URL: satellighte-0.2.0.tar.gz
  • Upload date:
  • Size: 34.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/35.0 requests/2.28.1 requests-toolbelt/0.9.1 urllib3/1.26.11 tqdm/4.64.0 importlib-metadata/4.12.0 keyring/23.7.0 rfc3986/2.0.0 colorama/0.4.5 CPython/3.8.13

File hashes

Hashes for satellighte-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6ed203eaa263b9a84635a71d768a401e8cc198125cbb1862b4b1649c78601330
MD5 dfed3094037f632d62e6fc047afbc5c1
BLAKE2b-256 fd893462cdd12de87461f01b376ffe815d5ae5b196a5997b9e7960370c86b168

See more details on using hashes here.

File details

Details for the file satellighte-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: satellighte-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 41.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/35.0 requests/2.28.1 requests-toolbelt/0.9.1 urllib3/1.26.11 tqdm/4.64.0 importlib-metadata/4.12.0 keyring/23.7.0 rfc3986/2.0.0 colorama/0.4.5 CPython/3.8.13

File hashes

Hashes for satellighte-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0aa778a4b79b29087a61c39b94de0d09bab31cdc0c64b30a6f73e70bb32a05c9
MD5 44e111466d1127d4f6014837be10bc1f
BLAKE2b-256 946224460f50e788a1c11f5bc0f2bc4dbce54c70de525ac62259f1c33c07e834

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page