全套代码可至本人github下载地址

使用步骤:

下面是我自己写的测试代码,上面地址下载的也会包含

  # 输入:测试集标注文件夹和对应的预测文件夹,图片命名为 标注+x;predict+x# 输出:四个指标的平均值from eval_segm import *
import cv2 as cvdef threshold_demo(a):gray = cv.cvtColor(a, cv.COLOR_RGB2GRAY)  # 把输入图像灰度化# 直接阈值化是对输入的单通道矩阵逐像素进行阈值分割。ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY | cv.THRESH_TRIANGLE)print("threshold value %s"%ret)return binarybiaozhu_path = xxx
predict_path = xxxpa = []
mpa = []
miou = []
fwiou = []number_photo = 1
for i in range(number_photo):i = i+1a = cv.imread(biaozhu_path + 'biaozhu' + str(i) + '.png')b = cv.imread(predict_path + 'predict' + str(i) + '.png')'''cv.namedWindow("a", cv.WINDOW_NORMAL)cv.imshow("a", a)cv.waitKey()cv.namedWindow("b", cv.WINDOW_NORMAL)cv.imshow("b", b)cv.waitKey()'''binary=threshold_demo(a)binary1=threshold_demo(b)'''cv.namedWindow("binary", cv.WINDOW_NORMAL)cv.imshow("binary", binary)cv.waitKey()cv.namedWindow("binary1", cv.WINDOW_NORMAL)cv.imshow("binary1", binary1)cv.waitKey()'''# binary1=cv.resize(binary1,(224,224))print(binary.shape)print(binary1.shape)# 计算分割指标pa_temporary=pixel_accuracy(binary,binary1)mpa_temporary=mean_accuracy(binary,binary1)miou_temporary=mean_IU(binary,binary1)fwiou_temporary=frequency_weighted_IU(binary,binary1)pa.append(pa_temporary)mpa.append(mpa_temporary)miou.append(miou_temporary)fwiou.append(fwiou_temporary)print(sum(pa)/number_photo)
print(sum(mpa)/number_photo)
print(sum(miou)/number_photo)
print(sum(fwiou)/number_photo)

refer 1


关注思洞职研所公众号,全网内推方式,笔面试经验应有尽有,助你拿大厂offer!!!

语义分割常用指标详解(附代码)相关推荐

  1. sklearn评估指标Classification metrics常用指标详解及小坑

    sklearn评估指标Classification metrics常用指标详解及小坑 计算评估指标需要用到预测结果和真实标签,首先说一下获得预测结果的model.predict()和model.pre ...

  2. 【三维语义分割】PointNet详解(一)

    本节主要介绍PointNet语义分割,其中主干网络和代码环境等PointNet详细介绍请参考三维目标检测 - PointNet详解(一)_Coding的叶子的博客-CSDN博客,这里不再进行重复介绍. ...

  3. 语义分割的常用指标详解

    1 混淆矩阵 假设有6个类别,L为10个真实标签的取值,P为对应的预测的标签值,先计算对应的n(类别数,这里假设为6)xL+P: bin的值一定是分类数的平方.混淆矩阵先将真实标签和预测标签抻成一维向 ...

  4. 全卷积神经网路【U-net项目实战】语义分割之U-Net详解

    文章目录 1.简介 2.U-net典型应用 3. U-net详解 4.参考文献 1.简介 语义分割(Semantic Segmentation)是图像处理和机器视觉一个重要分支.与分类任务不同,语义分 ...

  5. 汇总 | 深度学习中图像语义分割基准数据集详解

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 汇总图像语义分割那些质量最好的数据集与常用benchmark数据集 ...

  6. 【机器学习】图像语义分割常用指标Dice系数 敏感性 特异性 IOU及python代码实现

    文章目录 知识铺垫 1. Dice系数和IOU 2.敏感性(=Recall).特异性和精确度(=precision=PPV) 2.1 敏感性(召回率)和特异性 2.2 敏感性和特异性之间的关系 2.3 ...

  7. 目标检测模型的评估指标mAP详解(附代码)

    https://zhuanlan.zhihu.com/p/37910324 对于使用机器学习解决的大多数常见问题,通常有多种可用的模型.每个模型都有自己的独特之处,并随因素变化而表现不同. 每个模型在 ...

  8. 动态规划---01背包问题--Dp(详解附代码)

    一.动态规划 代表一类问题(最优子结构或子问题最优性)的一般解法,是设计方法或者策略,不是具体算法 本质:递推,核心是找到状态转移的方式,写出dp方程. 解决问题:交叉,重叠子问题(最优子问题) 形式 ...

  9. 【排序】堆排序详解 附代码

    按照国际惯例,开篇前先简单介绍(吹一波)堆排序(Heapsort).Heapsort是一种优秀的排序算法(个人感觉基本排序算法中仅次于快速排序),时间复杂度为O(nlgn),同时,Heapsort具有 ...

最新文章

  1. itmz文件如何打开_如何使用proteus8打开低版本proteus7的仿真文件?
  2. 建立家用服务器|软件站|第三日
  3. 传统春节海报设计没有思路?
  4. JEE_Ajax技术
  5. easy datagrid 按钮控制
  6. asp.net mvc 压缩html代码,浅谈ASP.NET中MVC 4 的JS/CSS打包压缩功能
  7. linux 系统修复 启动盘,linux服务器系统盘坏且系统盘为软raid的修复方法
  8. 用js小类库获取浏览器的高度和宽度信息
  9. ML/DL-复习笔记【二】- L1正则化和L2正则化
  10. GOOGLE本地搜索
  11. Sakai 20.0 部署
  12. 计算机设备没有音频,电脑找不到音频设备是怎么回事_电脑没有音频设备怎么处理...
  13. activiti7的流程图、模板图及子流程图展示
  14. 只有1kb的清理软件_1kb病毒专杀工具下载
  15. Java复习攻略02
  16. 数据分析(7)路径挖掘分析法 行为序列分析法
  17. 2022年化工自动化控制仪表考试总结及化工自动化控制仪表模拟考试
  18. TCP是如何传输数据的?
  19. linux命令---cp 命令
  20. init函数及其使用(go语言基础语法)

热门文章

  1. 宋体能力从业的一些感悟
  2. springboot---yaml语法
  3. [1005]pika 线程不安全
  4. C++题解:CSP迎国庆热身公益赛T2——猜数游戏(70分)
  5. macOS在IDEA上集成PLANTUML Graphviz绘制UML图并导出SVG
  6. C语言利用图的邻接矩阵的存储方式实现拓扑排序
  7. 随机梯度下降法的数学基础
  8. 交换机console是干什么的
  9. PHPstudy的下载与安装。
  10. 2021最新Android开发者学习路线,已整理成文档