Skip to main content

OversightML Tile Server

The OversightML Tile Server (TS) is a lightweight, cloud-based tile server which provides RESTful APIs for accessing pixels and metadata for imagery stored in the cloud. Key features include:

Table of Contents

Getting Started

Package Layout

  • /src: This is the Python implementation of this application.
  • /test: Unit tests have been implemented using pytest.
  • /doc: Contains Sphinx Doc configuration which is used to generate documentation for this package
  • /load-test: Contains sample Locust configuration files which is used to run load test against the Tile Server

Documentation

  • APIs: You can find API documentation for the OSML Tile Server hosted on our GitHub project page. Keep in mind that the Try it out button functionality does not work in Github project page.

Prerequisites

First, ensure you have installed the following tools locally

Cloning the repository

Clone the repository to your local computer using

git clone https://github.com/aws-solutions-library-samples/osml-tile-server.git

Navigate to the cloned directory using cd or dir, depending on your operating system.

More information about cloning and managing repositories can be found in the GitHub Docs.

Building the Infrastructure

Tile Server infrastructure is contained in the associated CDK repository, and a sample can be deployed by following the instructions in the Guidance for Overhead Imagery Inference on AWS repository.

Running Tile Server Locally

The Tile Server is designed to be able to be run locally using docker compose for development and testing purposes using docker compose.

Note: Some operating systems may use docker-compose instead of docker compose .

Configure your AWS credentials for the account in which the Tile Server infrastructure was deployed by setting your environment variables.

export AWS_DEFAULT_REGION=<region where TS infrastructure deployed in>
export AWS_ACCESS_KEY_ID=<AKIAIOSFODNN7EXAMPLE>
export AWS_SECRET_ACCESS_KEY=<wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY>

Start the Tile Server using

docker compose up -d

To view the live log output while the server is running

docker logs -f osml-tile-server

To stop the tile server

docker compose down

To rebuild the docker image after making a code change, use

docker compose up -d --build

In another terminal to invoke the rest server and return the viewpoint on a single image, run the following command:

curl -X 'POST' \
  'http://localhost:8080/latest/viewpoints/' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "bucket_name": "<S3 Bucket>",
  "object_key": "<Image Name>",
  "viewpoint_name": "test",
  "tile_size": 512,
  "range_adjustment": "NONE"
}'

Additionally, you can head over to FastAPI homepage and be able to execute various of API calls by visiting

http://0.0.0.0:8080/latest/docs or http://0.0.0.0:8080/latest/redoc

Support & Feedback

To post feedback, submit feature ideas, or report bugs, please use the Issues section of this GitHub repo.

If you are interested in contributing to OversightML Model Runner, see the CONTRIBUTING guide.

Security

See CONTRIBUTING for more information.

License

This library is licensed under the MIT-0 License. See the LICENSE file.

Release files for osml-tile-server 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for osml-tile-server 0.3.0
File Size Uploaded
osml_tile_server-0.3.0.tar.gz 33.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for osml-tile-server 0.3.0
File Interpreter ABI Platform
osml_tile_server-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 72.0 kB

Release files / osml_tile_server-0.3.0.tar.gz

Download URL osml_tile_server-0.3.0.tar.gz
Size 33.6 kB
Tags Source
SHA-256 checksum
How to use checksums
4231b55b4d935d1335ee35a3994fdf896f706931016894ac49dfc2bcea5398bb
BLAKE2b-256 checksum
How to use checksums
4f0ca7190661e3a72c0655838830d02ee337cbd22eb3698b65a40291fdd240d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.9

Release files / osml_tile_server-0.3.0-py3-none-any.whl

Download URL osml_tile_server-0.3.0-py3-none-any.whl
Size 38.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70436ddda20725f96d0cfc71452a429404e9e8b98b3ada6e50a62ebe7fc0fbf4
BLAKE2b-256 checksum
How to use checksums
0ca9cfb57bbdb9387192a2723dac9e88f13cf5f92ff389c077e8a7acd8712366
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page