Satellite Data for All? Review of Google Earth Engine for Archaeological Remote Sensing

Reviewed by Omar A. Alcover Firpi (November 2016)

Department of Anthropology, Brown University, RI 02912, USA. Email:

Cite this as: Alcover Firpi, O.A. (2016). Satellite Data for All? Review of Google Earth Engine for Archaeological Remote Sensing, Internet Archaeology 42.

Google Earth Engine: - see also Case Studies, Data Catalog, Code Editor, Explorer and Developer Guide

Within archaeology, satellite remote sensing has been used to answer questions concerning natural and anthropogenic landscape use and change, as well as regional settlement patterns (Agapiou and Lysandrou 2015; Chase et al. 2014; Lasaponara and Masini 2011; Parcak 2009, 13; Sever and Irwin 2003). Satellite remote sensing data helps detect features on the surface that would be difficult or near impossible to perceive otherwise. In varying scales, ranging from whole geographic regions to specific sites, satellite remote sensing data has assisted in site discovery, mapping extensive features as well as enhancing our understanding of environmental niches and land use change (Garrison et al. 2011; Garrison 2010; Griffin 2012; Chase et al. 2014; Balzotti et al. 2010; Elmore et al. 2000). Anthropogenic features detectable through satellite remote sensing data include large sites, small roads, terraces, and even dams (see Saturno et al. 2007; Garrison et al. 2008; Griffin 2012; Parcak 2009). Moreover, remote sensing data has also been used to identify major vegetation and soil types, allowing for extensive and accurate classification maps. Most archaeological research incorporating remote sensing data has used proprietary software, such as that offered by ERDAS Imagine, Geomatica, and ENVI. Yet, in spite of the increased use and interest in remote sensing technology, most proprietary software remains inaccessible to many professionals due to its price, in addition to hardware restrictions. Less frequently, researchers have used open source software, such as SAGA, GRASS GIS, and PolSARPro for radar data.

This review evaluates the potential of Google Earth Engine (GEE) for use in archaeological remote sensing. GEE is a freely accessible software option for processing remotely sensed data, part of the larger Google suite of products. GEE offers several advantages to the archaeologist: an accessible price, the ability to upload and process diverse datasets, the ability to pre-process raw data, a range of post-processing and image classification tools, and the ability to export processed data as GeoTiffs.

Remote Sensing and Google Earth Engine

The field of remote sensing is continuously advancing, with new sensors and processing methodologies developed each year. Moreover, high-quality data is increasingly available free of cost for the end users. A recent example includes the release of ASTER (Advanced Spaceborne Thermal Emission Radiometer) data collection and decades of Landsat and MODIS (Moderate Resolution Imaging Spectoradiometer) sensor data for the general public. Yet, in spite of these advances, access to processing software remains one of the major barriers in taking full advantage of remote sensing data in archaeological research to answer specific environmental questions. Software for processing remote sensing data, such as ERDAS Imagine and ENVI, are powerful tools, yet these are mostly inaccessible to archaeologists who are not associated with a department that employs remote sensing as a staple technology. With prices ranging over thousands of dollars a year for a single user, the costs associated with access to these applications are highly restrictive. Although open source programs, such as QGIS, GRASS, Multispec – and even ArcGIS – offer some image-processing tools, these do not exploit the full potential of image processing. For example, unsupervised classifications, spectral mixture analysis, principal components analysis, path radiance removal and other pre- and post-processing analyses are not available, or are very complex in these open source programs. In order for remote sensing to become a staple tool in archaeological investigations, researchers require access to an application that can manage diverse image-processing tools, as well as having an accessible entry price. Google, with GEE, strives to compete with established remote sensing softwares through its web-based code editor, providing an alternative to other open source processing softwares.

