Model
# 简介
遥感计算服务产品(PIE-Engine Stuido)整合了智能解译服务产品(PIE-Engine AI)的相关功能,基于遥感计算服务产品能够调用AI中已经发布的应用在线动态的进行相关信息的提取,并实时展示提取成果。该功能就是借助Model模块实现的,Model模块能够实现AI应用的加载、语义分割类地物识别、目标检测类地物提取和变化检测类地物标识。
# fromAiPlatformPredictor
从AI平台加载预测应用,如果是自己发布的模型就不需要输入用户名和授权码别名等相关信息,调用其他人发布的模型,必须需要提供调用模型的名称、用户名和授权码别名。
函数 | 返回值 |
---|---|
pie.Model.fromAiPlatformPredictor(appname,username,tokenname) | Model |
参数 | 类型 | 说明 |
---|---|---|
appname | String | AI发布应用的名称。 |
username | String | AI发布应用的用户的名称 |
tokenname | String | AI发布应用的授权码别名 |
// 加载原始数据
var image = pie.Image("user/hjuopo/GF2/GF2_PMS1_E113.7_N23.1_20190311_L1A0003877356-MSS1.tif").select(["B1", "B2", "B3","B4"]);
Map.setCenter(113.702, 23.156,15);
// 加载深度学习模型,其中发布的模型具备时效性,超过设置的时间则失效,无法得到结果,需要重新发布模型后再进行调用。
var model = pie.Model.fromAiPlatformPredictor("GF2水域信息提取","chengwei","chengwei/GF2水体提取Model");
// 预测结果并加载显示
var result = model.predictImage(image);
Map.addLayer(result,{uniqueValue:'1',palette: '0000FF',type:1},"WaterImg");
Map.addLayer(image, {min: 0, max: 500,bands:["B4","B3","B2"]}, "SrcImg");
# predictChange
进行影像的变化检测,需要传入两个时期的影像来完成变化的检测。
函数 | 返回值 |
---|---|
predictChange(input1,input2) | Image |
参数 | 类型 | 说明 |
---|---|---|
Input1 | Image | 第一个时期的影像。 |
Input2 | Image | 第二个时期的影像。 |
tokenname | String | AI发布应用的授权码别名 |
// 加载两期分析数据
var imageA = pie.Image("user/LongAiHong1314/PersonalGDB/0_10_A").select(["B1","B2","B3"]);
var imageB = pie.Image("user/LongAiHong1314/PersonalGDB/0_10_B").select(["B1","B2","B3"]);
Map.setCenter(172.534, -43.538,18);
// 加载深度学习模型,其中发布的模型具备时效性,超过设置的时间则失效,无法得到结果,需要重新发布模型后再进行调用。
var model = pie.Model.fromAiPlatformPredictor("LJL建筑变化检测应用","17090142114","17090142114/LJL建筑变化检测应用");
// 进行变化检测
var result = model.predictChange(imageA,imageB);
// 加载到地图显示
Map.addLayer(result,{uniqueValue:'0',palette: '0000FF'},"Changed");
Map.addLayer(imageA,{},"Image1");
Map.addLayer(imageB,{},"Image2");
# predictImage
进行影像信息的预测,预测的结果需要区分目标识别和语义分割,生成的结果在加载到地图的时候,需要在图层样式中注明是语义分割的结果(用1表示)还是目标识别的结果(用2表示)。
函数 | 返回值 |
---|---|
predictImage(input) | Image |
参数 | 类型 | 说明 |
---|---|---|
input | ImageString | 传入的影像。 |
# 示例1–语义分割类
// 加载原始数据
var image = pie.Image("user/hjuopo/GF2/GF2_PMS1_E113.7_N23.1_20190311_L1A0003877356-MSS1.tif").select(["B1", "B2", "B3","B4"]);
Map.setCenter(113.702, 23.156,15);
// 加载深度学习模型,其中发布的模型具备时效性,超过设置的时间则失效,无法得到结果,需要重新发布模型后再进行调用。
var model = pie.Model.fromAiPlatformPredictor("GF2水域信息提取","chengwei","chengwei/GF2水体提取Model");
// 预测结果并加载显示
var result = model.predictImage(image);
Map.addLayer(result,{uniqueValue:'1',palette: '0000FF',type:1},"WaterImg");
Map.addLayer(image, {min: 0, max: 500,bands:["B4","B3","B2"]}, "SrcImg");
# 示例2-目标识别类
// 加载原始数据
var image = pie.Image("user/17090142114/TianJinGangYouGuan01").select(["B1","B2","B3"]);
Map.centerObject(image,15);
// 加载深度学习模型,其中发布的模型具备时效性,超过设置的时间则失效,无法得到结果,需要重新发布模型后再进行调用。
var model = pie.Model.fromAiPlatformPredictor( "Google储油罐目标检测","chengwei","chengwei/Google储油罐识别Model");
// 预测结果并加载显示
var result = model.predictImage(image);
var visParams = {
type:pie.CONSTANT.VECTOR,
filter:[[">","score",0.3]],
label:{
textField:["get","score"],
textColor:"#ff0000",
textSize:12
},
fillColor:"00000000",
width:2
};
Map.addLayer(result,visParams,"ResultLayer");
Map.addLayer(image,{},"image");
有问题,我来改改 (opens new window)
上次更新: 2022/05/25, 03:27:07