Skip to main content

Welcome to fastgs

Introduction

This library is currently in alpha, neither the functionality nor the API is stable

This library provides geospatial multi-spectral image support for fastai. FastAI already has extensive support for RGB images in the pipeline. I try to achieve feature parity for multi-spectral images with this library, specifically in the context of Sentinel 2 geospatial imaging.

Sample Notebooks

You can find demo usage of the library in these notebooks

  1. working with the kaggle 38-cloud/95-cloud landsat dataset.
  2. working on a segmentation problem with a Sentinel 2 dataset

These are boths works in progress and optimized to display the features of the library, rather than the best possible results. Even so, the “cloud 95” notebook is providing results comparable to other hiqh quality notebooks on the same dataset.

Install

pip install -Uqq fastgs
conda install -c restlessronin fastgs

How to use

The low-level functionality is wrapped into a class that loads sets of Sentinel 2 channels into a multi-spectral tensor (a TensorImageMS subclass of fastai TensorImage which itself is a subclass of the pytorch Tensor).

from fastgs.multispectral import *

The following code creates a class that can load 11 Sentinel 2 channels into a TensorImageMS.

from fastgs.test.io import * # defines read_multichan_files_as_tensor

sentinel2 = createSentinel2Descriptor()

snt_12 = MSData.from_all(
    sentinel2,
    ["B02","B03","B04","B05","B06","B07","B08","B8A","B11","B12","AOT"],
    [sentinel2.rgb_combo["natural_color"], ["B07","B06","B05"],["B12","B11","B8A"],["B08"]],
    get_channel_filenames,
    read_multichan_files
)

The second parameter is a list of 4 channel sets that are minimally required to visualize all the individual channels.

img_12 = snt_12.load_image(66)
img_12.show()
[<AxesSubplot:>, <AxesSubplot:>, <AxesSubplot:>, <AxesSubplot:>]

This lower level functionality is made available by higher level wrapper APIs for creating data loaders, adding augmentations, displaying batches, results and top losses.

Acknowledgements

This library is inspired by the following notebooks (and related works by the authors)

Download files

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

Source Distribution

fastgs-0.0.27.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fastgs-0.0.27-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file fastgs-0.0.27.tar.gz.

File metadata

  • Download URL: fastgs-0.0.27.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.11.3 pkginfo/1.8.3 requests/2.28.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.10.8

File hashes

Hashes for fastgs-0.0.27.tar.gz
Algorithm Hash digest
SHA256 505f01685ba70fd49830ccb1aa5fd65f166e90c99fbb58818b5cb4c28f9a1d2f
MD5 34b030b079c76313465356f0f4234b9e
BLAKE2b-256 6c4a9efb0cb45713a27a774e5cd88d631ade02b1d28a286502b149e1836ffdc1

See more details on using hashes here.

File details

Details for the file fastgs-0.0.27-py3-none-any.whl.

File metadata

  • Download URL: fastgs-0.0.27-py3-none-any.whl
  • Upload date:
  • Size: 16.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.11.3 pkginfo/1.8.3 requests/2.28.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.10.8

File hashes

Hashes for fastgs-0.0.27-py3-none-any.whl
Algorithm Hash digest
SHA256 48363648339412f06e6d36b73a86554f88408af06f62992b540ada8654223938
MD5 911f9cf3d8341a2de9ba11fee4ce1a81
BLAKE2b-256 2142f64def1cc99da2f1172be3cd810056c4bec72bd0d3d135733c006a9fe9ea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page