GBDX

Raster Data Access (RDA) Course

This course provides an overview of Raster Data Access (RDA), and describes how to use it. A quickstart script for getting an RDA chip with gbdxtools is included.

Note: Raster Data Access API documentation can be found here Raster Data Access API Reference.

Table of Contents

Section Description
Overview Learn more about the powerful and easy-to-use raster data access framework, designed for GBDX users to build and run analytics that work at any scale.
Quickstart Tutorial This quickstart tutorial illustrates how to get an RDA chip using gbdxtools.
Additional Resources Find links to more RDA documentation.

Overview

GBDX Raster Data Access (RDA) is a powerful yet easy-to-use raster data access framework designed for GBDX users to build and run analytics that work at any scale. RDA provides scalable high-performance access to raster data for any area-of-interest (AOI) with dynamic on-the-fly processing. The processing capabilities of RDA include all of the undifferentiated geospatial heavy lifting imagery preprocessing corrections and enhancements to make the raster data suitable for both on-screen visualization and automated analysis. By using GBDX Raster Data Access you get access to the exact imagery data you need when you need it.

Raster Data Access supports imagery data from DigitalGlobe's industry-leading satellite constellation including QuickBird, GeoEye-1, and all WorldView platforms along with other raster data content available on the GBDX platform. RDA provides random AOI-based access to all the raster pixel data, image properties and sensor metadata needed to develop automated analysis algorithms. Furthermore, RDA puts the power in the hands of the developer to apply the exact imagery preprocessing they need for their algorithm. RDA also provides artificial intelligence (AI) developers with quick-and-easy access to image chips that can be used to generate training data for machine learning algorithms or more complex deep learning models.

Raster Data Access was built from the ground-up as microservices using a cloud-native architecture that runs efficiently on AWS. RDA leverages the IDAHO cloud storage format for imagery and metadata which enables distributed computing and parallel processing. The combination of RDA's powerful cloud-computing together with the massive library of geospatial big data available on the GBDX platform allows users to derive answers at a scale that has been technically and economically impossible to achieve until now. RDA enables cloud-based access to DigitalGlobe's image library along with automated analytics which extract location intelligence and actionable insights at a global scale.

RDA can be utilized through a variety of simple APIs and client interfaces including Python (gbdxtools), GBDX Notebooks, and the GDAL software library. With RDA, GBDX users have on-demand control of a wide variety of imagery preprocessing corrections and enhancements, including but not limited to:

  • Orthorectification (any coordinate system via EPSG code)
  • TOA At-Sensor Reflectance (top-of-atmosphere)
  • AComp (atmospheric compensation)*
  • Pan-Sharpening (locally projective algorithm)
  • Dynamic Range Adjustment (radiometric stretch)

*AComp is a fully automated framework for atmospherically compensating very high spatial resolution imagery. AComp converts imagery to surface reflectance units that enables the extraction of information using physical quantities and improves multi-temporal or cross-sensor data analysis. For more detailed background information on DigitalGlobe's proprietary AComp methodology please refer to the following resource:

https://calval.cr.usgs.gov/wordpress/wp-content/uploads/AComp_validation.pdf

This illustration shows an image before and after atmospheric compensation (AComp)

This illustration shows an image before and after atmospheric compensation (AComp)

Quickstart Tutorial for Getting an RDA Chip using gbdxtools

Gbdxtools is a python client library for accessing GBDX services, including RDA. Gbdxtools makes it easy for python developers to get basic image chips.

More information about gbdxtools, see gbdxtools installation and troubleshooting and gbdxtools user documentation.

The CatalogImage class is the most common starting point. For this tutorial, we'll be accessing the image '10400E0001DB6A00'. It looks like this:

Image 1: This is the original image used in the example.

Image 1: This is the original image used in the example.

In this tutorial we will get a chip from this image. The footprint of the chip is shown here in blue:

Image 2: The footprint of the chip is shown here in blue.

Image 2: The footprint of the chip is shown here in blue.

The final image chip should look like this:

Image 3: This is the final image chip produced from the gbdxtools tutorial.

Image 3: This is the final image chip produced from the gbdxtools tutorial.

Get image metadata:

from gbdxtools.catalog import Catalog
from gbdxtools.images.catalog_image import CatalogImage

imageId = "10400E0001DB6A00"
crop = "POLYGON ((36.9392906658426 33.9164103054402,36.943294798074 33.9164103054402,36.943294798074 33.9124061732088,36.9392906658426 33.9124061732088,36.9392906658426 33.9164103054402))"

print(Catalog().get_strip_metadata(imageId))

Get and display image chip:

c = CatalogImage(imageId, product="ortho")
aoi = c.aoi(wkt=crop)
image = aoi.geotiff(path="output.tif")
aoi.plot()

By supplying arguments to the CatalogImage constructor, you can control what type of processing is applied to the image chips. For details on the arguments available, please visit the CatalogImage docs.

Additional Resources

GBDX Notebooks

GBDX Notebooks lets you code python to access imagery and run analytics in a Jupyter-hosted environment. Imagery access in GBDX Notebooks is powered by RDA.

To learn more about accessing imagery using GBDX Notebooks, see the Ordering and Working with Imagery tutorial.

GDAL 2.3.0 with RDA driver

The GDAL 2.3.0 release will include the RDA driver. GDAL 2.3.0 is currently a pre-release version, and is not fully supported.

To try out the RDA driver with the pre-release 2.3.0 version, see the following tutorials:

How to Get the GDAL RDA Driver
How to Get a Chip with GDAL and the RDA Template API

gbdxtools

To learn more about the image classes supported by gbdxtools, see Image Classes.