Earth Engine में स्पेक्ट्रल ट्रांसफ़ॉर्मेशन के कई तरीके हैं. इनमें इमेज के लिए, normalizedDifference()
, unmix()
,
rgbToHsv()
, और hsvToRgb()
जैसे इंस्टेंस
तरीके शामिल हैं.
पैन शार्पनिंग
पैन शार्पनिंग की सुविधा, बेहतर रिज़ॉल्यूशन वाली पैनक्रोमैटिक इमेज की मदद से, कई बैंड वाली इमेज के रिज़ॉल्यूशन को बेहतर बनाती है.
rgbToHsv()
और hsvToRgb()
तरीके, पैन करने के लिए काम के होते हैं
हैं.
कोड एडिटर (JavaScript)
// Load a Landsat 8 top-of-atmosphere reflectance image. var image = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140318'); Map.addLayer( image, {bands: ['B4', 'B3', 'B2'], min: 0, max: 0.25, gamma: [1.1, 1.1, 1]}, 'rgb'); // Convert the RGB bands to the HSV color space. var hsv = image.select(['B4', 'B3', 'B2']).rgbToHsv(); // Swap in the panchromatic band and convert back to RGB. var sharpened = ee.Image.cat([ hsv.select('hue'), hsv.select('saturation'), image.select('B8') ]).hsvToRgb(); // Display the pan-sharpened result. Map.setCenter(-122.44829, 37.76664, 13); Map.addLayer(sharpened, {min: 0, max: 0.25, gamma: [1.3, 1.3, 1.3]}, 'pan-sharpened');
import ee import geemap.core as geemap
Colab (Python)
# Load a Landsat 8 top-of-atmosphere reflectance image. image = ee.Image('LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140318') # Convert the RGB bands to the HSV color space. hsv = image.select(['B4', 'B3', 'B2']).rgbToHsv() # Swap in the panchromatic band and convert back to RGB. sharpened = ee.Image.cat( [hsv.select('hue'), hsv.select('saturation'), image.select('B8')] ).hsvToRgb() # Define a map centered on San Francisco, California. map_sharpened = geemap.Map(center=[37.76664, -122.44829], zoom=13) # Add the image layers to the map and display it. map_sharpened.add_layer( image, { 'bands': ['B4', 'B3', 'B2'], 'min': 0, 'max': 0.25, 'gamma': [1.1, 1.1, 1], }, 'rgb', ) map_sharpened.add_layer( sharpened, {'min': 0, 'max': 0.25, 'gamma': [1.3, 1.3, 1.3]}, 'pan-sharpened', ) display(map_sharpened)
स्पेक्ट्रल अनमिक्सिंग
स्पेक्ट्रल अनमिक्सिंग को Earth Engine में image.unmix()
तरीके के तौर पर लागू किया जाता है.
(ज़्यादा सुविधाजनक तरीकों के लिए, कलेक्शन में बदलाव करने के तरीकों वाला पेज देखें). यहां Landsat 5 के डेटा को, पहले से तय किए गए शहरी,
वनस्पति, और पानी के एंडमंबर से अनमिक्स करने का उदाहरण दिया गया है:
कोड एडिटर (JavaScript)
// Load a Landsat 5 image and select the bands we want to unmix. var bands = ['B1', 'B2', 'B3', 'B4', 'B5', 'B6', 'B7']; var image = ee.Image('LANDSAT/LT05/C02/T1/LT05_044034_20080214') .select(bands); Map.setCenter(-122.1899, 37.5010, 10); // San Francisco Bay Map.addLayer(image, {bands: ['B4', 'B3', 'B2'], min: 0, max: 128}, 'image'); // Define spectral endmembers. var urban = [88, 42, 48, 38, 86, 115, 59]; var veg = [50, 21, 20, 35, 50, 110, 23]; var water = [51, 20, 14, 9, 7, 116, 4]; // Unmix the image. var fractions = image.unmix([urban, veg, water]); Map.addLayer(fractions, {}, 'unmixed');
import ee import geemap.core as geemap
Colab (Python)
# Load a Landsat 5 image and select the bands we want to unmix. bands = ['B1', 'B2', 'B3', 'B4', 'B5', 'B6', 'B7'] image = ee.Image('LANDSAT/LT05/C02/T1/LT05_044034_20080214').select(bands) # Define spectral endmembers. urban = [88, 42, 48, 38, 86, 115, 59] veg = [50, 21, 20, 35, 50, 110, 23] water = [51, 20, 14, 9, 7, 116, 4] # Unmix the image. fractions = image.unmix([urban, veg, water]) # Define a map centered on San Francisco Bay. map_fractions = geemap.Map(center=[37.5010, -122.1899], zoom=10) # Add the image layers to the map and display it. map_fractions.add_layer( image, {'bands': ['B4', 'B3', 'B2'], 'min': 0, 'max': 128}, 'image' ) map_fractions.add_layer(fractions, None, 'unmixed') display(map_fractions)