GEE is currently an online platform for acquiring, processing, and analysing satellite remote sensing processing data. It is available free to personnel affiliated with academic institutions, who are interested in using the software for research purposes. There are two main pages, the Earth Engine Code Editor and the Earth Engine Explorer. Unlike Google Earth Pro, both of the pages are specifically designed to present and analyse remotely sensed data. The Code Editor is where the majority of the data processing takes place, while the Explorer is a visualisation page, where files can be manipulated and presented in a variety of band combinations. Use of the Code Editor requires you to fill out an access form as well as having an active Gmail account. This process is quite simple, with access typically granted within two business days. All of the heavy computation is handled on Google servers, prompted by Python and Java script, while visualisation is handled on clients. Since the computation takes place on Google servers, instead of the user's personal device, the program allows users to visualise complex datasets on most computers, tablets, and even smartphones with an Internet browser (see Figure 1).

Figure 1
Figure 1: Google Earth Engine Code Editor opened in an Apple iPhone 6. Since complex processing takes place on Google's servers, data can be visualised on any device with an Internet browser, including smartphones and tablets

GEE interface relies on Python and JavaScript in order to proceed with any action within the platform. Via the Earth Engine API python script, users can access image datasets (organised as data collections) as well as manipulate image variables, such as band combinations, data acquisition dates, and maximum and minimum stretch for raster values (useful in visualisation), as well as a variety of complex algorithms. Within the Earth Engine Code Editor, users can draw from a defined set of python scripts for particular tasks, organised by function on the left-hand side of the Code Editor page. In the centre of the page, there is a designated space to write python scripts that can be edited at any point during the work. A useful component for users who are not fluent in python is a 'help' box on the right-hand side of the page that alerts users about incomplete or faulty code scripts. At the bottom half of the Code Editor page is a map where the varying data layers are presented. The map layout and tools are similar to those of other Google suite products, such as Google Maps or Google Earth. Since the platform is constantly being updated (see changelog), new features are added regularly, yet they all function using the Earth Engine python API and JavaScript. Google has even produced a series of guides and tutorials aimed at teaching the Earth Engine API, JavaScript, and the platform in general for users with previous remote sensing knowledge. GEE is unique in that it combines both the access to data and processing software in one package. Earth Engine draws on pre-acquired raster datasets stored in Google's servers. Google servers include a wide variety of geospatial data, including Digital Elevation Models, Land Cover Classification Maps (from Moderate Resolution Imaging Spectoradiometer [MODIS], GlobCover, and USGS Land Cover Database), Cropland data (from USDA NASS and GFSAD), and thermal satellite data (MODIS), Advanced Spaceborne Thermal Emission Radiometer (ASTER), Landsat, and Advanced Very High Resolution Radiometer (AVHRR). Rasters stored in the Google servers include the majority of freely accessible data via USGS Earth Explorer web portal, including all of the Landsat tiles from 1972 to the present day, some of ESA's Sentinel-1 radar data, most MODIS data, high-resolution imagery (including NAIP data). Imagery datasets are continually being upgraded, with new data downloaded to the servers periodically. Moreover, Earth Engine also includes non-remote sensing datasets such as demographic, climate, and weather data. Although data stored in Google's servers is not exhaustive, nor is it meant to be, it does incorporate a wide range of datasets useful for a variety of professionals, including archaeologists.

Bridging the Gap: GEE and Archaeology

For archaeologists, GEE's bridge between data source and processing tools has both positive and negative results. With most remote sensing softwares, data must be pre-acquired by the user before any processing takes place. In this scenario data can be acquired through web portals such as USGS Earth Explorer or the USGS GLOVIS website. Merging data access and processing eliminates an additional, sometimes time-consuming, step in the acquisition and analysis of widely available remotely sensed data. Yet, more than simply cutting down on the time required for data acquisition, the spatial and temporal quantity of data allow for quicker analysis of vast expanses of land (see Figure 2). It is time-consuming to have to download, mosaic information, and conduct atmospheric corrections with large datasets, some of which can encompass several tiles of information. With most processing softwares, this large-scale analysis would not only be time-consuming, but would also strain most devices, requiring a vast storage and processing capacity.

