#冲刺创作新星#PIE-Engine水稻面积提取精度评定5 原创

此星光明
发布于 2022-9-25 17:33
浏览
0收藏

我们首先加载我们之前所分类后的结果,然后利用一个函数进行设添加属性,将type的分类分成1,2,3,然后将三者结合在一起,
sampleRegions(collection,properties,scale,projection,tileScale,geometries)
从Image中随机采样,返回结果是一个FeatureCollection,FeatureCollection下的每一个Feature中存储采样点的相应波段的信息
方法参数:

  • image(Image)
    Image实例。
  • collection(FeatureCollection)
    样本点,需要包括分类字段
  • properties(List)
    采样保留字段集合
  • scale(Float)
    图像采样比例尺
  • projection(String)
    未启用
  • tileScale(Float)
    未启用
  • geometries(Boolean)
    未启用
    返回值:Image
    errorMatrix(actual,predicted,order)
    通过比较FeatureCollection的两列(一列包含实际值,另一列包含预测值),计算FeatureCollection的二维错误矩阵,其中数值从0开始。矩阵的轴0(行)对应于实际值,轴1(列)对应于预测值。
    方法参数:
  • featureCollection(FeatureCollection)
    FeatureCollection实例
  • actual(String)
    包含实际值的属性的名称。
  • predicted(String)
    包含预测值的属性的名称。
  • order(List)
    未启用
    返回值:ConfusionMatrix
    acc()
    混合矩阵的精确度计算结果
    方法参数:
  • ConfusionMatrix(Object)
    混合矩阵对象
    返回值:Number
    kappa()
    返回混合矩阵的kappa系数
    方法参数:
  • ConfusionMatrix(Object)
    混合矩阵对象
    返回值:Number
    代码:
 * @Name    :   基于 PIE Engine Studio 的水稻自动提取
 * @Author  :   武汉大学VHR队
 * @Desc    :   淮安市水稻提取 - 精度评价
 * @Source  :   航天宏图第四届 “航天宏图杯”PIE软件二次开发大赛云开发组三等奖获奖作品
 */

//5.精度评价
//导入验证样本
var isa = pie.FeatureCollection('user/pieadmin/saas/06/ivali_sa');
var forest = pie.FeatureCollection('user/pieadmin/saas/06/vali_forest');
var water = pie.FeatureCollection('user/pieadmin/saas/06/vali_water');
var rice = pie.FeatureCollection('user/pieadmin/saas/06/vali_rice');
//给验证样本添加属性type,1为水稻,2为其他地物
var rice = rice.map(function(feature) { return feature.set("type", "1") })
var forest = forest.map(function(feature) { return feature.set("type", "2") })
var isa = isa.map(function(feature) { return feature.set("type", "2") })
var water = water.map(function(feature) { return feature.set("type", "2") })
var norice = water.merge(forest).merge(isa);
var sample = rice.merge(norice);
//选择用于淮安市精度评价的图像
var image = pie.Image('user/pieadmin/saas/06/result_0724_acc').select('B1').rename('predict');
//支持向量机结果的路径:'user/pieadmin/saas/06/svmrice_acc'
//随机森林结果的路径:'user/pieadmin/saas/06/rfrice_acc'
//阈值筛选后最终结果路径:'user/pieadmin/saas/06/result_0724_acc'   

//获得验证样本
var validation = image.sampleRegions(sample, ["type"], 30);
//混淆矩阵计算
var class_11 = validation.filter(pie.Filter.eq('type', 1)).filter(pie.Filter.eq('predict', 1)).size();
var class_12 = validation.filter(pie.Filter.eq('type', 1)).filter(pie.Filter.eq('predict', 2)).size();
var class_21 = validation.filter(pie.Filter.eq('type', 2)).filter(pie.Filter.eq('predict', 1)).size();
var class_22 = validation.filter(pie.Filter.eq('type', 2)).filter(pie.Filter.eq('predict', 2)).size();
var sum = validation.filter(pie.Filter.eq('type', 2).and(pie.Filter.eq('predict', 2))).size()
//print(sum)
print(class_11);
print(class_21);
print(class_12);
print(sum);
//精度评价,输出OA,KAPPA
var errorM = validation.errorMatrix("type", "predict");
print(errorM);
print(errorM.acc());
print(errorM.kappa());

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2022-10-27 15:56:38修改
收藏
回复
举报
回复
    相关推荐