พฤติกรรมของ getThumbURL
บน Google Earth Engine ฉันกำลังพยายามดาวน์โหลดรูปภาพที่แสดงโดยใช้วิธีimage.getThumbURLนี้ ภาพแสดงให้เห็นได้ดีMap.addLayerแต่เมื่อฉันผ่านไปgetThumbURLฉันจะได้เพียงภาพเปล่า นี่คือตัวอย่างของพฤติกรรมนี้:
var point = ee.Geometry.Point([11.300422012780208, 44.50570009326473])
var pngArea =
ee.Geometry.Polygon(
[[[10.966712295983333, 44.65340259358304],
[10.966712295983333, 44.24754759759594],
[11.738501846764583, 44.24754759759594],
[11.738501846764583, 44.65340259358304]]], null, false)
var s2coll = ee.ImageCollection("COPERNICUS/S2")
s2coll = s2coll.filterBounds(point)
.filterDate('2018-07-15', '2018-07-30')
print(s2coll)
var img = s2coll.mosaic()
print(img)
var visualization = {
min: 0.0,
max: 2000,
bands: ['B4', 'B3', 'B2'],
}
var outImg = img.visualize(visualization)
Map.addLayer(outImg)
print(outImg.getThumbURL({region: pngArea, format: 'png'}))
https://code.earthengine.google.com/89afe6e672f63d2245ef438288f78f55
ผมทำอะไรผิดหรือเปล่า?
คำตอบ
คุณไม่ได้ระบุมาตราส่วนและระบุภูมิภาคที่มีระบบพิกัดเป็นองศา ดังนั้นคุณจึงได้ภาพที่มีขนาดเล็กมาก (2 × 1 พิกเซล)
หากคุณระบุมาตราส่วนคุณจะได้ภาพ:
print(outImg.getThumbURL({region: pngArea, scale: 200, format: 'png'}));
คุณยังสามารถระบุขนาดที่ชัดเจนได้ แต่อาจทำให้คุณได้ภาพที่บิดเบี้ยวหากขนาดไม่ตรงกับอัตราส่วนภาพของภูมิภาค:
print(outImg.getThumbURL({
region: pngArea,
dimensions: '150x150',
format: 'png',
}))
อีกทางเลือกหนึ่งที่คุณอาจสนใจคือcrsการใช้การฉายภาพ (หรือการฉายภาพใด ๆ ) แทนการฉายภาพของภูมิภาค:
print(outImg.getThumbURL({
region: pngArea,
crs: s2coll.first().select('B4').projection(),
scale: 200,
format: 'png',
}))
เวอร์ชันนี้ไม่มีขอบด้านขวาที่เอียงเนื่องจากรูปสี่เหลี่ยมผืนผ้าที่ส่งออกใช้ระบบพิกัดเดียวกันกับรูปภาพต้นฉบับ (อย่างน้อยหนึ่งภาพ)
โดยทั่วไปแล้วเป็นความคิดที่ดีที่จะใช้การฉายภาพที่มีไว้สำหรับการทำแผนที่ (ไม่ว่าจะเป็นการฉายภาพหรือการฉายภาพอื่น) แทนที่จะใช้ลองจิจูดและละติจูดขององศาที่คุณใช้สำหรับภูมิภาคของคุณ (ซึ่งเป็นสิ่งที่ Earth Engine ผิดนัดโดยไม่มี ความคิดที่ดีกว่า) ซึ่งจะมีพิกเซลบิดเบี้ยวเมื่อคุณเข้าใกล้เสามากขึ้น โปรดสังเกตว่ารูปภาพนี้มีความใกล้เคียงกับอัตราส่วนกว้างยาวของสี่เหลี่ยมผืนผ้าดั้งเดิมของคุณบนแผนที่ในขณะที่ภาพแรกที่ระบุเฉพาะมาตราส่วนจะยืดออกไปกว้างกว่าที่ควร