Image management, analysis, and visualization is oftentimes viewed through a user interface driven, desktop GIS lens. When we think of imagery, an analyst sitting at a powerful workstation running machine learning algorithms comes to mind. The ability to utilize imagery across ArcGIS is increasingly becoming a reality which is exciting on several levels primarily because it presents a new context within which creation, management, processing, and visualization can take place.
In this series, we aim to demonstrate a developer-centric approach to imagery. The goal is to expand on how developers can leverage Esri technology for integration within their workflows. Some questions that we hope to address are:
- As a developer, what are the avenues for consuming and utilizing imagery?
- Where can imagery be leveraged within the broader developer ecosystem?
- Are there options for constructing custom applications that work natively with imagery?
- From an automation and/or image processing standpoint, what possibilities exist for programmatic solutions?
What does Esri offer?
Esri provides a comprehensive experience for developers based upon a location-focused Platform-as-a-Service (PaaS) offering. In addition to providing mechanisms for working with tabular and vector-based data, imagery is increasingly at the center of a wealth of analytical capabilities. There are numerous options available to developers within ArcGIS for interacting with and creating imagery content.
Building interactive Imagery web applications in the browser with the ArcGIS Maps SDK for JavaScript.
Create unique experiences in a web browser by crafting applications that use a variety of imagery types and capabilities. This example utilizes multidimensional imagery layers and filtering to visualize sea surface temperature.
Managing data and creating analytical derivatives with Python across the ArcGIS technology stack.
The ArcGIS API for Python can be used for management, analysis, and visualizing WebGIS content. An example of this api-driven approach is the arcgis.learn module which exposes functions for Deep Learning workloads called against Raster Analytics services.
Consuming imagery services programmatically from the ArcGIS Living Atlas and performing end-to-end analysis workflows.
The ArcGIS Living Atlas has a variety of Imagery offerings, many of which can be used directly within analysis workflows. Hosted imagery forms the basis for this ArcGIS Notebook on Sentinel-2 analysis.
Why is this important?
Performing custom analyses and visualizations on imagery can now be performed across ArcGIS: desktop, web, and enterprise. ArcGIS technology provides a pattern where each of these three environments can collaborate. We can author data within ArcGIS Pro Notebooks and share this into an enterprise GIS environment. This can be further analyzed in a browser and presented in a custom application within a user’s web GIS.
The goal of this series is to provide a comprehensive picture of imagery to increase dialogue around developer-centric workflows. Focusing on the unique opportunities around programmatic data exploration from types/sources that were not previously available further enables the imagery story.
Future Blog Topics
In upcoming blogs in this series, we will review the various channels where developers can leverage the power of imagery capabilities in ArcGIS. Here are a few of the topics we will cover:
- Harnessing the power of imagery with ArcGIS Notebooks and ArcGIS API for Python (A focused discussion around Notebooks across the Platform)
- Programmatic access to data – Living Atlas and STAC (data offerings available through various 3rd party API’s)
- Developing Imagery focused web applications using the ArcGIS Maps SDK for JavaScript & Experience Builder (Focus on the imagery experience within a web browser)
- Third party points of integration (Possible samples for working with data from various complimentary product offerings)
Resources
If you are interested in exploring imagery through ArcGIS Notebooks, visit this Analyzing Imagery Learn lesson.
Learn more about the developer experience in ArcGIS.
Article Discussion: