கூகுள் எர்த் இன்ஜின் ஸ்கிரிப்ட்களின் செயல்பாட்டு நேரத்தை மேம்படுத்துதல்
கூகுள் எர்த் என்ஜின் (GEE) என்பது பெரிய அளவிலான புவிசார் தரவுகளை பகுப்பாய்வு செய்வதற்கான ஒரு சக்திவாய்ந்த தளமாகும். இருப்பினும், பயனர்கள் தங்கள் ஸ்கிரிப்டுகள் அடிப்படையாகத் தோன்றினாலும், செயல்படுத்தும் நேரத்தில் அடிக்கடி சிக்கல்களை எதிர்கொள்கின்றனர். இயங்குவதற்கு பல நிமிடங்கள் எடுக்கும் ஸ்கிரிப்ட் உற்பத்தித்திறனை பாதிக்கும் மற்றும் நுண்ணறிவுகளை தாமதப்படுத்தும்.
இந்த வழக்கில், ஒரு பயனர் சென்டினல் மற்றும் லேண்ட்சாட் 8 தரவை செயலாக்க எளிய ஸ்கிரிப்டை உருவாக்கியுள்ளார். அதன் எளிமை இருந்தபோதிலும், ஸ்கிரிப்ட் இயக்க சுமார் 3-5 நிமிடங்கள் ஆகும். இது ஏன் நடக்கிறது மற்றும் ஸ்கிரிப்டை எவ்வாறு மேம்படுத்துவது என்பது திறமையான தரவு செயலாக்கத்திற்கு அவசியம்.
GEE ஸ்கிரிப்ட்டின் செயல்திறன் தரவு அளவு, வடிகட்டுதல் மற்றும் கணக்கீட்டு சிக்கலானது உட்பட பல காரணிகளைச் சார்ந்துள்ளது. செயலாக்க நேரத்தைக் குறைப்பது, தேவையற்ற செயல்பாடுகள் அல்லது செயலாக்கத்தை மெதுவாக்கும் பெரிய தரவுத்தொகுப்புகள் போன்ற ஸ்கிரிப்ட்டுக்குள் உள்ள இடையூறுகளைக் கண்டறிவதை உள்ளடக்குகிறது.
இந்தக் கட்டுரை GEE இல் மெதுவாகச் செயல்படுவதற்கான சாத்தியமான காரணங்களை ஆராய்வதோடு, கொடுக்கப்பட்ட ஸ்கிரிப்டை மேம்படுத்துவதற்கான நடைமுறை உதவிக்குறிப்புகளையும் வழங்கும். இந்த உத்திகளை செயல்படுத்துவதன் மூலம், பயனர்கள் தங்கள் புவிசார் தரவு பகுப்பாய்வு பணிகளின் வேகம் மற்றும் செயல்திறனை கணிசமாக மேம்படுத்த முடியும்.
கட்டளை | பயன்பாட்டின் உதாரணம் |
---|---|
normalizedDifference() | NDVI, NDWI மற்றும் NDSI போன்ற குறியீடுகளைக் கணக்கிடுவதற்கு இந்தச் செயல்பாடு இரண்டு பட்டைகளுக்கு இடையே உள்ள வேறுபாட்டை, அவற்றின் கூட்டுத்தொகையால் வகுக்கப் பயன்படுகிறது. இது தாவரங்கள், நீர் மற்றும் பனி குறியீடுகள் தேவைப்படும் தொலை உணர்திறன் பகுப்பாய்விற்கு குறிப்பிட்டது. |
filterBounds() | கொடுக்கப்பட்ட வடிவவியலை வெட்டும் படங்களை மட்டும் சேர்க்க படத் தொகுப்பை வடிகட்டுகிறது. இந்த வழக்கில், இது செயற்கைக்கோள் தரவை வரையறுக்கப்பட்ட ஆர்வத்தை சுற்றியுள்ள பகுதிக்கு கட்டுப்படுத்துகிறது, பொருத்தமற்ற தரவைத் தவிர்த்து செயலாக்கத்தை மிகவும் திறமையாக ஆக்குகிறது. |
filterDate() | இந்த கட்டளை ஒரு குறிப்பிட்ட தேதி வரம்பிற்கு பட சேகரிப்பை கட்டுப்படுத்துகிறது. எங்கள் பிரச்சனைக்கு, Sentinel மற்றும் Landsat தரவுத்தொகுப்புகளுக்கு ஒரே நேரத்தில் உள்ள வேறுபாடுகளை பகுப்பாய்வு செய்வது மிகவும் முக்கியமானது. |
addBands() | சேகரிப்பில் உள்ள ஒவ்வொரு படத்திற்கும் புதிய கணக்கிடப்பட்ட பட்டைகளை (NDVI, NDWI மற்றும் NDSI போன்றவை) சேர்க்கிறது. தனித்தனி தரவுத்தொகுப்புகளை உருவாக்காமல் ஒரே பட சேகரிப்பில் பல குறியீடுகளைப் பயன்படுத்துவதற்கு இது அவசியம். |
unmask() | மாஸ்க் செய்யப்பட்ட பிக்சல்களை குறிப்பிட்ட மதிப்புடன் நிரப்புகிறது. எங்கள் ஸ்கிரிப்ட்டில், நிரந்தர நீர் பகுதிகளை அவிழ்க்க இது பயன்படுகிறது, முழு பிராந்தியத்திலும் தரவு தொடர்ந்து செயலாக்கப்படுவதை உறுதி செய்கிறது. |
reduce() | ee.Reducer.percentile() போன்ற குறிப்பிட்ட குறைப்பான் செயல்பாட்டைப் பயன்படுத்தி பட சேகரிப்பைக் குறைக்கிறது. இங்கே, பிக்சல் மதிப்புகளின் 30வது சதவீதத்தைக் கணக்கிட இது பயன்படுகிறது, இது கலப்பு பட உருவாக்கத்தை மேம்படுத்துகிறது. |
clip() | குறிப்பிட்ட ஆர்வமுள்ள பகுதியின் எல்லைகளுக்கு ஒரு படத்தை கிளிப் செய்கிறது. இது அந்த பகுதிக்கு தொடர்புடைய தரவு மட்டுமே செயலாக்கப்படுவதை உறுதி செய்கிறது, இது செயல்பாட்டின் வேகத்தை அதிகரிக்கிறது. |
gt() | இந்த கட்டளையானது 'பெரியதை விட' என்பதைக் குறிக்கிறது மற்றும் வாசலின் அடிப்படையில் பைனரி படங்களை உருவாக்கப் பயன்படுகிறது. இந்த வழக்கில், இது 80% க்கும் அதிகமான நீர் நிகழ்வுகளைக் கொண்ட பகுதிகளை அடையாளம் காட்டுகிறது. |
map() | சேகரிப்பில் உள்ள ஒவ்வொரு படத்திற்கும் ஒரு செயல்பாட்டைப் பயன்படுத்துகிறது. எங்கள் எடுத்துக்காட்டில், சேகரிப்பில் உள்ள அனைத்துப் படங்களிலும் NDVI, NDWI மற்றும் NDSI ஆகியவற்றைக் கணக்கிடுவதற்கு addIndices செயல்பாட்டைப் பயன்படுத்துகிறது, இது பணிப்பாய்வுகளை ஒழுங்குபடுத்துகிறது. |
மேம்படுத்தப்பட்ட செயல்திறனுக்காக GEE ஸ்கிரிப்ட்களை மேம்படுத்துதல்
வழங்கப்பட்ட ஸ்கிரிப்ட்டில், செண்டினல் மற்றும் லேண்ட்சாட் ஆகிய இரண்டு வெவ்வேறு மூலங்களிலிருந்து செயற்கைக்கோள் படங்களைப் பிரித்தெடுத்து செயலாக்குவதே குறிக்கோள். தி பிளாட்ஃபார்ம் பயனர்கள் பரந்த அளவிலான செயற்கைக்கோள் தரவை அணுகவும், வடிகட்டுதல், அட்டவணைப்படுத்துதல் மற்றும் காட்சிப்படுத்தல் போன்ற பல்வேறு செயல்பாடுகளைப் பயன்படுத்தவும் அனுமதிக்கிறது. இந்த ஸ்கிரிப்ட்டில் பயன்படுத்தப்படும் முக்கிய அம்சங்களில் ஒன்று செயல்பாடு, இது NDVI, NDWI மற்றும் NDSI போன்ற முக்கியமான குறியீடுகளைக் கணக்கிடப் பயன்படுகிறது. குறிப்பிட்ட பகுதியில் உள்ள தாவரங்கள், நீர் மற்றும் பனி மூட்டம் ஆகியவற்றை பகுப்பாய்வு செய்வதற்கு இந்த குறியீடுகள் முக்கியமானவை. ஸ்கிரிப்ட் ஆர்வமுள்ள ஒரு புள்ளியை வரையறுப்பதன் மூலம் தொடங்குகிறது மற்றும் வழங்கப்பட்ட ஆயங்களைப் பயன்படுத்தி அதன் மீது வரைபடத்தை மையப்படுத்துகிறது.
ஸ்கிரிப்ட் பல வடிப்பான்களைப் பயன்படுத்துகிறது மற்றும் , செயலாக்கப்படும் தரவுகளின் அளவைக் குறைக்க, இதனால் செயல்படுத்தும் நேரத்தை மேம்படுத்துகிறது. உதாரணமாக, filterBounds() ஆர்வமுள்ள பகுதியை வெட்டும் படங்கள் மட்டுமே சேர்க்கப்படுவதை உறுதி செய்கிறது வடிகட்டி தேதி() ஒரு குறிப்பிட்ட தேதி வரம்பில் படங்களை வரம்பிடுகிறது. சென்டினல் மற்றும் லேண்ட்சாட் இமேஜரி போன்ற பெரிய தரவுத்தொகுப்புகளைச் செயலாக்க இது அவசியம், ஏனெனில் இது கணக்கீட்டு சுமையைக் குறைக்கிறது. கூடுதலாக, தி கிளவுட் கவரேஜ் அதிக மேகம் கொண்ட படங்களை நிராகரிக்க உதவுகிறது, சிறந்த தரமான பகுப்பாய்வை உறுதி செய்கிறது.
ஸ்கிரிப்ட்டின் ஒரு முக்கியமான அம்சம் செயல்பாடு, இது படத்தொகுப்பில் கணக்கிடப்பட்ட குறியீடுகளை (NDVI, NDWI, NDSI) சேர்க்கிறது. JRC குளோபல் சர்ஃபேஸ் வாட்டர் தரவுத்தொகுப்பில் இருந்து தரவைப் பயன்படுத்தி நிரந்தர நீர் முகமூடியையும் ஸ்கிரிப்ட் உள்ளடக்கியுள்ளது. நீர் முகமூடியானது அதிக நீர் (80% க்கும் அதிகமாக) உள்ள பகுதிகளைத் தவிர்த்து, தாவரங்கள் மற்றும் பனிப் பகுப்பாய்வின் முடிவுகளைத் திசைதிருப்பலாம். இது மூலம் செய்யப்படுகிறது மற்றும் செயல்பாடுகள், இது பிக்சல் மதிப்புகளின் அடிப்படையில் பகுதிகளை தனிமைப்படுத்த ஸ்கிரிப்டை அனுமதிக்கிறது.
இறுதியாக, ஸ்கிரிப்ட் பயன்படுத்துகிறது தேர்ந்தெடுக்கப்பட்ட பிக்சல் மதிப்புகளின் 30வது சதவீதத்தைக் குறிக்கும் ஒரு கூட்டுப் படத்தை உருவாக்க, சதவீதம் குறைப்பான் மூலம் செயல்படும். இந்தக் கலப்புப் படம் ஆர்வமுள்ள பகுதிக்கு க்ளிப் செய்யப்பட்டு, வரைபடத்தைப் பயன்படுத்தி வரைபடத்தில் காட்சிப்படுத்தப்படுகிறது செயல்பாடு. காட்சி அளவுருக்கள் சென்டினல் மற்றும் லேண்ட்சாட் கலவைகள் இரண்டிற்கும் வரையறுக்கப்பட்டுள்ளன, இது பயனரை பொருத்தமான வண்ண அமைப்புகளுடன் பார்க்க அனுமதிக்கிறது. வடிகட்டுதல், மறைத்தல் மற்றும் கூட்டு உருவாக்கம் போன்ற பல்வேறு பட செயலாக்க படிகளை இணைப்பதன் மூலம், இந்த ஸ்கிரிப்ட் செயற்கைக்கோள் படங்களை பகுப்பாய்வு செய்வதற்கான திறமையான வழியை வழங்குகிறது, இருப்பினும் செயல்படுத்தும் நேரத்தைக் குறைக்க மேலும் மேம்படுத்தல் பயன்படுத்தப்படலாம்.
வேகமான செயலாக்கத்திற்காக கூகுள் எர்த் இன்ஜின் ஸ்கிரிப்ட் எக்ஸிகியூஷனை மேம்படுத்துகிறது
இந்தத் தீர்வு கூகுள் எர்த் எஞ்சினை (GEE) பயன்படுத்துகிறது, இது தரவு மீட்டெடுப்பு நேரத்தைக் குறைத்து செயல்பாடுகளை எளிதாக்குவதன் மூலம் செயல்திறனை மேம்படுத்துகிறது. ஜாவாஸ்கிரிப்ட் ஸ்கிரிப்டிங் மொழியாகப் பயன்படுத்தப்படுகிறது.
var pointJSP = ee.Geometry.Point([86.465263, 20.168076]);
Map.centerObject(pointJSP, 14);
// Combine date variables for flexibility
var startDate = '2024-02-01';
var endDate = '2024-03-01';
// Function to add NDVI, NDWI, NDSI
var addIndices = function(image) {
var ndvi = image.normalizedDifference(['NIR', 'RED']).rename('NDVI');
var ndwi = image.normalizedDifference(['NIR', 'SWIR1']).rename('NDWI');
var ndsi = image.normalizedDifference(['SWIR1', 'SWIR2']).rename('NDSI');
return image.addBands(ndvi).addBands(ndwi).addBands(ndsi);
};
// Use fewer data points by filtering for cloud-free pixels only once
var sentinel = ee.ImageCollection('COPERNICUS/S2_SR')
.filterBounds(pointJSP)
.filterDate(startDate, endDate)
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 30));
ஸ்கிரிப்ட் தாமதங்களைக் குறைக்க GEE க்கு திறமையான தரவு செயலாக்கத்தைப் பயன்படுத்துதல்
இந்த தீர்வு குறியீட்டு கணக்கீடுகள் மற்றும் வரம்புகளை இணைப்பதன் மூலம் உகந்த தரவு கையாளுதலை ஒருங்கிணைக்கிறது. கூகுள் எர்த் எஞ்சின் செயலாக்கத்திற்கு ஜாவாஸ்கிரிப்ட் பயன்படுத்தப்படுகிறது.
var landsat8 = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR')
.filterBounds(pointJSP)
.filterDate(startDate, endDate)
.filter(ee.Filter.lt('CLOUD_COVER', 30));
// Apply water mask for permanent water areas
var waterMask = ee.Image('JRC/GSW1_4/GlobalSurfaceWater').select('occurrence').gt(80).unmask();
// Add indices to Landsat 8 imagery
var landsatIndices = landsat8.map(addIndices);
var composite = landsatIndices.reduce(ee.Reducer.percentile([30])).clip(pointJSP).mask(waterMask.eq(0));
Map.addLayer(composite, {bands: ['RED', 'GREEN', 'BLUE'], min: 0, max: 3000}, 'Landsat Composite');
Map.addLayer(waterMask, {min: 0, max: 1, palette: ['white', 'blue']}, 'Water Mask', false);
ரிமோட் சென்சிங் ஸ்கிரிப்ட்களின் செயல்திறனை மேம்படுத்துதல்
கூகுள் எர்த் என்ஜின் (ஜிஇஇ) ஸ்கிரிப்ட்களுடன் பணிபுரியும் போது ஒரு முக்கியக் கருத்தில் செயல்பாடுகள் திறமையாக கையாளப்படுவதை உறுதி செய்வதாகும். சுற்றுச்சூழல் பகுப்பாய்வில் சென்டினல் மற்றும் லேண்ட்சாட் போன்ற பெரிய தரவுத்தொகுப்புகளின் பயன்பாடு பொதுவானது என்றாலும், தரவுகளின் சுத்த அளவு ஸ்கிரிப்ட் செயலாக்கத்தை மெதுவாக்கும். செயல்திறனை மேம்படுத்துவதற்கான ஒரு வழி, தேவையான தரவு மட்டுமே செயலாக்கப்படுவதை உறுதி செய்வதாகும். போன்ற கட்டளைகளைப் பயன்படுத்துதல் மற்றும் தரவுத்தொகுப்பின் அளவைக் குறைக்கிறது, இது கணக்கீடுகளை ஒழுங்குபடுத்த உதவுகிறது. குறிப்பிட்ட தேதி வரம்புகள் மற்றும் புவியியல் பகுதிகளைத் தேர்ந்தெடுப்பது, செயல்படுத்தும் நேரத்தை கணிசமாகக் குறைக்கும்.
GEE ஸ்கிரிப்ட் செயல்திறனை பாதிக்கும் மற்றொரு அம்சம் தரவு எவ்வாறு செயலாக்கப்படுகிறது என்பது. NDVI, NDWI மற்றும் NDSI போன்ற முக்கியமான குறியீடுகளைக் கணக்கிட ஸ்கிரிப்ட் உதாரணம் ஒரு செயல்பாட்டைப் பயன்படுத்துகிறது. இந்த குறியீடுகள் பட சேகரிப்பில் பட்டைகளாக சேர்க்கப்படுகின்றன, இது மிகவும் முழுமையான பகுப்பாய்வை அனுமதிக்கிறது. இருப்பினும், ஒரு பொதுவான தவறு, அத்தகைய செயல்பாடுகளை முதலில் வடிகட்டாமல் முழு தரவுத்தொகுப்பிற்கும் பயன்படுத்துவதாகும். பொருத்தமற்ற தரவுகளில் தேவையற்ற கணக்கீடுகளைத் தவிர்க்க, வடிகட்டலுக்குப் பிறகு இதுபோன்ற செயல்பாடுகளைப் பயன்படுத்துவது மிகவும் முக்கியமானது.
காட்சிப்படுத்தல் என்பது ஸ்கிரிப்ட்டின் மற்றொரு உறுப்பு ஆகும், அதை மேம்படுத்தலாம். பல அடுக்குகள் அல்லது சிக்கலான காட்சிப்படுத்தல்களைச் சேர்ப்பது செயலாக்க நேரத்தைக் குறைக்கலாம். கலவைகளை வழங்க ஸ்கிரிப்ட் முன் வரையறுக்கப்பட்ட காட்சி அளவுருக்களைப் பயன்படுத்துகிறது, ஆனால் அவை வெளிப்படையாகத் தேவைப்படாவிட்டால் சில அடுக்குகளை முடக்குவதன் மூலம் செயல்திறனை மேம்படுத்தலாம். இது ஸ்கிரிப்டை அதன் செயல்பாட்டைப் பராமரிக்கும் போது இலகுவாக வைத்திருக்க உதவுகிறது. பயன்படுத்தி கட்டளைகள் தேவையான பகுதி மட்டுமே வழங்கப்படுவதை உறுதிசெய்கிறது, இது ஒட்டுமொத்த செயலாக்கச் சுமையைக் குறைக்கிறது.
- எனது GEE ஸ்கிரிப்ட்களின் செயல்திறனை எவ்வாறு மேம்படுத்துவது?
- பயன்பாட்டை மேம்படுத்தவும் , , மற்றும் செயலாக்குவதற்கு முன் உங்கள் தரவுத்தொகுப்பின் அளவைக் குறைக்கவும்.
- எனது GEE ஸ்கிரிப்ட் இயங்குவதற்கு ஏன் இவ்வளவு நேரம் எடுக்கும்?
- பெரிய தரவுத்தொகுப்புகள் மற்றும் சிக்கலான கணக்கீடுகள் செயல்பாட்டை மெதுவாக்கும். பயன்படுத்தவும் மற்றும் தொடர்புடைய பகுதிகளுக்கு செயலாக்கத்தை மட்டுப்படுத்த.
- GEE இல் செயலாக்கப்பட்ட படங்களின் எண்ணிக்கையைக் குறைக்க முடியுமா?
- ஆம், விண்ணப்பிப்பதன் மூலம் கிளவுட் கவரேஜ் மற்றும் குறிப்பிட்ட காலகட்டங்களில் கவனம் செலுத்த வேண்டும்.
- எனது ஸ்கிரிப்ட்டில் குறியீட்டு கணக்கீடுகளை எப்படி எளிமைப்படுத்துவது?
- போன்ற ஒரு செயல்பாட்டைப் பயன்படுத்தவும் ஒரு படிநிலையில் பல குறியீடுகளை (எ.கா., NDVI, NDWI) சேர்ப்பதை நெறிப்படுத்த.
- அத்தியாவசிய அடுக்குகளை மட்டும் காட்சிப்படுத்த முடியுமா?
- ஆம், தேவையற்ற அடுக்குகளை முடக்கி, எளிமைப்படுத்தப்பட்ட காட்சிப்படுத்தல் அளவுருக்களைப் பயன்படுத்தவும் சிறந்த செயல்திறனுக்காக.
கூகுள் எர்த் என்ஜின் ஸ்கிரிப்ட்களை மேம்படுத்துதல் என்பது பெரிய தரவுத்தொகுப்புகளை திறமையாக கையாளுதல், வடிப்பான்களை முன்கூட்டியே பயன்படுத்துதல் மற்றும் தேவையற்ற தரவு செயல்பாடுகளை குறைத்தல் ஆகியவை அடங்கும். மூலம் வடிகட்டுதல் போன்ற அத்தியாவசிய பகுதிகளில் கவனம் செலுத்துதல் மற்றும் இடம் செயலாக்க நேரத்தை கணிசமாக குறைக்கலாம்.
போன்ற செயல்பாடுகளை இணைப்பதன் மூலம் மற்றும் பொருத்தமற்ற தரவை அகற்ற த்ரெஷோல்ட் முகமூடிகளைப் பயன்படுத்தி, ஸ்கிரிப்ட் செயல்திறனை மேலும் மேம்படுத்தலாம். இந்த நுட்பங்கள் செயல்பாட்டினை சீரமைத்து, விரைவான முடிவுகளை வழங்குவதோடு, கூகுள் எர்த் எஞ்சின் இயங்குதளத்தை சிறப்பாகப் பயன்படுத்தவும் முடியும்.
- ஸ்கிரிப்ட் ஆப்டிமைசேஷன் நுட்பங்களைப் பற்றிய நுண்ணறிவுகளை வழங்கும் அதிகாரப்பூர்வ கூகுள் எர்த் இன்ஜின் ஆவணங்களை அடிப்படையாகக் கொண்ட உள்ளடக்கத்தைப் பயன்படுத்தி இந்தக் கட்டுரை உருவாக்கப்பட்டது. கூகுள் எர்த் இன்ஜின் வழிகாட்டிகள்
- சிக்கலான ஸ்கிரிப்ட்களில் செயல்திறனை மேம்படுத்துவதற்கான விவாதங்கள் மற்றும் தீர்வுகளை வழங்கும் GEE சமூக மன்றத்திலிருந்து கூடுதல் தகவல்கள் சேகரிக்கப்பட்டன. கூகுள் எர்த் இன்ஜின் சமூகம்
- பெரிய தரவுத்தொகுப்புகளைக் கையாள்வதற்கான சிறந்த நடைமுறைகள் பின்வரும் இணைப்பில் கிடைக்கும் ரிமோட் சென்சிங் இலக்கியங்கள் மற்றும் பயிற்சிகளிலிருந்து குறிப்பிடப்பட்டுள்ளன. நாசா புவி கண்காணிப்பகம்