目标:

在MAP中显示单景影像的拍摄时间以及云量覆盖大小。

GEE实现代码:

Map.setCenter(113.07676218077592, 34.04984227876722, 6)
//选泽河南省一个点为地图显示中心
var bounds = Map.getBounds(true)
var scale = Map.getScale()
var images = ee.ImageCollection('LANDSAT/LC8_L1T_TOA')
.select([5,4,2])
.filterBounds(bounds)
.filterDate('2016-09-01', '2016-09-5')
var text = require('users/gena/packages:text')
// 呈现带注释的图像
function annotate(images) {

return images.map(function(i) {
var geom = i.select(0).geometry()
var center = ee.List(geom.centroid().coordinates())


// 在图像周围添加边缘
var edge = ee.Image(0).toByte().paint(geom, 1, 2)
edge = edge.mask(edge)
.visualize({palette:['cccc00'], opacity: 0.9})


// 定义文本属性
var props = { textColor: '000000', outlineColor: 'ffffff', outlineWidth: 2.5, outlineOpacity: 0.6}

// 绘制拍摄时间及云量
var pos = translate(center, 0.7, -0.4)
var s = ee.String(i.get('DATE_ACQUIRED'))
var textDate = text.draw(s, pos, scale, props)

pos = translate(center, 0.7, -0.1)
s = ee.String(i.get('SCENE_CENTER_TIME')).slice(0, 5)
var textTime = text.draw(s, pos, scale, props)


pos = translate(center, -0.1, 0.3)
s = ee.String(i.get('CLOUD_COVER')).slice(0, 5)
props.textColor = '0000aa'
var textCloud = text.draw(s, pos, scale, props)

return ee.ImageCollection([edge, textDate, textTime, textCloud]).mosaic() // merge results
})
}


// 转换dx, dy点的坐标
function translate(pt, dx, dy) {
var x1 = ee.Number(pt.get(0)).subtract(dx)
var y1 = ee.Number(pt.get(1)).subtract(dy)

return ee.Geometry.Point(ee.List([x1, y1]))
}
//在地图上显示
Map.addLayer(images, {}, '图像')
Map.addLayer(annotate(images), {}, '文本')

结果展示:

Google Earth Engine(GEE)显示单景影像的拍摄时间及云量_计算机视觉

可以在地图上看到,在2016年9月1日至9月5日,以中心点拍摄的单景影像的准确时间和云量,如上图所示

其他显示结果如下:

Google Earth Engine(GEE)显示单景影像的拍摄时间及云量_typescript_02

Google Earth Engine(GEE)显示单景影像的拍摄时间及云量_hive_03

Google Earth Engine(GEE)显示单景影像的拍摄时间及云量_google_04

声明:仅供学习使用!

GEE demo:

https://code.earthengine.google.com/425f4d7cbc1e8098fac538f4774c899c

## ****更多内容请关注微信公众号“生态遥感监测笔记”**