Skip to main content

Sky Kit

Easy to use out-of-the-box satellite imagery package for Python aficionado.

Adding fun to satellites coolness 😎

Warning: This is still a work in progress. Please do not use in production, yet.

Seriously, what is it? 🧐

Sky kit is an ensemble of methods to ease satellite imagery processing, from and to developers and data scientists. Working with any satellite imagery provider, should be as easy as:

from skykit.providers import <ProviderName>

Install 🚀

As with any python package, pip is your friend:

pip install skykit

Usage 🎡

Quick Start

The following shows details of a tile from Sentinel-2, that includes Paris (France), from 01/03/2019 to 08/03/2019:

from datetime import date
from skykit.providers import Sentinel2

sat = Sentinel2(username="xxx", password="yyy")

tiles = sat.query(
    coordinates=(2.349014, 48.864716),     # Paris (FR) coordinates
    dates=(date(2019,3,1), date(2019,3,8)) # From march 1, 2019 to march 8, 2019
    )

len(tiles) # returns 6

tile = tiles[0]         # Pick any tile you want, or filter more
print(tile['summary'])  # returns 'Date: 2019-03-02T10:50:29.024Z, Instrument: MSI, Mode: , Satellite: Sentinel-2, Size: 730.27 MB'

In the previous example, the tiles variable will include meta information of every tile returned from Sentinel-2 query.

Features

Connecting to satellite images providers

Actually, Sky kit support the following ticked providers (others coming):

  • Sentinel 1
  • Sentinel 2
  • Landsat 7
  • Landsat 8
  • Modis
  • Cbers-4
  • Aqua

All image providers are grouped into skykit.providers module. Invoking a provider (like Sentinel-2) can be done like this:

from skykit.providers import Sentinel2

We then need to initialize the connection with the provider. eg with Sentinel-2:

sat = Sentinel2(username="xxx", password="yyy")

Nota: Sentinel 1 & 2 require having credentials to connect to Copernicus Open Access Hub. Once created, insert your credentials in the code above.

Todo 🔭

  • Write a better documentation. Look for readthedocs.io
  • Add providers
  • Create a reusable abstraction of Tile, to create a uniform use of tiles, no matter which provider
  • Ease working with tiles meta data (usually about the scene and satellite)
  • Allow querying using a polygon
  • Allow querying using an address
  • Use friendly dates (like text: "26/03/2019"), of use from="..." and to="..." instead of date=(...)
  • Allow working on specific bands. Something like:
image = tile.get('b04') # or tile.b04() ???
  • More tests <-- ⚠ URGENT
  • Create a CI/CD pipeline to publish tags into PyPi

This list is not exhaustive.

Contribution 💪

Please suggest contributions using Github's Pull Requests.

License 🤮

Read the LICENSE.txt file.

Thanks 🙏

Download files

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

Source Distribution

skykit-0.1.3.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

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

skykit-0.1.3-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file skykit-0.1.3.tar.gz.

File metadata

  • Download URL: skykit-0.1.3.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2

File hashes

Hashes for skykit-0.1.3.tar.gz
Algorithm Hash digest
SHA256 8195dd8ad90f27926e7fc262949dce4e6db5893066f5ff589ddf6220a5a34312
MD5 7e9ab5db12cae46961d416a20c7c69aa
BLAKE2b-256 bf11b29cdf6819e489eba32e52bf66464ffc6c301d266376c29a43d2c55f38b4

See more details on using hashes here.

File details

Details for the file skykit-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: skykit-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2

File hashes

Hashes for skykit-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 387a4fe8f7967045b5659f54dc406a2672ba1dbb02d97a514ef212e557e49336
MD5 71f96d3c356c82984b3bfb6aa2e650f0
BLAKE2b-256 71b5275e3f2c58247a407d8107b8787e537664b24f7a799550b9ad9c120a8ea6

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 files

0.1.2

2 files

0.1.1

3 files

0.1.0

1 file

Supported by

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