Hansen และคณะ (2013)
ชุดข้อมูลการเปลี่ยนแปลงของป่าไม้ทั่วโลกใน Earth Engine แสดงการเปลี่ยนแปลงของป่าไม้ที่ความละเอียด 30 เมตร
ทั่วโลกระหว่างปี 2000 ถึง 2014 มาเริ่มต้นด้วยการเพิ่มข้อมูลของ Hansen et
al. ลงในแผนที่ ไม่ว่าจะนำเข้าข้อมูลการเปลี่ยนแปลงป่าไม้ทั่วโลก
(ดูข้อมูลเพิ่มเติมเกี่ยวกับการค้นหาและนำเข้าชุดข้อมูล)
โดยค้นหา "ป่าไม้ของ Hansen" และตั้งชื่อการนำเข้าว่า gfc2014
หรือคัดลอก
โค้ดต่อไปนี้ลงในโปรแกรมแก้ไขโค้ด
โปรแกรมแก้ไขโค้ด (JavaScript)
var gfc2014 = ee.Image('UMD/hansen/global_forest_change_2015'); Map.addLayer(gfc2014);
คลิกปุ่มเรียกใช้ที่ด้านบนของเครื่องมือแก้ไขโค้ด แล้วคุณจะเห็น ลักษณะคล้ายกับรูปที่ 1

ไม่ต้องกังวล คุณจะทำให้ดูดีขึ้นได้ในเร็วๆ นี้ (ดูข้อมูลเพิ่มเติม เกี่ยวกับการแสดงภาพรูปภาพเริ่มต้นใน Earth Engine) เมื่อสิ้นสุดส่วนนี้ คุณจะมีรูปภาพที่คล้ายกับรูปที่ 2 ซึ่งสีเขียวแสดงถึงบริเวณที่ การศึกษาตรวจพบป่าไม้ในปี 2000 สีแดงคือการสูญเสียป่าไม้โดยประมาณในช่วงระยะเวลาการศึกษา สีน้ำเงินคือการเพิ่มขึ้นของป่าไม้ในช่วงดังกล่าว สีม่วงแดงคือพื้นที่ที่มีทั้งการสูญเสียและ การเพิ่มขึ้นของป่าไม้ และระบบจะมาสก์พื้นที่ที่ไม่ใช่ป่าไม้

โปรดทราบว่าเมื่อเพิ่มรูปภาพหลายแถบคลื่นลงในแผนที่ ระบบจะเลือกแถบคลื่น 3 แถบแรกของรูปภาพ
เป็นสีแดง สีเขียว และสีน้ำเงินตามลำดับ และยืดตามประเภทข้อมูล
ของแต่ละแถบคลื่น สาเหตุที่รูปภาพมีสีแดงเนื่องจากแถบ 3 แถบแรกคือ
treecover2000
, loss
และ gain
treecover2000
แถบแสดงเป็นเปอร์เซ็นต์และมีค่าสูงกว่า loss
(สีเขียว) และ gain
(สีน้ำเงิน) มาก ซึ่งเป็นไบนารี ({0, 1}) ดังนั้น
ภาพจึงแสดงเป็นสีแดงอย่างท่วมท้น
แถบข้อมูลการเปลี่ยนแปลงของป่าไม้ทั่วโลกมีดังนี้
ชื่อวง | คำอธิบาย | ช่วง |
---|---|---|
treecover2000 | เปอร์เซ็นต์ของพื้นที่ปกคลุมของต้นไม้ในพิกเซล | 0 - 100 |
แพ้ | 1 หากมีการสูญเสียเกิดขึ้นในช่วงระยะเวลาการศึกษา | 0 หรือ 1 |
กำไร | 1 หากมีกำไรเกิดขึ้นในช่วงระยะเวลาการศึกษา | 0 หรือ 1 |
lossyear | ปีที่เกิดการสูญเสีย โดยมีดัชนีเริ่มต้นที่ 1 จากปี 2001 หรือ 0 หากไม่มีการสูญเสีย เกิดขึ้น | 0 - 12 |
first_b30 | แถบสีแดงของ Landsat 7 สร้างจากพิกเซลแรกที่ถูกต้องในปี 2000 (หรือเก่ากว่านั้นหากไม่มีพิกเซลที่ถูกต้องในปี 2000) | 0 - 255 |
first_b40 | แถบอินฟราเรดใกล้ของ Landsat 7 สร้างขึ้นจากพิกเซลแรกที่ถูกต้อง ในปี 2000 | 0 - 255 |
first_b50 | แถบอินฟราเรดคลื่นสั้นของ Landsat 7 แถบแรกสร้างขึ้นจากพิกเซลที่ถูกต้องแถบแรกในปี 2000 | 0 - 255 |
first_b70 | แถบอินฟราเรดคลื่นสั้นของ Landsat 7 ชุดที่ 2 สร้างขึ้นจากพิกเซลที่ถูกต้องชุดแรก ในปี 2000 | 0 - 255 |
last_b30 | แถบสีแดงของ Landsat 7 สร้างขึ้นจากพิกเซลที่ถูกต้องล่าสุดในปี 2012 | 0 - 255 |
last_b40 | แถบอินฟราเรดใกล้ของ Landsat 7 สร้างขึ้นจากพิกเซลที่ถูกต้องล่าสุด ในปี 2012 | 0 - 255 |
last_b50 | แถบอินฟราเรดคลื่นสั้นของ Landsat 7 แถบแรกสร้างขึ้นจากพิกเซลที่ถูกต้องล่าสุดในปี 2012 | 0 - 255 |
last_b70 | แถบอินฟราเรดคลื่นสั้นของ Landsat 7 ชุดที่ 2 สร้างขึ้นจากพิกเซลที่ถูกต้องล่าสุดในปี 2012 | 0 - 255 |
datamask | ไม่มีข้อมูล (0), พื้นผิวบกที่แมป (1) และแหล่งน้ำถาวร (2) | 0, 1, 2 |
หากต้องการแสดงพื้นที่ป่าปกคลุมในปี 2000 เป็นรูปภาพระดับสีเทา คุณสามารถใช้treecover2000
แถบที่ระบุในอาร์กิวเมนต์ที่ 2 ของ Map.addLayer()
ได้
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(gfc2014, {bands: ['treecover2000']}, 'treecover2000');
ซึ่งจะทำให้ได้รูปภาพที่มีลักษณะคล้ายกับรูปที่ 3

