proste złączenia,

Proste złączanie zwraca elementy z kolecji primary, które pasują do dowolnego elementu w kolecji secondary zgodnie z warunkiem dopasowania w filtrze. Aby wykonać proste złączanie, użyj funkcji ee.Join.simple(). Może to być przydatne do znajdowania wspólnych elementów w różnych kolekcjach lub filtrowania jednej kolekcji według innej. Wyobraź sobie na przykład 2 zbiory obrazów, które (mogą) mieć pewne pasujące elementy, gdzie „pasowanie” jest zdefiniowane przez warunek określony w filtrze. Na przykład dopasowanie oznacza, że identyfikatory obrazów są takie same. Zdjęcia pasujące do obu kolekcji są takie same, więc aby znaleźć ten zestaw pasujących zdjęć, użyj prostego złączenia:

Edytor kodu (JavaScript)

// Load a Landsat 8 image collection at a point of interest.
var collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA')
    .filterBounds(ee.Geometry.Point(-122.09, 37.42));

// Define start and end dates with which to filter the collections.
var april = '2014-04-01';
var may = '2014-05-01';
var june = '2014-06-01';
var july = '2014-07-01';

// The primary collection is Landsat images from April to June.
var primary = collection.filterDate(april, june);

// The secondary collection is Landsat images from May to July.
var secondary = collection.filterDate(may, july);

// Use an equals filter to define how the collections match.
var filter = ee.Filter.equals({
  leftField: 'system:index',
  rightField: 'system:index'
});

// Create the join.
var simpleJoin = ee.Join.simple();

// Apply the join.
var simpleJoined = simpleJoin.apply(primary, secondary, filter);

// Display the result.
print('Simple join: ', simpleJoined);

Konfiguracja Pythona

Informacje o interfejsie Python API i o używaniu pakietu geemap do programowania interaktywnego znajdziesz na stronie Python Environment.

import ee
import geemap.core as geemap

Colab (Python)

# Load a Landsat 8 image collection at a point of interest.
collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA').filterBounds(
    ee.Geometry.Point(-122.09, 37.42)
)

# Define start and end dates with which to filter the collections.
april = '2014-04-01'
may = '2014-05-01'
june = '2014-06-01'
july = '2014-07-01'

# The primary collection is Landsat images from April to June.
primary = collection.filterDate(april, june)

# The secondary collection is Landsat images from May to July.
secondary = collection.filterDate(may, july)

# Use an equals filter to define how the collections match.
filter = ee.Filter.equals(leftField='system:index', rightField='system:index')

# Create the join.
simple_join = ee.Join.simple()

# Apply the join.
simple_joined = simple_join.apply(primary, secondary, filter)

# Display the result.
display('Simple join:', simple_joined)

W poprzednim przykładzie widać, że łączone kolekcje pokrywają się czasowo o około miesiąca. Pamiętaj, że po zastosowaniu tego złączenia dane wyjściowe będą zawierać tylko te obrazy z kolei primary, które pasują do obrazów z kolei ImageCollection. Dane wyjściowe powinny wyglądać mniej więcej tak:

Image LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140505 (17 bands)
Image LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140521 (17 bands)

Dane wyjściowe wskazują, że 2 obrazy (zgodnie z filtrem) pasują do kolekcji primarysecondary – obrazy z 5 i 21 maja.