如何在地球引擎中保存卫星图像?

Posted

技术标签:

【中文标题】如何在地球引擎中保存卫星图像?【英文标题】:How save a sattelite image in earth engine? 【发布时间】:2018-07-01 08:31:00 【问题描述】:

我正在搜索如何将图像从地球引擎导出到驱动器。 但我希望我的形象是卫星形象。 我该怎么做 ?可能吗? 提前谢谢你。

我已经阅读了地球引擎的文档。我找到了这个程序:

var landsat = ee.Image('LANDSAT/LC08/C01/T1_TOA/LC08_123032_20140515') .select(['B4', 'B3', 'B2']);

 // Create a geometry representing an export region. 
var geometry = ee.Geometry.Rectangle([116.2621, 39.9, 116.3849, 40.0]);

 // Export the image, specifying scale and region.
 Export.image.toDrive( image: landsat, description: 'test', scale: 30, region: geometry, format:"png" );

但它给了我一个损坏的文件

【问题讨论】:

从这里开始:developers.google.com/earth-engine/getstarted 请遵循 *** 上的问题指南!您要导出哪个图像?只是 Earth Engine 中数百万张卫星图像中的任何一张? 【参考方案1】:

我发现您提供的代码唯一有问题的是format 不是您可以传递给Export.image.toDrive() 函数的参数之一。

当我删除您的代码中的 format: "png" 部分时,我在我的 Google 云端硬盘中得到了一个名为 test.tif 的文件,这是我所期望的。在 Google Earth Engine javascript 编辑器中,可以导出图像的唯一格式是 geotiff (.tif) 文件。

var landsat = ee.Image('LANDSAT/LC08/C01/T1_TOA/LC08_123032_20140515').select(['B4', 'B3', 'B2']);

// Create a geometry representing an export region. 
var geometry = ee.Geometry.Rectangle([116.2621, 39.9, 116.3849, 40.0]);

// Export the image, specifying scale and region. 

Export.image.toDrive( image: landsat, description: 'test', scale: 30, region: geometry);

这是link to that script。

请记住,您从此代码中获得的 3 波段图像在某些应用程序中可能无法很好地呈现,即使所有数据仍然存在。看起来文件已损坏,但代码确实生成了可用的 geotiff 文件。

为了说明这一点,当我在 Mac 上的 Preview 中打开文件时,它看起来像这样:

但如果我在 QGIS 中打开它,它看起来像这样:

【讨论】:

如果打算将其保存为 png 怎么办,有可能吗?怎么样?【参考方案2】:

除了mikoontz 的回答之外,您不能只使用普通图像查看器查看 GeoTIFF 图像,而是尝试使用任何 GeoTIFF 图像查看软件。

观众名单:https://www.gislounge.com/free-gis-data-viewers/

注意:他们中的大多数不仅仅是查看器,他们能够做的不仅仅是查看 GeoTIFF 图像。

【讨论】:

以上是关于如何在地球引擎中保存卫星图像?的主要内容,如果未能解决你的问题,请参考以下文章

关于卫星运动轨道

如何在 Global Mapper中打开谷歌卫星地图

遥感如何穿透云雨雾和黑夜,从太空看破地球?

如何在 Global Mapper中打开谷歌卫星地图

人造卫星为什么会绕着地球转而不是停在太空中或者越飞越远.掉进地球的卫星为什么烧不完.

cesium 卫星扫过哪里显示地球上的图片一部分