Planet and SpatioTemporal Asset Catalogs
Author: Chris Holmes
At Planet our mission is to ‘image the Earth every day and make change visible, accessible, and actionable.’ In recent years we have been putting more focus into the accessible and actionable pieces of our overall mission. Mostly, this means making sure that we have frictionless, developer-friendly APIs, but as Planet is not the only Earth observation satellite constellation, we recognize our customers need integration tools that work with other providers’ products. To have Earth observation data reach its full potential impact, every actor in the Earth observation ecosystem must work together. One of the best examples of this happening today is the SpatioTemporal Asset Catalog (STAC) specification, and the dynamic ecosystem of tools and data growing up around it. I am pleased to share that Planet has released our first STAC catalog under the planet.com domain, available at https://www.planet.com/stac/data (and for a nicer browser experience, see it visualized on STACIndex).
What is STAC?
The STAC specification provides a common language to describe satellite imagery and other types of data that can be located in space and time. Even more important than the core specification is the rapidly growing ecosystem of tools. This ecosystem means any data adhering to the standard is more accessible than if it were only available in a proprietary interface. The 1.0.0 version of the specification was released at the end of May, and we have seen great uptake with government providers like USGS, NASA, SwissTopo, Met Service of Canada, and commercial companies like Maxar, Microsoft, Amazon, Google, Arturo, Capella, Astraea and many more who are adopting the specification. The stacindex.org site gives a great sense of all the activity, listing a number of tools and public catalogs.
Planet has been a believer and supporter in the STAC vision since day one, sending several developers to the sprint that started it all back in 2017. Since then, Planet has been a consistent top-tier sponsor of STAC sprints and funding initiatives, and hosted the fourth sprint at our office, back when in-person events were the norm. I myself have spent one full day per week for the past three years leading the project to 1.0.0, knowing that consistent support is essential for any collaborative open project to be successful.
Open Data STAC releases
The genesis of Planet releasing our first STAC catalogue under our domain was the Cloud Native Geospatial Outreach Day last year, when Planet donated a special prize to some of the award winners. Participants were able to choose an area to be tasked by Planet’s high-resolution SkySat constellation. There were a total of nine locations imaged, four of them collected in stereo, and one that shows off the rapid revisit capabilities of the constellation, with three images collected at different times in a single day. I’m especially excited that these images are licensed under one of the most liberal data licenses available (CC-BY-4.0). We saw that there are very few high resolution satellite images that can be used in any context, so wanted to make them available for further innovation, education material, and as examples. One of the images already serves as a main STAC specification examples:
We anticipate updates which will release more assets and further refine the metadata to follow the latest STAC best practices. Releasing the open SkySat data was the motivating push to get the STAC catalog posted to planet.com, but since then, it has been augmented by other interesting collections. One of which is the open mosaic chips and labels from the Spacenet 7 Challenge. This collection is a work in progress, but we are putting it up in the spirit of ‘releasing early and often’. Another is a small collection of Planet Disaster Data, which hopefully will expand in pace with datasets that have been released as part of that program.
Planet also provided the initial funding for STACTools, which is a great, flexible tool in the STAC Ecosystem. The impetus for the application was to provide both a python library and a command line interface (CLI) to easily convert any Planet order to a compliant STAC catalog. It did not make sense to add that functionality directly to PySTAC, the core python STAC library, as its goal was to have very few dependencies. At the same time, making a super custom Planet tool seemed to miss an opportunity to help the wider ecosystem, since much of the needed functionality is relevant to others. And so, STACTools was born as a way to develop and promote common tools for working with STAC. It has evolved into a complete mini-ecosystem, with the core library now providing a few common functions and over 25 different packages that are all easy to install, including many different data formats. The Planet-specific conversion tool was separated out into one of those packages, and the 0.2.0 version of the Planet STACTools package was just released.
STAC in core Planet API’s
Astute observers will notice that few of Planet’s core APIs have embraced STAC in a major way. To address that, I am very pleased to announce that the Planet Orders API now supports an option to include STAC metadata with any submitted order. This means that over 1 billion images from our RapidEye, PlanetScope, and SkySat datasets can now include STAC metadata when they are downloaded or delivered to the cloud of your choice.
This is a great first step towards Planet’s APIs more fully supporting STAC, and as the APIs continue to evolve, STAC and other standards are going to play a pivotal role. Note that this functionality is still in ‘beta’ as we work to finalize the exact fields to be included in STAC output, so please give any feedback on what you see. In parallel to finalizing the fields, we will be working on publishing an official Planet STAC ‘extension,’ so that all the various ways to get Planet STAC data are sure to validate against the same JSON Schema.
Planet remains committed to STAC, and we hope other organizations producing or consuming geospatial information will support the standard and fund the ecosystem. Together we can make it much easier for everyone to access geospatial information by providing trusted, standard, interoperable interfaces.