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}

 

相关文章
|
3天前
|
机器学习/深度学习 数据采集 人工智能
文档智能 & RAG 让AI大模型更懂业务 —— 阿里云LLM知识库解决方案评测
随着数字化转型的深入,企业对文档管理和知识提取的需求日益增长。阿里云推出的文档智能 & RAG(Retrieval-Augmented Generation)解决方案,通过高效的内容清洗、向量化处理、精准的问答召回和灵活的Prompt设计,帮助企业构建强大的LLM知识库,显著提升企业级文档管理的效率和准确性。
|
5天前
|
数据采集 人工智能 算法
AI 大模型助力客户对话分析评测
【10月更文挑战第22天】《AI大模型助力客户对话分析》解决方案清晰地概述了从客户对话数据中提取洞察的流程,包括数据收集、预处理、模型训练、意图识别、质量评估和决策支持等环节。然而,方案在具体实施方法、模型选择、性能评估和业务决策转化等方面描述较为简略,缺乏详细的操作步骤和工具推荐。此外,示例代码较为简略,部署过程中存在多渠道数据整合、模型训练参数设置等困惑。建议增加具体实施步骤、示例代码和注释,并加强与客户的沟通和反馈机制,以提高方案的可操作性和实际应用能力。
|
13天前
|
人工智能 小程序 搜索推荐
成功案例分享|使用AI运动识别插件+微搭,快速搭建AI美体运动小程序
今天给大家分享一个最近使用我们的“AI运动识别小程序插件”+“微搭”搭建小程序的经典案例。
成功案例分享|使用AI运动识别插件+微搭,快速搭建AI美体运动小程序
|
3天前
|
存储 人工智能 Serverless
AI大模型助力客户对话分析评测文章
在数字化时代,企业面临客户对话数据处理的挑战。阿里云推出的AI大模型助力客户对话分析方案,通过整合多种云服务,实现对话数据的自动化分析,提升服务质量和客户体验。本文将详细介绍该方案的优势与实际应用效果。
|
4天前
|
人工智能 Serverless
参与评测「AI 大模型助力客户对话分析」
本文介绍了作者参与《AI大模型助力客户对话分析》项目的实践与感受,通过阿里云提供的解决方案,从架构设计到具体实施,最终成功部署了AI质检应用,感受到了AI技术的魅力和便捷性。项目分为四步执行,虽然过程中遇到了一些小挑战,但总体上顺利完成了部署,实现了对话记录的质检与分析,有助于提高企业客户的服务效率。
|
4天前
|
人工智能 弹性计算 运维
触手可及:阿里云函数计算助力AI大模型的评测
阿里云推出的面向AI服务器的功能计算(Functional Computing, FC),专为AI应用提供弹性计算资源。该服务支持无服务器部署、自动资源管理和多语言支持,极大简化了AI应用的开发和维护。本文全面评测了FC for AI Server的功能特性、使用体验和成本效益,展示了其在高效部署、成本控制和安全性方面的优势,并通过具体应用案例和改进建议,展望了其未来发展方向。
37 4
|
3天前
|
人工智能 弹性计算 运维
《触手可及,函数计算玩转 AI 大模型》解决方案深度评测
本次评测全面评估了《触手可及,函数计算玩转 AI 大模型》解决方案,涵盖实践原理理解、文档清晰度、部署体验、优势展现及生产环境适用性。方案通过函数计算实现AI大模型的高效部署,但模型加载、性能指标和示例代码等方面需进一步细化。文档需增加步骤细化、FAQ、性能指标和示例代码,以提升用户体验。部署体验方面,建议明确依赖库、权限配置和配置文件模板。优势展现方面,建议增加性能对比、案例研究和成本分析。此外,为满足实际生产需求,建议增强高可用性、监控与日志、安全性和扩展性。
14 2
|
3天前
|
人工智能 数据挖掘 API
评测报告:AI大模型助力客户对话分析
《AI大模型助力客户对话分析》解决方案详细介绍了如何利用AI大模型进行语音识别、情感分析和关键词提取,帮助企业提升服务质量。方案内容清晰,但部分技术细节和环境配置说明有待完善。示例代码基本可用,但在特定配置和行业术语方面需进一步优化。总体而言,该方案在实际业务场景中表现出色,但仍需改进以提升用户体验。
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
AI 大模型助力客户对话分析评测
《AI大模型助力客户对话分析》解决方案通过先进的AI技术实现高效客服对话分析。方案详细阐述了利用自然语言处理和机器学习技术解析客户对话的方法,并提供了具体实施步骤。然而,在技术细节、案例研究和定制化指导方面仍有改进空间,建议增强技术文档、增加案例研究并提供更多的定制化支持。
14 1
|
4天前
|
人工智能 弹性计算 自然语言处理
《触手可及,函数计算玩转 AI 大模型》解决方案体验与部署评测
在AI技术快速发展的背景下,大模型正推动各行业的智能化转型。企业为抓住机遇,纷纷寻求部署AI大模型以满足特定业务需求。阿里云函数计算凭借按量付费、卓越弹性和快速交付等优势,为企业提供了高效、安全的AI大模型部署方案。本文将详细介绍阿里云函数计算的技术解决方案及其在文生文、图像生成和语音生成等领域的应用实例,展示其在降低成本、提高效率和增强灵活性方面的显著优势。