یک اتصال ساده عناصری را از مجموعه primary
برمی گرداند که با هر عنصری در مجموعه secondary
مطابق با شرایط مطابقت در فیلتر مطابقت دارند. برای انجام یک اتصال ساده، از ee.Join.simple()
استفاده کنید. این ممکن است برای یافتن عناصر مشترک در میان مجموعه های مختلف یا فیلتر کردن یک مجموعه توسط مجموعه دیگر مفید باشد. به عنوان مثال، دو مجموعه تصویر را در نظر بگیرید که (ممکن است) دارای عناصر منطبق باشند، جایی که "تطابق" با شرایط مشخص شده در یک فیلتر تعریف می شود. به عنوان مثال، اجازه دهید تطبیق به این معنی باشد که شناسه های تصویر برابر هستند. از آنجایی که تصاویر منطبق در هر دو مجموعه یکسان هستند، از یک join ساده برای کشف این مجموعه از تصاویر منطبق استفاده کنید:
ویرایشگر کد (جاوا اسکریپت)
// 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);
import ee import geemap.core as geemap
کولب (پایتون)
# 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)
در مثال قبلی، مشاهده کنید که مجموعههایی که باید به آنها بپیوندید تقریباً یک ماه با هم همپوشانی دارند. توجه داشته باشید که وقتی این اتصال اعمال می شود، خروجی یک ImageCollection
خواهد بود که فقط تصاویر منطبق در مجموعه primary
را در خود دارد. خروجی باید چیزی شبیه به این باشد:
Image LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140505 (17 bands) Image LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140521 (17 bands)
این خروجی نشان میدهد که دو تصویر (همانطور که در فیلتر مشخص شده است) بین مجموعههای primary
و secondary
، تصاویر در 5 و 21 می مطابقت دارند.