前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【GEE】分块处理以降低内存压力

【GEE】分块处理以降低内存压力

作者头像
Twcat_tree
发布2024-04-25 14:48:32
560
发布2024-04-25 14:48:32
举报
文章被收录于专栏:二猫の家二猫の家
  1. 代码链接

https://code.earthengine.google.com/6f3876f55be5280369750c9e38c8ffce?noload=true

  1. 函数介绍

2.1 vecSplitByRowCol(table.geometry(), Row, Col)函数

在这里插入图片描述
在这里插入图片描述

2.2 getSmallVec(featureCollection, i, table.geometry())函数

在这里插入图片描述
在这里插入图片描述

3. 完整代码

代码语言:javascript
复制
Map.centerObject(table, 5);

// 记录程序开始时间
var startTime = new Date();
print('程序开始时间', startTime);

var eevp = require('users/949384116/lib:Tools/VectorProcessor')

var featureCollection = eevp.vecSplitByRowCol(table.union().geometry(), 5, 5)
    .filterBounds(table.geometry())
    .toList(100)

featureCollection.size().evaluate(function (nSize) {
    // print('Feature Collection Size: ', nSize)
    for (var i = 0; i < nSize; i++) {
        var smallVec = eevp.getSmallVec(featureCollection, i, table.geometry());
        Map.addLayer(smallVec, {}, 'Vec ' + i);

        // 这里可以使用分块后的矢量数据去处理自定义代码

    }
});

// 记录结束时间
var endTime = new Date();
print('程序结束时间', endTime);

// 计算执行时间(以毫秒为单位)
var executionTimeMS = endTime - startTime;
var executionTimeStringMS = executionTimeMS.toString() + ' 毫秒';
print('程序执行时间: ' + executionTimeStringMS);
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com