语义分割评价指标mIOU的计算

2023-10-27

语义分割评价指标mIOU的计算

## 注意事项

这是针对重构了的语义分割网络,而不是之前的那个,所以不要询问原来的网络计算miou要怎么做,因为整个文件构架差距过大,建议使用新构架。

学习前言

算一下语义分割的miou,做好生态链。
在这里插入图片描述

什么是mIOU

Mean Intersection over Union(MIoU,均交并比):其是语义分割的标准度量。

在了解mIOU之前,首先先了解一下IOU是什么,IOU的英文全称为Intersection over Union,中文简称为交并比,也就是交和并的比值。

在语义分割的问题中,单类的交并比就是该类的真实标签和预测值的交和并的比值。示意图如下:
在这里插入图片描述
在图中,A为真实标签,占据了图像的一定区域;B为预测结果,占据了图像的一定区域。中间的TP部分就是真实标签和预测值的交,图像整个有颜色的部分就是真实标签和预测值的并

而mIOU就是该数据集中的每一个类的交并比的平均。

计算公式如下:i表示真实值,j表示预测值 ,pij表示将i预测为j。
在这里插入图片描述

mIOU的计算

1、计算混淆矩阵
混淆矩阵听起来很牛逼,其实实际上的实现非常简单。
假设我们现在有一百个样本,分别属于1、2、3、4类,每个类都有二十五个样本。

我们利用网络去进行分类,此时我们可以通过一个矩阵去表现出最终的预测效果,就是混淆矩阵
在这里插入图片描述
每一行之和是该类的真实样本数量,每一列之和是预测为该类的样本数量。
我们来看第一行,第一行意味着,有20个实际为类1的样本被分为类1,有2个实际为类1的样本被分为类2,有1个实际为类1的样本被分为类3,有1个实际为类1的样本被分为类4。

2、计算IOU:

混淆矩阵的对角线上的值是该类的交。
混淆矩阵的每一行再加上每一列,最后减去对角线上的值就是该类的并。

比如对于类1而言,一行一列是True Positive也就是,一行二列、三列、四列都是False Negative,二行一列、三行一列、四行一列都是False Positive。
按照IOU的示意图与公式,可以算出来
在这里插入图片描述
计算代码如下:

# 设标签宽W,长H
def fast_hist(a, b, n):
    # a是转化成一维数组的标签,形状(H×W,);b是转化成一维数组的标签,形状(H×W,)
    k = (a >= 0) & (a < n)
    # np.bincount计算了从0到n**2-1这n**2个数中每个数出现的次数,返回值形状(n, n)
    # 返回中,写对角线上的为分类正确的像素点
    return np.bincount(n * a[k].astype(int) + b[k], minlength=n ** 2).reshape(n, n)  

def per_class_iu(hist):
    # 矩阵的对角线上的值组成的一维数组/矩阵的所有元素之和,返回值形状(n,)
    return np.diag(hist) / (hist.sum(1) + hist.sum(0) - np.diag(hist))  

3、计算mIOU:
mIOU就是每一个类的IOU的平均,所以只需要对每一个类都按照第二步的公式计算IOU,再求平均获得mIOU就行了。

