Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Pixel-level embeddings and cloud-hosted embedding services

Every workflow so far has used Clay’s patch-based embeddings. This page covers two more systems: TESSERA, pixel-based temporal embeddings you download and work with locally, and AlphaEarth, embeddings you can query and analyze entirely in the cloud without downloading anything.


1. Motivation

Patch-based embeddings are not the only option, and knowing what pixel-based and cloud-native alternatives offer rounds out your toolkit for choosing the right embedding system for a specific project, exactly the registry-driven decision from earlier in this lesson, now with two more concrete options in view.


2. Core idea

TESSERA provides 128-channel pixel-based embeddings at 10-meter resolution, compressing a full year of spectral-temporal signal per pixel, downloadable by bounding box, point, or region. AlphaEarth provides annual pixel embeddings accessible directly through Google Earth Engine (GEE), letting you compute and visualize results in the cloud without downloading any raster data locally at all.


3. Workflow

A. Check TESSERA availability

Checking tile count before downloading, as in the second call, is worth doing for any region larger than a small test area; TESSERA can also be downloaded by a single point (lon/lat) or from a region file (GeoJSON or Shapefile) instead of a bounding box, and specific bands can be requested with bands=[...] to reduce file size when you do not need the full 128 channels.

B. Visualize embedding bands

Since TESSERA’s 128 bands are embedding dimensions rather than physical wavelengths, choosing three of them as red, green, and blue is a visualization convenience, not a true-color image; areas with similar colors share similar temporal dynamics as encoded by the model. Trying different band combinations, for example bands=(30, 60, 90), can surface different aspects of the underlying seasonal signal, worth experimenting with the same way you tried different band combinations for false-color composites in earlier lessons.

C. Sample embeddings at points

tessera_sample_points() appends 128 new columns (tessera_0 through tessera_127) to your points GeoDataFrame, one per embedding dimension, turning point locations directly into feature vectors ready for the same kind of classification workflow from the previous page.

D. Explore AlphaEarth in Earth Engine

This requires a free Google Earth Engine account and project, separate from the Hugging Face access used earlier in this lesson. geoai.Map() includes a built-in AlphaEarth GUI widget (add_alphaearth_gui()) for interactive exploration without writing this filtering code directly, useful for a first look at a region before committing to a specific analysis.

E. Change detection via similarity

For unit-normalized embeddings (as AlphaEarth’s are), the dot product between two vectors equals their cosine similarity, the same measure used for similarity search earlier in this lesson, here computed per pixel between two years, entirely in the cloud. High similarity (close to 1) indicates a stable pixel; low similarity indicates likely change, without downloading either year’s raster data locally.


4. Python reactivation

ee.ImageCollection(...).filterDate(...).filterBounds(...).first() chains several filtering steps together before extracting a single image, the same method-chaining style you may recall from pandas or geopandas operations, just applied here to Earth Engine’s server-side objects. Constructing points as a GeoDataFrame directly from a dictionary and a geometry list, rather than reading from a file, is the same in-memory construction pattern used for small, manually specified datasets throughout this course.


5. Common pitfalls


6. Mini task

You want to check whether a specific 5-kilometer-wide region experienced significant land-cover change between 2018 and 2023. Would TESSERA or AlphaEarth let you check this without downloading any raster data locally, and why?

Sample solution

AlphaEarth, accessed through Google Earth Engine, lets you check this without any local download: the dot-product similarity computation runs entirely on Google’s servers, and only the final similarity result (or a visualization of it) needs to reach your machine. TESSERA, by contrast, is designed around downloading embeddings (as GeoTIFF or NumPy files) to your own environment for analysis, so checking the same question with TESSERA would require downloading both years’ data locally first.


7. Key takeaways

Further reading