GEE、PIE和AI Earth平台进行案例评测:NDVI计算,结果差异蛮大

简介: GEE、PIE和AI Earth平台进行案例评测:NDVI计算,结果差异蛮大

本文主要是通过对比GEE、PIE和AI Earth平台,主要是计算不同平台,同一个NDVI的均值计算,我们已测试结果如何。

1. PIE-engine

PIE获取北京市获取某一个区域的区域的NDVI平均值,但是结果却显示没有,只能通过加载图层点击图层上的点获取某一个点的NDVI值,而且这里用到区域统计使用的函数仅有min,max,sum计算,而使用mean计算,就没有结果。当我尝试使用以上三个可以计算的reducer的时候结果会呈现下面的结果:

代码链接:

遥感计算云服务

函数:

reduceRegion(reducer,geometry,scale)

对特定区域的所有像素进行统计,返回结果为一个JSON对象;目前可完成最大、最小和求和统计计算。

方法参数:

- image(Image)

Image实例。

- reducer(Reducer)

统计类型,包括最大值、最小值和求和。

- geometry(Geometry)

统计区域范围。默认是影像第一个波段的范围。

- scale(Number)

统计采样比例。

返回值:Dictionary

PIE代码:

//加载北京市边界
var roi = pie.FeatureCollection("NGCC/CHINA_PROVINCE_BOUNDARY")
    .filter(pie.Filter.eq("name", "北京市"))
    .first()
    .geometry();
Map.centerObject(roi, 6);
Map.addLayer(roi, { color: "ff0000", fillColor: "00000000", width: 3 }, "北京市");
 
 
//按区域、时间筛选影像
var imgCol = pie.ImageCollection("LC08/01/T1")
    .filterBounds(roi)
    .filterDate("2019-8-01", "2019-8-30");
print("imgCol", imgCol);
Map.addLayer(imgCol.select(["B2", "B3", "B4"]).mosaic().clip(roi), { min: 0, max: 2500, bands: ["B4", "B3", "B2"] }, "imgCol", false);
 
//获取影像数量
var count = imgCol.size();
print(count);
 function imgCalculate (image1) {
     var ndvi1=image1.normalizedDifference(["B5","B4"]);
     return image1.addBands(ndvi1).rename("NDVI")
 }
var redc = imgCol.map(imgCalculate).mosaic().clip(roi)
print("redc",redc)
var jisuan = redc.select("NDVI").reduceRegion(pie.Reducer.mean(),geometry0,300)
print("jisuan",jisuan)

 

 

2.GEE

代码:

//这里ROI是我自己的矢量,这里就不共享了,大家可以换其它地方测试
/*color:#5f9ea0*/
var geometry0 = ee.Geometry.Polygon([
    [
        [
            117.1224239290218,
            40.20026024458343
        ],
        [
            117.2502681492852,
            40.20026024458343
        ],
        [
            117.2502681492852,
            40.13354201708273
        ],
        [
            117.1224239290218,
            40.13354201708273
        ],
        [
            117.1224239290218,
            40.20026024458343
        ]
    ]
], null);
 function imgCalculate (image1) {
     var ndvi1=image1.normalizedDifference(["B5","B4"]);
     return image1.addBands(ndvi1).rename("NDVI");
 }
 
 
function ndv_LANDSAT_8(image) {
              var ndvi = image.normalizedDifference(['B5', 'B4']);
  return image.addBands(ndvi.rename('NDVI'));
}
 
var  imgCol = ee.ImageCollection("LANDSAT/LC08/C01/T1_SR").filterBounds(roi)
    .filterDate("2019-8-01", "2019-8-30").map(ndv_LANDSAT_8);
print("imgCol", imgCol);
Map.addLayer(imgCol.select(["B2", "B3", "B4"]).mosaic().clip(roi), { min: 0, max: 2500, bands: ["B4", "B3", "B2"] }, "imgCol", false);
 
//获取影像数量
var count = imgCol.size();
print(count);
var redc = imgCol.mosaic().clip(roi)
print("redc",redc)
var jisuan = redc.select("NDVI").reduceRegion(ee.Reducer.mean(),geometry0,300)
print("jisuan",jisuan)

pie 中在NDVI计算的函数中出现了问题,两者的函数构造是不同的,如果直接用PIE中的function代码直接放入GEE中是无法运行的,主要问题如下面所示和代码区别:

 

//PIE——NDVI函数
function imgCalculate (image1) {
     var ndvi1=image1.normalizedDifference(["B5","B4"]);
     return image1.addBands(ndvi1).rename("NDVI");
 }
 
  
//GEE——NDVI函数
function ndv_LANDSAT_8(image) {
              var ndvi = image.normalizedDifference(['B5', 'B4']);
  return image.addBands(ndvi.rename('NDVI'));
}

 

Image (Error)

ImageCollection.mosaic: Error in map(ID=LC08_122032_20190826): Image.rename: The number of names (1) must match the number of bands (13).

最终更改后的结果:

 

3.AI Earth

在AI Earth中并没有Landsat 8 C01数据集,所以这里只能使用Landsat 8 C02数据集.

同样我们使用GEE也重新计算了:

 

 