np.mean(per_class_iu(hist)

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

语义分割评价指标mIOU的计算 的相关文章

  • 滚动条 ScrollView与Listview 嵌套 无滚动条实现滚动

    问题 ListView有时只显示一个半Item 当ListView的高度设定一定的值时 ListView同样地会显示对应的高度的Item 计算出这个ListView的总高度 再将它设置到ListView中 那么之前的滚动 高度问题就会解决
  • html最新布局书籍,HTML布局

    浏览器是怎么布局HTML的元素的 浏览器获取HTML文档后 先安置块级元素 从HTML的第一个块级元素开始 从上到下的的顺序显示所有的块级元素 一个块级元素 换行 再一个块级元素 这就是flow 块级元素内的内联元素一个挨一个的排列 一行排

随机推荐

  • instant-ngp获取视频或者图像相机位置信息colamp2nerf.py生成ransforms.json

    遇到的问题 在centos安装colamp需要装很多依赖 并且需要手动编译 在unbntu上安装colamp ffmpeg很方便 但是运行colamp2nerf py会报错ERROR failed to create sparse mode
  • uniapp如何引入官方的css样式库

    uniapp引入css样式 图标库 动画库 uniapp如何引入官方的css样式库 1 项目目录新建一个common的文件夹 common一般存放的是项目引入的一个css和js样式库 2 将样式库的css或者js复制到common文件夹 3
  • Three.js创建文字初体验

    效果 首先引入必要组件 import build three js import libs js controls OrbitControls js import FontLoader from libs jsm loaders FontL
  • 蓝桥杯基础练习所有VIP习题解析代码

    阶乘计算 资源限制 时间限制 1 0s 内存限制 512 0MB 问题描述 输入一个正整数n 输出n 的值 其中n 123 n 算法描述 n 可能很大 而计算机能表示的整数范围有限 需要使用高精度计算的方法 使用一个数组A来表示一个大整数a
  • Mysql 乱码问题--如何查看和修改Mysql 的字符集

    MySQL会出现中文乱码的原因不外乎下列几点 1 server本身设定问题 例如还停留在latin1 2 table的语系设定问题 包含character与collation 3 客户端程式 例如php 的连线语系设定问题 强烈建议使用ut
  • Linux下安装openldap

    Linux下安装openldap 1 安装Berkeley DB 4 7 25 伯克利大学嵌入式数据库方案 openldap用它作为存储方案 root instance 0pk09gjj ldap wget http download or
  • DAC芯片CBM128S085

    一 硬件介绍 1 1 芯片内部框架图 1 2 CBM12S085引脚定义 引脚介绍 DAC SYNC 电平触发控制输入 低电平有效 SCLK 时钟输入 DAC DIN 串行数据输入 VOUTA H则是对应的8个电压模拟输出通道 二 软件实现
  • 找出数组中每个数的右边第一个比它大的数

    vector
  • 人工智能 猴子摘香蕉问题

    1 定义描述环境状态的谓词 AT x w x在w处 个体域 x monkey w a b c box HOLD x t x手中拿着t 个体域 t box banana EMPTY x x手中是空的 ON t y t在y处 个体域 y b c
  • 三角形

    1 2 3 4 5 6
  • function 与 => 的区别

    function 与 的区别主要是他们的作用域的不同 在JS中 箭头函数并不是简单的function 匿名函数的简写语法糖 实际上 箭头函数和匿名函数有个明显的区别 gt 箭头函数内部的this是词法作用域 在编写函数时就已经确定了 fun
  • CentOS8.4安装Redis6.2.6

    一 下载 官网 Redis 我们下载 Stable 稳定版 cd mydata wget https download redis io releases redis 6 2 6 tar gz 二 安装redis6 2 6 1 安装到 us
  • python编一函数s(x) 求级数和_Python 编程基础之高阶函数篇(一)

    高阶函数 能接受函数作为参数的函数 如 f abs def add x y f return f x f y 如果我们用 add 5 9 f 来调用该高阶函数 则返回结果为 14 abs是Python提供的求绝对值的函数 Python中的m
  • Django实现音乐网站 ⒅

    使用Python Django框架做一个音乐网站 本篇主要为歌单列表 歌单详情及推荐页 歌单内容改动 目录 歌单列表 设置路由 视图处理 模板渲染 歌单 单曲列表 设置路由 视图处理 模板渲染 推荐页 歌单列表 模板渲染修改 总结 歌单列表
  • C语言字节数

    bool 1字节 char 1字节 short 2字节 string 4字节 int 4字节 指针4字节 float 4字节 double 8字节 long 4或8字节 long long 8字节 long double 12字节 空类1字
  • ArcFace loss与其他改进loss对比

    ArcFace loss与其他改进loss对比 sphereFace A softmax cos ma 角度距离 cosFace AM softmax cosa m 余弦距离 ArcFace Arc softmax cos a m 角度距离
  • ICCV, ECCV, CVPR,IEEE的关系

    计算机视觉领域世界三大顶级会议分别为CVPR ICCV和ECCV CVPR CVPR 英文全称IEEE Conference on Computer Vision and Pattern Recognition 中文全称是国际计算机视觉与模
  • FeignClient中name和url属性的作用

    定义 feign是声明式的web service客户端 它让微服务之间的调用变得更简单了 类似controller调用service Spring Cloud集成了Ribbon和Eureka 可在使用Feign时提供负载均衡的http客户端
  • node-ffi ffi.Library往电脑窗口的任意光标处输入内容(user32.dll)window电脑

    node ffi ffi Library往电脑窗口的任意光标处输入内容 user32 dll window电脑 类似键盘输入法的效果 前提 遇到问题 解决问题了 补充安装库遇到的问题 类似键盘输入法的效果 我node项目和electron项
  • 语义分割评价指标mIOU的计算

    语义分割评价指标mIOU的计算 注意事项 这是针对重构了的语义分割网络 而不是之前的那个 所以不要询问原来的网络计算miou要怎么做 因为整个文件构架差距过大 建议使用新构架 学习前言 算一下语义分割的miou 做好生态链 什么是mIOU