A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

FSDL Deforestation Detection

A deep learning approach to detecting deforestation risk, using satellite images and a deep learning model.
https://github.com/karthikraja95/fsdl_deforestation_detection

Category: Biosphere
Sub Category: Deforestation and Reforestation

Keywords from Contributors

archiving transforms measur generic optimize observation compose conversion projection animals

Last synced: about 23 hours ago
JSON representation

Repository metadata

README.md

FSDL Deforestation Detection

Open in Streamlit

Dependencies Status
Code style: black
Security: bandit
Pre-commit
Semantic Versions
License

Detecting deforestation from satellite images: a full stack deep learning project

Description

A deep learning approach to detecting deforestation risk, using satellite images and a deep learning model. We relied on Planet imagery from two Kaggle datasets (one from the Amazon rainforest and another on oil palm plantations in Borneo) and trained a ResNet model using FastAI. For more details, check the following links:

This is the result of a group project, made by André Ferreira and Karthik Bhaskar, for the Full Stack Deep Learning - Spring 2021 online course.

Very first steps

Initial

  1. Initialize git inside your repo:
git init
  1. If you don't have Poetry installed run:
make download-poetry
  1. Initialize poetry and install pre-commit hooks:
make install
  1. Upload initial code to GitHub (ensure you've run make install to use pre-commit):
git add .
git commit -m ":tada: Initial commit"
git branch -M main
git remote add origin https://github.com/karthikraja95/fsdl_deforestation_detection.git
git push -u origin main

Initial setting up

  • Set up Dependabot to ensure you have the latest dependencies.
  • Set up Stale bot for automatic issue closing.

Poetry

All manipulations with dependencies are executed through Poetry. If you're new to it, look through the documentation.

Poetry's commands are very intuitive and easy to learn, like:

  • poetry add numpy
  • poetry run pytest
  • poetry build
  • etc

Makefile usage

Makefile contains many functions for fast assembling and convenient work.

make download-poetry
make install

If you do not want to install pre-commit hooks, run the command with the NO_PRE_COMMIT flag:

make install NO_PRE_COMMIT=1
make check-safety

This command launches a Poetry and Pip integrity check as well as identifies security issues with Safety and Bandit. By default, the build will not crash if any of the items fail. But you can set STRICT=1 for the entire build, or you can configure strictness for each item separately.

make check-safety STRICT=1

or only for safety:

make check-safety SAFETY_STRICT=1

multiple

make check-safety PIP_STRICT=1 SAFETY_STRICT=1

List of flags for check-safety (can be set to 1 or 0): STRICT, POETRY_STRICT, PIP_STRICT, SAFETY_STRICT, BANDIT_STRICT.

The command is similar to check-safety but to check the code style, obviously. It uses Black, Darglint, Isort, and Mypy inside.

make check-style

It may also contain the STRICT flag.

make check-style STRICT=1

List of flags for check-style (can be set to 1 or 0): STRICT, BLACK_STRICT, DARGLINT_STRICT, ISORT_STRICT, MYPY_STRICT.

Codestyle uses pre-commit hooks, so ensure you've run make install before.

make codestyle
make test
make lint

the same as:

make test && make check-safety && make check-style

List of flags for lint (can be set to 1 or 0): STRICT, POETRY_STRICT, PIP_STRICT, SAFETY_STRICT, BANDIT_STRICT, BLACK_STRICT, DARGLINT_STRICT, ISORT_STRICT, MYPY_STRICT.

make docker

which is equivalent to:

make docker VERSION=latest

More information here.

make clean_docker

or to remove all build

make clean

More information here.

🛡 License

License

This project is licensed under the terms of the MIT license. See LICENSE for more details.

📃 Citation

@misc{fsdl_deforestation_detection,
  author = {Karthik Bhaskar, Andre Ferreira},
  title = {Predicting deforestation from Satellite Images},
  year = {2021},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/karthikraja95/fsdl_deforestation_detection}}
}

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 53
Total Committers: 3
Avg Commits per committer: 17.667
Development Distribution Score (DDS): 0.321

Commits in past year: 0
Committers in past year: 0
Avg Commits per committer in past year: 0.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
André Cristóvão Neves Ferreira a****f@g****m 36
Karthik Bhaskar k****k@g****m 10
dependabot[bot] 4****] 7

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 0
Total pull requests: 130
Average time to close issues: N/A
Average time to close pull requests: about 1 month
Total issue authors: 0
Total pull request authors: 4
Average comments per issue: 0
Average comments per pull request: 0.83
Merged pull request: 11
Bot issues: 0
Bot pull requests: 121

Past year issues: 0
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 0
Past year pull request authors: 0
Past year average comments per issue: 0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/karthikraja95/fsdl_deforestation_detection

Top Issue Authors

Top Pull Request Authors

  • dependabot[bot] (121)
  • cclauss (4)
  • AndreCNF (4)
  • karthikraja95 (1)

Top Issue Labels

Top Pull Request Labels

  • dependencies (121)
  • python (68)
  • github_actions (53)

Dependencies

fsdl_deforestation_detection/deployment/requirements.txt pypi
  • streamlit *
.github/workflows/build.yml actions
  • actions/cache v2.1.4 composite
  • actions/checkout v2 composite
  • actions/setup-python v2.2.1 composite
.github/workflows/greetings.yml actions
  • actions/first-interaction v1 composite
.github/workflows/release-drafter.yml actions
  • release-drafter/release-drafter v5.15.0 composite
docker/Dockerfile docker
  • python 3.7-slim-buster build

Score: 4.990432586778736