利用混淆矩阵及Kappa系数评价土地利用分类精度


一、准备工作

  • 土地利用类型参考栅格和预测栅格(.tif)
    需要保证两者的投影坐标系和像元大小一致
    在这里插入图片描述

  • 用户精度(user accuracy),生产者精度(producer accuracy)、总精度(overall accuracy)的计算原理
    在这里插入图片描述

  • kappa系数计算
    可以参考这一篇Kappa系数。则对于上文中的例子来说,有
    在这里插入图片描述

  • 软件需要用到Arcmap和Excel

二、处理步骤

2.1 Arcmap:栅格转点+多值提取到点

栅格转点

将参考栅格(.tif)转为点要素(.shp)
在这里插入图片描述
在这里插入图片描述

多值提取至点

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

2.2 Excel:计算混淆矩阵

在这里插入图片描述
创建数据透视表
在这里插入图片描述
设置数据透视表字段列表,列标签为参考栅格对应的列,行标签为预测栅格对应的列,数值选择"FID"和“POINTID”均可,但需要右键将值字段设置中的值汇总方式更改为计数
在这里插入图片描述
在这里插入图片描述
遇到这种预测栅格的可选值(1、3、4、5)小于参考栅格的情况,需要手动补全缺失分类项
在这里插入图片描述
利用Excel中的函数功能来计算混淆矩阵,可以得到下表
在这里插入图片描述


三、Excel计算模板下载地址

下载地址(密码6uip)
在这里插入图片描述

### 如何在 ArcGIS 中执行精度计算 #### 使用混淆矩阵评估分类精度 为了验证地理信息系统中的土地覆盖或其他类型分类图层准确性,通常会采用混淆矩阵(也称为误差矩阵)。通过比较分类后的图像与参考数据集之间的差异来进行。这涉及到创建测试点或面要素来代表地面实况,并将其属性链接到对应的分类结果上。 ```python import arcpy from sklearn.metrics import confusion_matrix, accuracy_score # 设置工作空间环境 arcpy.env.workspace = "D:/St_Johns/data.mdb/neighborhoods" # 工作区设置[^4] # 加载分类影像和参考矢量数据 classified_raster = r"D:\path\to\ ClassifiedImage.tif" reference_vector = r"D:\path\to\ReferenceData.shp" # 将矢量转为栅格以便对比 output_cell_size = 30 temp_reference_raster = "in_memory/referenceRaster" arcpy.conversion.PolygonToRaster(reference_vector, value_field="CLASS", out_rasterdataset=temp_reference_raster, cell_assignment="CELL_CENTER", priority_field="NONE", cellsize=output_cell_size) # 提取两个栅格中相同位置处的像元值并转换成列表形式 sample_points = "in_memory/samplePoints" arcpy.sa.ExtractValuesToTable(classified_raster, temp_reference_raster, sample_points) # 准备用于计算的数据结构 class_values = [] ref_values = [] with arcpy.da.SearchCursor(sample_points, ["RASTERVALU", "GRID_CODE"]) as cursor: for row in cursor: class_values.append(row[0]) ref_values.append(row[1]) # 计算混淆矩阵以及总体准确率 cm = confusion_matrix(ref_values, class_values) oa = accuracy_score(ref_values, class_values) print(f'Confusion Matrix:\n{cm}') print('Overall Accuracy:', oa) ``` 此脚本展示了如何利用 `arcpy` 库读入分类好的遥感影像和参照标准(通常是实地调查获取),并通过构建混淆矩阵的方式得出整体精确度指标。注意这里还引入了 scikit-learn 的库辅助完成部分统计任务;而在实际项目里可能还需要进一步细化分析比如 Kappa系数等其他评价参数。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Salierib

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值