Earth Engine में मौजूद, हेनसेन और अन्य (2013) का ग्लोबल फ़ॉरेस्ट चेंज डेटासेट, 2000 से 2014 के बीच, दुनिया भर में जंगलों में हुए बदलाव को दिखाता है. यह डेटासेट, 30 मीटर के रिज़ॉल्यूशन पर उपलब्ध है. चलिए, सबसे पहले मैप में हैनसन और उनके साथियों का डेटा जोड़ते हैं. "Hansen forest" खोजकर और इंपोर्ट किए गए डेटा को gfc2014 नाम देकर, ग्लोबल फ़ॉरेस्ट चेंज डेटा इंपोर्ट करें. इसके अलावा, कोड एडिटर में यह कोड कॉपी करें. डेटासेट खोजने और इंपोर्ट करने के बारे में ज़्यादा जानें:
कोड एडिटर (JavaScript)
var gfc2014 = ee.Image('UMD/hansen/global_forest_change_2015'); Map.addLayer(gfc2014);
कोड एडिटर में सबसे ऊपर मौजूद, Run बटन पर क्लिक करें. इसके बाद, आपको इमेज 1 जैसा कुछ दिखेगा.
चिंता न करें, जल्द ही आपको बेहतर नतीजे मिलेंगे. Earth Engine में डिफ़ॉल्ट इमेज विज़ुअलाइज़ेशन के बारे में ज़्यादा जानें. इस सेक्शन के आखिर में, आपको एक इमेज मिलेगी जो इमेज 2 जैसी दिखेगी. इसमें हरे रंग से उन जगहों को दिखाया गया है जहां साल 2000 में जंगल थे. लाल रंग से उन जगहों को दिखाया गया है जहां स्टडी के दौरान जंगल कम हुए. नीले रंग से उन जगहों को दिखाया गया है जहां इस दौरान जंगल बढ़े. मैजेंटा रंग से उन जगहों को दिखाया गया है जहां जंगल कम भी हुए और बढ़े भी. साथ ही, बिना जंगल वाली जगहों को मास्क किया गया है.
याद रखें कि जब किसी मैप में मल्टी-बैंड इमेज जोड़ी जाती है, तो इमेज के पहले तीन बैंड को लाल, हरे, और नीले रंग के तौर पर चुना जाता है. साथ ही, उन्हें हर बैंड के डेटा टाइप के हिसाब से स्ट्रेच किया जाता है. इमेज के लाल दिखने की वजह यह है कि पहले तीन बैंड treecover2000, loss, और gain हैं. treecover2000 बैंड को प्रतिशत के तौर पर दिखाया जाता है. इसकी वैल्यू, loss (हरे) और gain (नीले) से काफ़ी ज़्यादा होती हैं. ये बाइनरी ({0, 1}) होती हैं. इसलिए, इमेज में लाल रंग ज़्यादा दिखता है.
ग्लोबल फ़ॉरेस्ट चेंज डेटा में ये बैंड शामिल हैं:
| बैंड का नाम | ब्यौरा | रेंज |
|---|---|---|
| treecover2000 | पिक्सल में, पेड़ों से ढकी जगह का प्रतिशत. | 0 - 100 |
| हार की वजह से | अगर स्टडी की अवधि के दौरान कभी भी नुकसान होता है, तो 1. | 0 या 1 |
| वज़न बढ़ाना है | अगर स्टडी की अवधि के दौरान कभी भी फ़ायदा हुआ, तो 1. | 0 या 1 |
| lossyear | साल 2001 से, जिस साल नुकसान हुआ है उसे एक से इंडेक्स किया गया है. अगर कोई नुकसान नहीं हुआ है, तो उसे शून्य से इंडेक्स किया गया है. | 0 - 12 |
| first_b30 | साल 2000 में मान्य पहले पिक्सल से बना लैंडसैट 7 रेड बैंड (या इससे पुराना, अगर साल 2000 में कोई मान्य पिक्सल नहीं था). | 0 - 255 |
| first_b40 | साल 2000 में, पहले मान्य पिक्सल से बनाया गया लैंडसैट 7 का नियर इन्फ़्रारेड बैंड. | 0 - 255 |
| first_b50 | साल 2000 में, मान्य पिक्सल से बनाया गया पहला Landsat 7 शॉर्ट वेव इन्फ़्रारेड बैंड. | 0 - 255 |
| first_b70 | साल 2000 में, पहले मान्य पिक्सल से बनाया गया Landsat 7 का दूसरा शॉर्ट वेव इन्फ़्रारेड बैंड. | 0 - 255 |
| last_b30 | साल 2012 में, मान्य पिक्सल से बनाया गया Landsat 7 का रेड बैंड. | 0 - 255 |
| last_b40 | Landsat 7 का नियर इन्फ़्रारेड बैंड, 2012 में मान्य पिक्सल से बनाया गया था. | 0 - 255 |
| last_b50 | साल 2012 के मान्य पिक्सल से बना, Landsat 7 का पहला शॉर्ट वेव इन्फ़्रारेड बैंड. | 0 - 255 |
| last_b70 | लैंडसैट 7 का दूसरा शॉर्ट वेव इन्फ़्रारेड बैंड, साल 2012 के मान्य पिक्सल से बनाया गया है. | 0 - 255 |
| डेटामास्क | कोई डेटा नहीं (0), मैप की गई ज़मीन की सतह (1), और स्थायी जलाशय (2). | 0, 1, 2 |
साल 2000 में जंगल के दायरे को ग्रेस्केल इमेज के तौर पर दिखाने के लिए, treecover2000 बैंड का इस्तेमाल किया जा सकता है. इसे Map.addLayer() के दूसरे आर्ग्युमेंट में बताया गया है:
कोड एडिटर (JavaScript)
Map.addLayer(gfc2014, {bands: ['treecover2000']}, 'treecover2000');
इससे एक इमेज बनती है, जो इमेज 3 जैसी दिखनी चाहिए.
यहां एक इमेज दी गई है, जिसमें साल 2015 के लिए तीन बैंड, Landsat बैंड 5, 4, और 3 का इस्तेमाल किया गया है. इस बैंड कॉम्बिनेशन में, अच्छी वनस्पति को हरे रंग और मिट्टी को हल्के बैंगनी रंग में दिखाया गया है::
कोड एडिटर (JavaScript)
Map.addLayer( gfc2014, {bands: ['last_b50', 'last_b40', 'last_b30']}, 'false color');
नतीजा, इमेज 4 जैसा दिखना चाहिए.
ग्लोबल फ़ॉरेस्ट चेंज डेटासेट का एक अच्छा विज़ुअलाइज़ेशन, साल 2000 में जंगल की सीमा को हरे रंग में, जंगल के नुकसान को लाल रंग में, और जंगल के फ़ायदे को नीले रंग में दिखाता है. खास तौर पर, loss को पहला बैंड (लाल), treecover2000 को दूसरा बैंड (हरा), और gain को तीसरा बैंड (नीला) बनाएं:
कोड एडिटर (JavaScript)
Map.addLayer(gfc2014, {bands: ['loss', 'treecover2000', 'gain']}, 'green');
नुकसान और फ़ायदे वाले बैंड की वैल्यू बाइनरी होती हैं. इसलिए, वे इमेज पर मुश्किल से दिखेंगी. यह इमेज, पांचवीं इमेज जैसी दिखनी चाहिए.
हम चाहते हैं कि जंगल में कमी को चमकीले लाल रंग में और जंगल में बढ़ोतरी को चमकीले नीले रंग में दिखाया जाए. इसे ठीक करने के लिए, हम विज़ुअलाइज़ेशन पैरामीटर max का इस्तेमाल करके, उस रेंज को सेट कर सकते हैं जिसमें इमेज डेटा को स्ट्रेच किया जाता है. ध्यान दें कि max विज़ुअलाइज़ेशन पैरामीटर, वैल्यू की एक सूची लेता है. यह सूची, हर बैंड के लिए ज़्यादा से ज़्यादा वैल्यू के हिसाब से होती है:
कोड एडिटर (JavaScript)
Map.addLayer(gfc2014, { bands: ['loss', 'treecover2000', 'gain'], max: [1, 255, 1] }, 'forest cover, loss, gain');
नतीजा, इमेज 6 जैसा दिखना चाहिए.
इससे एक ऐसी इमेज बनती है जिसमें जंगल वाले हिस्से को हरे रंग से, जंगल में कमी वाले हिस्से को लाल रंग से, जंगल में बढ़ोतरी वाले हिस्से को नीले रंग से, और जंगल में बढ़ोतरी और कमी, दोनों वाले हिस्से को मैजेंटा रंग से दिखाया जाता है. हालांकि, ध्यान से देखने पर पता चलता है कि यह पूरी तरह से सही नहीं है. नुकसान को लाल रंग के बजाय, नारंगी रंग से दिखाया जाता है. ऐसा इसलिए होता है, क्योंकि गहरे लाल रंग के पिक्सल, हरे रंग के पिक्सल के साथ मिल जाते हैं. इससे नारंगी रंग के पिक्सल बनते हैं. इसी तरह, जिन पिक्सल में जंगल, नुकसान, और फ़ायदा होता है वे गुलाबी रंग के होते हैं. यह हरा, चमकीला लाल, और चमकीला नीला रंग का कॉम्बिनेशन होता है. उदाहरण के लिए, इमेज 7 देखें.
ट्यूटोरियल की शुरुआत में बताई गई इमेज पाने के लिए, जंगल, नुकसान, फ़ायदे, और नुकसान और फ़ायदे, दोनों के लिए अलग-अलग इमेज बनाई जा सकती हैं. इनमें से हर इमेज को मैप में उस क्रम में जोड़ें जो दिखाने के लिए सबसे सही हो.
पैलेट
हर इमेज को अलग रंग में दिखाने के लिए, सिंगल बैंड इमेज के लिए Map.addLayer() के palette पैरामीटर का इस्तेमाल किया जा सकता है. पैलेट की मदद से, वह कलर स्कीम सेट की जा सकती है जिसमें इमेज दिखती है (पैलेट के बारे में ज़्यादा जानें). Earth Engine API के ट्यूटोरियल से याद करें कि पैलेट में मौजूद रंगों को min और max तक लीनियर तरीके से स्ट्रेच किया जाता है.
उदाहरण के लिए, जंगल की सीमा दिखाने वाली इमेज को हरे रंग के पैलेट में दिखाने के लिए, इसका इस्तेमाल किया जा सकता है:
कोड एडिटर (JavaScript)
Map.addLayer(gfc2014, { bands: ['treecover2000'], palette: ['000000', '00FF00'] }, 'forest cover palette');
नतीजा, इमेज 8 जैसा दिखना चाहिए.
ज़ूम इन करने से, इमेज के रिज़ॉल्यूशन को बेहतर तरीके से समझा जा सकता है. इमेज 9 में, पराग्वे के मारिस्कल एस्टिगारिबिया के आस-पास का इलाका दिखाया गया है.
तीसरी इमेज में दिखाया गया फ़ोटो थोड़ा गहरा है. समस्या यह है कि treecover2000 बैंड का डेटा टाइप बाइट ([0, 255]) है, जबकि असल में वैल्यू प्रतिशत ([0, 100]) में हैं. इमेज को ज़्यादा चमकदार बनाने के लिए, min और/या max पैरामीटर को ज़रूरत के मुताबिक सेट किया जा सकता है. इसके बाद, पैलेट को उन एक्सट्रीमा के बीच स्ट्रेच किया जाता है.
कोड एडिटर (JavaScript)
Map.addLayer(gfc2014, { bands: ['treecover2000'], palette: ['000000', '00FF00'], max: 100 }, 'forest cover percent');
नतीजा, इमेज 9 जैसा दिखना चाहिए. ध्यान दें कि इस उदाहरण में, सिर्फ़ max को सेट किया गया है. min डिफ़ॉल्ट रूप से शून्य पर सेट होता है.
मास्किंग
अब तक दिखाई गई सभी इमेज में, बड़े-बड़े काले हिस्से थे, जहां डेटा शून्य था. उदाहरण के लिए, महासागर में पेड़ नहीं होते. इन हिस्सों को पारदर्शी बनाने के लिए, इनकी वैल्यू को मास्क किया जा सकता है. Earth Engine में मौजूद हर पिक्सल की एक वैल्यू और एक मास्क होता है. इमेज को मास्क से सेट की गई पारदर्शिता के साथ रेंडर किया जाता है. इसमें शून्य का मतलब पूरी तरह से पारदर्शी और एक का मतलब पूरी तरह से अपारदर्शी होता है.
किसी इमेज को उसी इमेज से मास्क किया जा सकता है. उदाहरण के लिए, अगर treecover2000
बैंड को खुद से मास्क किया जाता है, तो वे सभी इलाके पारदर्शी हो जाएंगे जहां जंगल नहीं है:
कोड एडिटर (JavaScript)
Map.addLayer(gfc2014.mask(gfc2014), { bands: ['treecover2000'], palette: ['000000', '00FF00'], max: 100 }, 'forest cover masked');
नतीजा, इमेज 10 जैसा दिखना चाहिए.
उदाहरण
ट्यूटोरियल की शुरुआत में दिखाए गए विज़ुअलाइज़ेशन की तरह, हैनसन डेटा का विज़ुअलाइज़ेशन बनाना मुमकिन है. इस उदाहरण में, हम एक छोटे से अंतर के साथ सब कुछ एक साथ रख रहे हैं. Map.addLayer कॉल में bands पैरामीटर की वैल्यू देने के बजाय, हम select() का इस्तेमाल करके नई इमेज बना रहे हैं:
कोड एडिटर (JavaScript)
var treeCover = gfc2014.select(['treecover2000']); var lossImage = gfc2014.select(['loss']); var gainImage = gfc2014.select(['gain']); // Add the tree cover layer in green. Map.addLayer(treeCover.updateMask(treeCover), {palette: ['000000', '00FF00'], max: 100}, 'Forest Cover'); // Add the loss layer in red. Map.addLayer(lossImage.updateMask(lossImage), {palette: ['FF0000']}, 'Loss'); // Add the gain layer in blue. Map.addLayer(gainImage.updateMask(gainImage), {palette: ['0000FF']}, 'Gain');
नतीजा, इमेज 11 जैसा दिखना चाहिए.
ध्यान दें कि यहां तीन addLayer() कॉल हैं. हर
addLayer() कॉल, मैप में एक लेयर जोड़ता है. मैप के सबसे ऊपर दाईं ओर मौजूद लेयर बटन पर कर्सर घुमाने से, ये लेयर दिखती हैं. हर लेयर को उसके बगल में मौजूद चेकबॉक्स का इस्तेमाल करके, बंद या चालू किया जा सकता है. साथ ही, लेयर के नाम के बगल में मौजूद स्लाइडर का इस्तेमाल करके, लेयर की ओपैसिटी को कम या ज़्यादा किया जा सकता है.
हम ट्यूटोरियल की शुरुआत में दिखाई गई इमेज को करीब-करीब बना सकते हैं. हालांकि, नुकसान और फ़ायदे, दोनों दिखाने वाली लेयर मौजूद नहीं है. यह मौजूद नहीं है, क्योंकि हमें यह जानना होगा कि इमेज बैंड पर कुछ कैलकुलेशन कैसे किए जाते हैं. इसके बाद ही, हम यह कैलकुलेट कर पाएंगे कि किन पिक्सल में नुकसान और फ़ायदा, दोनों दिखते हैं. यह अगले सेक्शन का विषय है.