นี่คือรูปภาพที่ใช้แถบ 3 แถบ ได้แก่ แถบ 5, 4 และ 3 ของ Landsat สำหรับปี 2015 แถบนี้ แสดงพืชพรรณที่สมบูรณ์เป็นสีเขียวและดินเป็นสีม่วงอมชมพู::
โปรแกรมแก้ไขโค้ด (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');
ค่าแถบการสูญเสียและแถบการเพิ่มเป็นแบบไบนารี จึงแทบจะมองไม่เห็นในรูปภาพ ซึ่งควรมีลักษณะคล้ายกับรูปที่ 5

เราต้องการให้การสูญเสียป่าไม้แสดงเป็นสีแดงสด และการเพิ่มขึ้นของป่าไม้แสดงเป็นสีน้ำเงินสด
หากต้องการแก้ไขปัญหานี้ เราสามารถใช้พารามิเตอร์การแสดงภาพ max
เพื่อตั้งค่า
ช่วงที่จะขยายข้อมูลรูปภาพได้ โปรดทราบว่าพารามิเตอร์max
การแสดงภาพ
จะใช้รายการค่าที่สอดคล้องกับค่าสูงสุดของแต่ละแถบ
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(gfc2014, { bands: ['loss', 'treecover2000', 'gain'], max: [1, 255, 1] }, 'forest cover, loss, gain');
ผลลัพธ์ควรมีลักษณะคล้ายกับรูปที่ 6

ซึ่งจะทำให้ได้ภาพที่เป็นสีเขียวในบริเวณที่มีป่า สีแดงในบริเวณที่มีการสูญเสียป่า สีน้ำเงินในบริเวณที่มีการเพิ่มขึ้นของป่า และสีม่วงแดงในบริเวณที่มีทั้งการเพิ่มขึ้นและการสูญเสีย แต่เมื่อพิจารณาอย่างละเอียดแล้วจะพบว่าไม่ถูกต้อง แทนที่จะเป็น การสูญเสียที่ทำเครื่องหมายเป็นสีแดง แต่เป็นสีส้ม เนื่องจากพิกเซลสีแดงสว่างจะผสมกับ พิกเซลสีเขียวที่อยู่ด้านล่าง ทำให้เกิดพิกเซลสีส้ม ในทำนองเดียวกัน พิกเซลที่มี ป่าไม้ การสูญเสีย และการเพิ่มขึ้นจะเป็นสีชมพู ซึ่งเป็นการผสมผสานระหว่างสีเขียว สีแดงสด และสีน้ำเงินสด ดูภาพประกอบได้ที่รูปที่ 7

หากต้องการรับรูปภาพตามที่สัญญาไว้ตอนต้นของบทแนะนำ คุณสามารถสร้างรูปภาพแยกต่างหากสำหรับป่า การสูญเสีย การเพิ่มขึ้น และทั้งการสูญเสียและการเพิ่มขึ้น เพิ่มรูปภาพแต่ละรูปเหล่านี้ลงใน แผนที่ตามลำดับที่เหมาะกับการแสดงผลมากที่สุด
พาเล็ต
หากต้องการแสดงรูปภาพแต่ละรูปเป็นสีที่ต่างกัน คุณสามารถใช้พารามิเตอร์ palette
ของ Map.addLayer()
สำหรับรูปภาพแถบเดียว ชุดสีช่วยให้คุณตั้งค่า
รูปแบบสีที่จะใช้แสดงรูปภาพ
(ดูข้อมูลเพิ่มเติมเกี่ยวกับชุดสี) โปรดจำจาก
บทแนะนำเกี่ยวกับ Earth Engine API ว่าสี
ในจานสีจะขยายเชิงเส้นไปยัง min
และ max
เช่น หากต้องการใช้จานสีเขียวเพื่อแสดงภาพขอบเขตป่า คุณสามารถใช้คำสั่งต่อไปนี้
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(gfc2014, { bands: ['treecover2000'], palette: ['000000', '00FF00'] }, 'forest cover palette');
ผลลัพธ์ควรมีลักษณะคล้ายกับรูปที่ 8

การซูมเข้าจะช่วยให้เห็นความละเอียดของภาพได้ดียิ่งขึ้น รูปที่ 9 แสดงพื้นที่ รอบๆ มาริสคัล เอสตีกาบีอา ในปารากวัย

รูปภาพที่แสดงในรูปที่ 3 ค่อนข้างมืด ปัญหาคือtreecover2000
แถบมีประเภทข้อมูลไบต์ ([0, 255]) แต่ค่าจริงเป็นเปอร์เซ็นต์ ([0, 100]) หากต้องการเพิ่มความสว่างให้รูปภาพ คุณสามารถตั้งค่าพารามิเตอร์ min
และ/หรือ max
ตามนั้น จากนั้นจะขยายจานสีระหว่าง
ค่าสุดขั้วเหล่านั้น
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(gfc2014, { bands: ['treecover2000'], palette: ['000000', '00FF00'], max: 100 }, 'forest cover percent');
ผลลัพธ์ควรมีลักษณะคล้ายกับรูปที่ 9 โปรดทราบว่าในตัวอย่างนี้ มีการตั้งค่าเฉพาะ
max
โดยค่าเริ่มต้น min
จะเป็น 0

การมาสก์
รูปภาพทั้งหมดที่แสดงจนถึงตอนนี้มีพื้นที่สีดำขนาดใหญ่ซึ่งเป็นบริเวณที่ข้อมูลเป็น 0 เช่น ในมหาสมุทรไม่มีต้นไม้ คุณสามารถมาสก์ค่าของพื้นที่เหล่านี้เพื่อให้มีความโปร่งใสได้ ทุกพิกเซลใน Earth Engine มีทั้งค่าและมาสก์ รูปภาพจะ แสดงผลโดยมีความโปร่งใสที่มาสก์กำหนด โดยค่า 0 คือโปร่งใสทั้งหมด และ ค่า 1 คือทึบแสงทั้งหมด
คุณมาสก์รูปภาพด้วยตัวรูปภาพเองได้ ตัวอย่างเช่น หากมาสก์แบนด์ treecover2000
ด้วยตัวมันเอง พื้นที่ทั้งหมดที่มีการปกคลุมของป่าเป็น 0 จะโปร่งใส
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(gfc2014.mask(gfc2014), { bands: ['treecover2000'], palette: ['000000', '00FF00'], max: 100 }, 'forest cover masked');
ผลลัพธ์ควรมีลักษณะคล้ายกับรูปที่ 10

ตัวอย่าง
คุณสามารถสร้างภาพข้อมูลของ Hansen ได้เกือบจะเหมือนกับภาพที่
ตอนต้นของบทแนะนำ ในตัวอย่างนี้ เราจะรวมทุกอย่างเข้าด้วยกันโดยมี
ความแตกต่างเพียงเล็กน้อย เราจะสร้างรูปภาพใหม่โดยใช้ select()
แทนการระบุพารามิเตอร์ bands
ในการเรียก Map.addLayer
โปรแกรมแก้ไขโค้ด (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()
3 ครั้ง แต่ละ
addLayer()
การเรียกจะเพิ่มเลเยอร์ลงในแผนที่ การวางเมาส์เหนือปุ่ม
เลเยอร์ที่ด้านขวาบนของแผนที่จะแสดงเลเยอร์
เหล่านี้ คุณสามารถปิดหรือเปิดเลเยอร์แต่ละรายการได้โดยใช้ช่องทําเครื่องหมายข้างเลเยอร์ และ
ความทึบของเลเยอร์จะได้รับผลกระทบจากแถบเลื่อนข้างชื่อเลเยอร์
เราเกือบจะสร้างรูปภาพที่แสดงที่จุดเริ่มต้นของบทแนะนำได้แล้ว อย่างไรก็ตาม เลเยอร์ที่แสดงพิกเซลที่มีทั้งการสูญเสียและการเพิ่มขาดหายไป ที่ไม่มีข้อมูลนี้เป็นเพราะ เราต้องทราบวิธีคำนวณแถบของรูปภาพก่อนจึงจะคำนวณได้ว่า พิกเซลใดแสดงทั้งการสูญเสียและกำไร นี่คือหัวข้อของส่วนถัดไป