首页 > 其他分享 >利用envi计算二分类(多分类)精度评价指标及混淆矩阵计算

利用envi计算二分类(多分类)精度评价指标及混淆矩阵计算

时间:2023-04-11 16:46:00浏览次数:32  
标签:分类 ---- envi 计算 图像 tif 精度

前言

  导师需要我将预测的几个结果单独计算出每一张图的精度评价,包含以下指标:iou,recall,F1。

  因为他说我利用代码批量计算的结果有误。

  如果是这样的话可就坏了,希望我的结果没有出太多错误,不然已经做过计算的某些内容又需要全部重新计算了。

利用envi计算精度指标

使用tif格式影像

  师姐说使用tif格式的图像来计算。我的深度学习模型训练用图和预测出图都是png格式的,我直接将png格式的图像的后缀改成tif格式即可。

  两张图片一张是label标签,一张是预测出图的结果。

prediction


envi classic打开图像

  在envi中打开两张图像。file-open image file

初步处理

  envi不能理解传入的图像中的值是什么意思,需手动标注。在memory上右键编辑。


----↓----

选中ENVI Classification


----↓----

有几种类别就输入几(背景也算1类)。比如建筑物变化检测,最后会是2类:其1是背景,其2是识别的变化区域。

系统会根据设定的类别自动生成几个选项,自行设定名字。我因为是二类(tif图上的值为0和1,0是背景,1是变化区域),所以默认第一个是背景,第二个表示变化区域。先命名,因为命名结束后,颜色会发生变化(Unclassified对应的区域默认是黑色,Calss #1对应的区域默认是红色)。

检查:原本是背景的区域确实仍然是黑色,原本是变化区域的部分确实变成了红色。

  (击ok应用即可,应用完毕之后,图片的标识会发生变化。此时在load band加载图像进行查看)

  我相信如果是多种类别,仍然可以通过颜色来查看是否命名正确。

计算混淆矩阵

  点击选项后,在弹出的窗口中,先选择预测prediction图像【前文中提到的memory6】,再选label标签图像【前文中提到的memory5】。

  在弹出的窗口中,查看两张tif图中的类别连接是否正确。

  如果正确则在弹出的窗口中,点选“Memory”选项(只是得到一下结果,之后截图保存结果或者记录一下即可。)

  如果想要保存结果的话,可以在弹出的结果窗口上,File->save text to ascii将结果保存为.txt文件(.txt需要自己手动输入)。

指标解释

  • 生产者精度

地面真实类中,某类像元被正确分类为该类的概率,利用混淆矩阵的列来计算。

  • 用户精度

影像类中,某类像元被正确分类为该类的概率,利用混淆矩阵的行来计算。

  • 总体精度

正确分类像元数除以图像像元总数

标签:分类,----,envi,计算,图像,tif,精度
From: https://www.cnblogs.com/xiaoaozi/p/17305677.html

相关文章

  • 数据挖掘中聚类和分类有什么区别
         分类(classification)是这样的过程:它找出描述并区分数据类或概念的模型(或函数),以便能够使用模型预测类标记未知的对象类。分类分析在数据挖掘中是一项比较重要的任务,目前在商业上应用最多。分类的目的是学会一个分类函数或分类模型(也常常称作分类器),该模型能把......
  • 聚类与分类区别2
       在分类中,对于目标数据库中存在哪些类是知道的,要做的就是将每一条记录分别属于哪一类标记出来。聚类需要解决的问题是将已给定的若干无标记的模式聚集起来使之成为有意义的聚类,聚类是在预先不知道目标数据库到底有多少类的情况下,希望将所有的记录组成不同的类或者说聚类,并且......
  • C# Timer定时器分类
    关于C#中timer类 在C#里关于定时器类就有4个   1、System.Windows.Forms:【基于UI】System.Windows.Forms命名空间下的Timer控件,它直接继承自Componet。Timer控件只有绑定了Tick事件和设置Enabled=True后才会自动计时,停止计时可以用Stop()方法控制,通过Stop()停止之后,如......
  • 分布式计算技术(下):Impala、Apache Flink、星环Slipstream
    实时计算的发展历史只有十几年,它与基于数据库的计算模型有本质区别,实时计算是固定的计算任务加上流动的数据,而数据库大多是固定的数据和流动的计算任务,因此实时计算平台对数据抽象、延时性、容错性、数据语义等的要求与数据库明显不同,面向实时计算的数据架构也就发展起来。本篇我......
  • 基于深度学习网络的5G通信链路信道估计算法matlab仿真
    1.算法描述        深度学习(英语:deeplearning),是一个多层神经网络是一种机器学习方法。在深度学习出现之前,由于诸如局部最优解和梯度消失之类的技术问题,没有对具有四层或更多层的深度神经网络进行充分的训练,并且其性能也不佳。但是,近年来,Hinton等人通过研究多层神经网络,......
  • 大数据经典论文解读 - 流式计算 - MillWhell - Dataflow
    Storm的不足Storm利用异或操作实现了消息至少处理一次;kafka中利用存储在ZooKeeper的offset使得消息队列重放更加容易。Kafka和Storm组合实现了AtLeastOnce消息处理机制。但只有实现“正好一次”(ExactlyOnce)才能得到正确的结果,为此“容错能力”很重要。实践中使用Storm有......
  • 3500/15 127610-01 对于高性能市场中的云计算
    3500/15127610-01对于高性能市场中的云计算对于高性能市场中的云计算,产品设计将基于性能。在PC系统架构方面,PCIe4.016G和即将推出的PCIe5.032G有一些主要的技术改进。CXL基于PCIe4.0,以增强该结构中的高速组件。面向云计算的网络切片、网络功能虚拟化(NFV)和面向5G边缘服务......
  • 【STL1】容器分类及测试
    //ConsoleApplication2.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。//#pragmawarning(disable:4996)#include<array>#include<ctime>#include<cstdlib>#include<iostream>#defineASIZE100000usingstd::cout;usingstd::cin;us......
  • 分布式计算技术(上):经典计算框架MapReduce、Spark 解析
    当一个计算任务过于复杂不能被一台服务器独立完成的时候,我们就需要分布式计算。分布式计算技术将一个大型任务切分为多个更小的任务,用多台计算机通过网络组装起来后,将每个小任务交给一些服务器来独立完成,最终完成这个复杂的计算任务。本篇我们介绍两个经典的计算框架MapReduce和Sp......
  • 【计算机网络-传输层】TCP 协议
    目录1传输层概述1.1传输层的功能1.2端口号2TCP报文段2.1TCP报文段首部格式2.2TCP数据传送的过程3TCP连接管理3.1TCP连接的建立——三次握手3.1.1客户机向服务器发送TCP连接请求报文段3.1.2服务器向客户机发送TCP连接请求确认报文段3.1.3客户机向服务器发送TC......