A Cloud Optimized GeoTIFF (COG) is a regular GeoTIFF file, aimed at being hosted on a HTTP file server, with an internal organization that enables more efficient workflows on the cloud. It does this by leveraging the ability of clients issuing HTTP GET range requests to ask for just the parts of a file they need.
Efficient Imagery Data Access
COG-aware software can stream just the portion of data that it needs, improving processing times and creating real-time workflows previously not possible
Reduced Duplication of Data
Accessing COG’s with cloud workflows enables diverse software to all access a single file online instead of needing to copy and cache the data
Traditional GIS software is able to treat Cloud Optimized GeoTIFF’s just like normal GeoTIFF’s, so data providers need only produce one format
Other software providers are less clear, but we have heard prototypes and first implementations from a number of them. If you are a software provider feel free to update this section.
- QGIS can read Cloud Optimized GeoTIFF's using Virtual Raster Builder with a vsicurl file format to refer to the online URL. See the tutorial for details.
- Rasterio wraps the powerful features of GDAL in idiomatic Python functions and classes. Their latest release includes a number of features to optimize cloud geotiff access. See their Advanced Rasterio Features Notebook for truly excellent documentation on working with COG's.
- Radiant.Earth is hosting a Cloud Optimized GeoTIFF validator. You can also get the source code, created by Even Rouault with support from Planet
- Marblecutter serves web tiles from Cloud Optimized GeoTIFF's, completely on the fly. You can see it in action at OpenAerialMap, as all tiles are rendered by an early version.
- Farmshots builds agriculture analytics on top of Planet’s Cloud Optimized GeoTIFF’s, pulling in just the needed field data and serving it up live to their customers.
- DigitalGlobe has built a project called IDAHO that can read COG files and perform on the fly band math analysis.
- GeoServer can use a new GeoTools community module named 's3-geotiff' to use COG's as a datastore. Advanced GeoServer users who know how to add new datastores can find it in the Boundless nightly repo (use the s3:// url form for it to work).
- Earth Observing System’s Engine and Land Viewer are both able to leverage Cloud Optimized GeoTIFFs for live web tile serving and on the fly band math.
- GeoTrellis has not yet implemented, but has detailed their plans to do so.
- Orfeo ToolBox All Orfeo ToolBox applications can read cloud optimized geotiffs through GDAL (simply prefix file url with /vsicurl/), and Monteverdi, the Orfeo ToolBox image viewer, can navigate in remote cloud optimized geotiff out of the box.
- Rio-tiler Rasterio plugin creates web tiles from Cloud Optimized GeoTIFF's. Used to create serverless landsat tiles server with landsat-tiler.
Most any software that relies on GDAL should support Cloud Optimized GeoTIFF's without much effort. Things like MapServer, Safe FME, ArcGIS and ENVI jump to mind. The fact that they and others aren't on this list mostly means no one has tested and got them working yet. Feel free to submit a pull request to add any software confirmed to support COG's (links to documentation appreciated!).
- OpenAerialMap stores all new imagery as Cloud Optimized GeoTIFF's, and also provides a service that takes uploaded data and turns it in to AWS S3 hosted COG's. The only constraint is that data uploaded must be openly licensed.
- Planet provides all its data (from RapidEye, PlanetScope and soon SkySat satellites) as Cloud Optimized GeoTIFFs.
- DigitalGlobe’s GBDX data is available as Cloud Optimized GeoTIFF, for all processing done on the platform.