import aie
aie.Authenticate()
aie.Initialize()
region = aie.Geometry.Polygon([
    [
        [
            117.1224239290218,
            40.20026024458343
        ],
        [
            117.2502681492852,
            40.20026024458343
        ],
        [
            117.2502681492852,
            40.13354201708273
        ],
        [
            117.1224239290218,
            40.13354201708273
        ],
        [
            117.1224239290218,
            40.20026024458343
        ]
    ]]
)
# 归一化植被指数
def getNDVI(image):
    ndvi = image.normalizedDifference(['SR_B5', 'SR_B4']).rename(['NDVI'])
    return ndvi
# 指定需要检索的区域
feature_collection = aie.FeatureCollection('China_Province') \
                        .filter(aie.Filter.eq('province', '北京市'))
geometry = feature_collection.geometry()
#print("feature_collection",feature_collection.getInfo())
dataset = aie.ImageCollection('LANDSAT_LC08_C02_T1_L2') \
             .filterBounds(geometry) \
             .filterDate('2019-08-01', '2019-08-31')\
             .map(getNDVI).mosaic().clip(region)
print("dataset",dataset.getInfo())
result =  dataset.select("NDVI").reduceRegion(aie.Reducer.mean(), region, 30)
print(result)
print(result.getInfo())

结果:

{'NDVI_mean': 0.0190175001}

 

相关文章
|
8月前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI
3901 166
|
8月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
7882 109
|
8月前
|
人工智能 供应链 搜索推荐
拔俗AI 智能就业咨询服务平台:求职者的导航,企业的招聘滤网
AI智能就业平台破解求职招聘困局:精准匹配求职者、企业与高校,打破信息壁垒。简历诊断、岗位推荐、技能提升一站式服务,让就业更高效。
392 0
|
8月前
|
人工智能 搜索推荐 大数据
拔俗AI一体化数字销售服务平台:让企业销售更智能、更高效
AI一体化数字销售服务平台融合AI与大数据,集成客户管理、智能推荐、自动化跟进等功能,实现销售全流程智能化。打破传统模式困局,提升转化率与效率,助力企业降本增效,抢占数字化转型先机。(238字)
415 0
|
8月前
|
存储 人工智能 搜索推荐
拔俗AI大模型教学平台:开启智能教育新时代
在AI与教育深度融合背景下,本文基于阿里云技术构建大模型教学平台,破解个性化不足、反馈滞后等难题。通过“大模型+知识图谱+场景应用”三层架构,实现智能答疑、精准学情分析与个性化学习路径推荐,助力教学质量与效率双提升,推动教育智能化升级。
976 0
|
8月前
|
传感器 人工智能 监控
拔俗多模态跨尺度大数据AI分析平台:让复杂数据“开口说话”的智能引擎
在数字化时代,多模态跨尺度大数据AI分析平台应运而生,打破数据孤岛,融合图像、文本、视频等多源信息,贯通微观与宏观尺度,实现智能诊断、预测与决策,广泛应用于医疗、制造、金融等领域,推动AI从“看懂”到“会思考”的跃迁。
646 0
|
8月前
|
人工智能 运维 NoSQL
拔俗AI大模型知识管理平台:让技术团队的“隐性知识”不再沉睡
技术团队常困于知识“存得住却用不好”。AI大模型知识管理平台如同为团队知识装上“智能大脑”,打通文档、代码、日志等碎片信息,实现智能检索、自动归集、动态更新与安全共享。它让新人快速上手、老手高效排障,把散落的经验变成可复用的智慧。知识不再沉睡,经验永不流失。
249 0
|
8月前
|
消息中间件 人工智能 安全
云原生进化论:加速构建 AI 应用
本文将和大家分享过去一年在支持企业构建 AI 应用过程的一些实践和思考。
2038 74
|
9月前
|
人工智能 安全 中间件
阿里云 AI 中间件重磅发布,打通 AI 应用落地“最后一公里”
9 月 26 日,2025 云栖大会 AI 中间件:AI 时代的中间件技术演进与创新实践论坛上,阿里云智能集团资深技术专家林清山发表主题演讲《未来已来:下一代 AI 中间件重磅发布,解锁 AI 应用架构新范式》,重磅发布阿里云 AI 中间件,提供面向分布式多 Agent 架构的基座,包括:AgentScope-Java(兼容 Spring AI Alibaba 生态),AI MQ(基于Apache RocketMQ 的 AI 能力升级),AI 网关 Higress,AI 注册与配置中心 Nacos,以及覆盖模型与算力的 AI 可观测体系。
1617 85
|
8月前
|
人工智能 运维 Kubernetes
Serverless 应用引擎 SAE:为传统应用托底,为 AI 创新加速
在容器技术持续演进与 AI 全面爆发的当下,企业既要稳健托管传统业务,又要高效落地 AI 创新,如何在复杂的基础设施与频繁的版本变化中保持敏捷、稳定与低成本,成了所有技术团队的共同挑战。阿里云 Serverless 应用引擎(SAE)正是为应对这一时代挑战而生的破局者,SAE 以“免运维、强稳定、极致降本”为核心,通过一站式的应用级托管能力,同时支撑传统应用与 AI 应用,让企业把更多精力投入到业务创新。
805 30