Figure 2
Figure 2: Landsat NDVI Composition scene over San Francisco, Oakland, and Alameda California. With just a few python scripts, one can obtain NDVI data from large expanses

The platform also permits scholars to upload particular python scripts, allowing researchers to share their data processing steps as well as results for further interpretation by others. An example of this is the Global Forest study, which assesses worldwide change in forest cover in the last decade using Landsat data (Hansen et al. 2013). Moreover, easy access to data in GEE opens up a range of questions for which data acquisition would have taken hours, such as demographic, climate, and weather information.

One specific problem for archaeologists is the lack of detailed metadata when selecting data for analysis. When downloading data from providers such as USGS, detailed metadata is provided for each file downloaded, allowing users to take this information into account when undertaking pre-processing of files, as well as making atmospheric corrections. In GEE, although you can limit the dates and geographic area from which data are extracted, the exact metadata for the files presented is not readily available. One way that GEE gets around this issue is trying to calculate the median raster value for a series of tiles in order to obtain a generic raster value for a given area. While useful in some cases, seasonal variation may be an important factor to archaeologists in remote sensing analysis; thus specific selection of dates is crucial. Although you can import your own raster datasets into the program, these are hard to integrate into the larger data collections stored in Google's servers. Imported data is also difficult to manipulate within the program's tools, such as changing band combinations and stretch values of raster data. Thus, while one can upload data into the program, these files will be saved into a personal folder within the Google server. That said, I would not recommend uploading proprietary data, such as IKONOS or GeoEye, since the data management policies are still being developed.

One of the great advantages of software such as ENVI and ERDAS Imagine are their well-developed and specialised tools for pre-processing and post-processing remote sensing data. When working with remotely sensed data, you have to pass through a series of steps in order to make these data comparable among different sensors and acquisition dates. I tried each of these out on GEE as well as ENVI. The first step is a linear transformation in which raw digital numbers (dependent on the number of bytes a given sensor records data) in a given tile are converted into values of radiance, which is a measurement of energy. After this step, it is important to correct for atmospheric variances in the data, including irradiance and light scattering. These variances come from energy that irradiates from other sources that can affect the values in a given pixel. One way to address these variances in radiance scattering is by undertaking a dark object subtraction to reduce sources of light scattering inherent in the atmosphere during data collection. While ENVI 5.0 has several pre-programmed tools to conduct these analyses, which typically requires c. 10 minutes per Landsat scene to execute, GEE's solution is to provide users with pre-processed surface reflectance Landsat tiles. USGS offers pre-processed surface reflectance Landsat tiles, many of which are stored on Google's servers. Additionally, since these pre-processing steps are mathematical transformations, GEE provides pre-developed Python scripts that will run these steps (see Figure 3). Thus while there is no distinct push-button access to these features within the program, there is an available library of Python scripts available for the user to draw and edit.

// Load a raw Landsat scene and display it.
var raw = ee.Image('LANDSAT/LT5_L1T/LT50440342008045EDC00');
Map.centerObject(raw, 10);
Map.addLayer(raw, {bands: ['B4', 'B3', 'B2'], max: 120}, 'raw');

// Convert the raw data to radiance.
var radiance = ee.Algorithms.Landsat.calibratedRadiance(raw);
Map.addLayer(radiance, {bands: ['B4', 'B3', 'B2'], max: 90}, 'radiance');

// Convert the raw data to top-of-atmosphere reflectance.
var toa = ee.Algorithms.Landsat.TOA(raw);

Map.addLayer(toa, {bands: ['B4', 'B3', 'B2'], max: 0.4}, 'toa reflectance');

Figure 3: Python Script from the Google Earth Engine tutorial demonstrating how to convert from raw Digital Number, to Radiance, and Later Surface Reflectance. This is an essential step in creating atmospherically corrected data that is accurate in reflectance as well as being comparable with other datasets. Taken from

GEE offers a series of algorithms that aid in undertaking post-processing and Image Classification analyses (see Figure 4). Some of the most useful analyses for archaeological purposes available in GEE include: Supervised Classifications (using GEE's geometry drawing tools), Normalized Difference Vegetation Index (NDVI) and Enhanced Vegetation Index (EVI) (see Parcak 2009, 92). Supervised classification is available in most image-processing software. It considers the spectral signature of particular areas that the user highlights during the training phase (such as lakes, forests, coastal sand, etc.) and the algorithm seeks other similar signatures in the raster (see Figure 4). Image classification, in particular supervised classifications, are among the most used analyses in archaeology, allowing researchers to highlight varying vegetation zones in visually comprehensible ways (Parcak 2009, 94). NDVI and EVI are also popular analyses focused on highlighting vegetation health on a given landscape. Moreover, since the majority of image analyses are through mathematical transformations, one can write scripts to perform almost any kind of analysis that fits the users' research question. Other form of analyses, such as Principal Components Analyses (PCA) and Spectral Mixture Analysis (SMA) are not currently possible by any straightforward means. Both PCA and SMA consider the reflectance in the data and try to reduce redundancy in spectral signatures, highlighting variances in soil and vegetation composition (Parcak 2009; Elmore et al. 2000; Lasaponara and Masini 2011). SMA is particularly useful for identifying varied vegetation classes in the landscape, highlighting diverse ecological niches, such as those evident in the tropics (see Elmore et al. 2000). SMA (a time-consuming task with traditional software) focuses on individual pixels over a restricted area, and this sort of minuscule data manipulation currently does not seem possible in GEE.

Figure 4
Figure 4: Example of an Image Classification from a single Landsat Scene in Google Earth Engine. Unlike in ENVI, manipulating and choosing training areas is quite complex and time-consuming in GEE, yet it is possible. Because training classes need to be made for each scene, GEE's automatic classifications are of dubious value

Integrating remotely sensed data from traditional image processing software to ArcGIS is complex. While proprietary softwares, such as ENVI, have made great strides to achieve the compatibility of its data formats with other programs, its proprietary file formats are still complicated to handle. Many of these files are most compatible with other programs when converted to a .dat file format, and not in their proprietary file format. Currently with GEE, one can export files into an integrated Google Drive account, but not directly to a personal computer. This feature might be advantageous for users working on devices with little onboard data storage, such as a tablet or a Chromebook. In GEE data is exported after the user creates a delimiting shapefile that defines its extent. Currently, the only option for exporting data is in a GeoTiff format. Limited file formats are problematic for archaeological research, restricting access to exported data by other scholars, grant agencies, and the general public.

While GEE programmers continue to develop tools to integrate GEE with other Google services, the limited exporting format hinders the complete integration of these data with established geospatial analysis platforms. One of the alternatives GEE provides is its ability to send long and complex Python scripts to other users, allowing them to open the same files over the web with ease. If end users do not have access to Earth Explorer Code Editor, they can open files through the Earth Engine Explorer platform. Earth Engine Explorer allows data to be viewed as presented by the original user, but further analysis and editing are not possible. Overall, GEE is designed to facilitate access to freely available data and to make it easy to move products back and forth between Google applications and resources.


Archaeologists have turned to remotely sensed datasets to provide geographically extensive information at relatively low cost, aiding in regional survey, site identification and in providing an in-depth understanding of the natural and built landscape. Google Earth Engine shows promise not only in its processing power, but in making it possible for archaeologists to address questions about the relationship between sites and their environs. Moreover, GEE can also aid in field planning. With access to its wide array of worldwide pre-processed climate and weather data, archaeologists can accurately track large-scale weather patterns that will aid in the logistical stage of organising an archaeological project. To the best of my knowledge, this is one aspect of remote sensing analysis that has not been considered in archaeological research, particularly in remote areas of the world where mainstream weather coverage is not available. Moreover, Google has been partnering with a variety of institutions in order to develop particular case studies, published on the Internet and made available to different researchers. A notable case study is the University of Maryland's global tree cover extent, loss and gain. The project has made use of GEE's extensive Landsat data to produce time series analysis of forest change.

As an alternative to stand-alone programs, GEE has several major disadvantages. Unfortunately, GEE does not work without an Internet connection, which will pose serious challenges to researchers who are either based at home institutions with limited email access, or who want to conduct analysis in the field. This in turn creates problems that are not necessarily unique to archaeological applications, but rather crucial to anybody who conducts field research in remote areas. Another limitation is GEE's inability to work with minuscule analyses of raster data. GEE seems to be designed to handle large-scale datasets, and not on just a few pixels. A final limitation is the fact that GEE requires basic knowledge of Python and JavaScript, which many archaeologists will not possess and so assures a steep learning curve.

Overall, Google Earth Engine provides a new approach to remote sensing image processing with great potential for archaeological research. With some knowledge of Python and JavaScript, archaeologists can visualise and process complex datasets using the power of Google's servers. With several geospatial analysis programs that use Python becoming staples in archaeological research (such as ArcGIS), this language might become a valuable toolset for archaeologists. There are some powerful aspects of the Earth Engine platform that can aid archaeological research now, and it may get better in the future.


Agapiou, A. and Lysandrou, V. 2015 'Remote sensing archaeology: tracking and mapping evolution in European scientific literature from 1999 to 2015', Journal of Archaeological Science Reports 4, 192–200.

Balzotti, C.S., Petersen, S.L., Terry, R.E., Scherer, A.K., and Golden, C. 2010 'Remote sensing as a tool for tropical ecology', Geography Compass 4, 993–1012.

Chase, A., Chase, D., Awe, J., Weishampel, J., Iannone, G., Moyes, H., Yaeger, J., Brown, K., Shrestha, R., Carter, W. and Fernandez Diaz, J. 2014 'Ancient Maya regional settlement and inter-site analysis: the 2013 West-Central Belize LiDAR survey', Remote Sensing 6 (May 2013), 8671–95.

Elmore, A.J., Mustard, J.F., Manning, S.J. and Lobell, D.B. 2000 'Quantifying vegetation change in semiarid environments: precision and accuracy of spectral mixture analysis and the normalized difference vegetation index', Remote Sensing of Environment 73(1), 87-102.

Garrison, T.G. 2010 'Remote sensing ancient Maya rural populations using QuickBird satellite imagery', International Journal of Remote Sensing 31(1), 213–31.

Garrison, T.G., Houston, S.D., Golden, C., Inomata, T., Nelson, Z. and Munson, J. 2008 'Evaluating the use of IKONOS satellite imagery in lowland Maya settlement archaeology', Journal of Archaeological Science 35, 2770–77.

Garrison, T.G., Chapman, B., Houston, S., Román, E. and Garrido López, J.L. 2011 'Discovering ancient Maya settlements using airborne radar elevation data', Journal of Archaeological Science 38(7), 1655–62.

Griffin, R.E. 2012 The Carrying Capacity of Ancient Maya Swidden maize cultivation: A case study in the region around San Bartolo, Petén, Guatemala, PhD thesis, Pennsylvania State University.

Lasaponara, R. and Masini, N. 2011 'Satellite remote sensing in archaeology: past, present and future perspectives', Journal of Archaeological Science 38(9), 1995–2002.

Parcak, S.H. 2009 Satellite Remote Sensing for Archaeology, Routledge.

Saturno, W., Sever, T.L., Irwin, D.E., Howell, B.F. and Garrison, T.G. 2007 'Putting us on the map: remote sensing investigation of the Ancient Maya landscape' in J. Wiseman and F, El-Baz (eds) Remote Sensing in Archaeology, New York: Springer. 137–60.

Sever, T.L. and Irwin, D.E. 2003 'Landscape Archaeology: remote sensing investigation of the Ancient Maya in the Peten Rainforest of Northern Guatemala', Ancient Mesoamerica 14, 113–22.