ps自己之前也不理解这个FROC是什么鬼,连mAP,AP也不太理解(还有APs,APm,APl,AP0.5等等)后来花了挺长时间的,今天又有人问我FORC是什么,这里我就稍微总结下:

1.Precision-Recall曲线,ROC曲线,AP,mAP可以参考我之前的博客转过的知乎上大神的评论,还没理解的可以看下。

2.APs,APm,APl,AP0.5等的是在基于coco数据时候定义出来评论检测模型的指标具体含义如下图:

  • 1)除非另有说明,否则AP和AR在多个交汇点(IoU)值上取平均值。具体来说,我们使用10个IoU阈值0.50:0.05:0.95。这是对传统的一个突破,其中AP是在一个单一的0.50的IoU上计算的(这对应于我们的度量APIoU=.50 )。超过均值的IoUs能让探测器更好定位。

  • 2)AP是所有类别的平均值。传统上,这被称为“平均准确度”(mAP,mean average precision)。我们没有区分AP和mAP(同样是AR和mAR),并假定从上下文中可以清楚地看出差异。

  • 3)AP(所有10个IoU阈值和所有80个类别的平均值)将决定赢家。在考虑COCO性能时,这应该被认为是最重要的一个指标。

  • 4)在COCO中,比大物体相比有更多的小物体。具体地说,大约41%的物体很小(面积<322),34%是中等(322 < area < 962)),24%大(area > 962)。测量的面积(area)是分割掩码(segmentation mask)中的像素数量。

  • 5)AR是在每个图像中检测到固定数量的最大召回(recall),在类别和IoU上平均。AR与提案评估(proposal evaluation)中使用的同名度量相关,但是按类别计算。

  • 6)所有度量标准允许每个图像(在所有类别中)最多100个最高得分检测进行计算。

  • 7)除了IoU计算(分别在框(box)或掩码(mask)上执行)之外,用边界框和分割掩码检测的评估度量在所有方面是相同的。

这是从这位大神的简书上参考的,COCO数据集说的很清楚:https://www.jianshu.com/p/d7a06a720a2b。

3.FROC曲线:FROC曲线与之前的ROC只是横坐标的不同。横坐标是误报率(测试中所有不是实际结节预测成结节的个数/测试CT个数),纵坐标是召回率(测试所有CT数据中实际是结节的检测出来个数/测试所有CT数据中实际是结节个数)。

具体举个简单的例子:我们的测试集就两个ct序列:

第一个其中真结节2个,检测出的结节自信度列表[0.99,0.8,0.7,0.5,0.4,...](已经从大到小排列过了),其中真结节是0.99和0.5对应的结节。

第二个其中真结节1个,检测出的结节自信度列表[0.9,0.8,0.7,0.6,0.5,...]其中真结节0.8对应的结节.

假设你把自信度阈值设置为0.90(这个值在计算时一般有一个等比列表),那么这时检测到了一个真结节,召回率是(1+0)/(2+1)=1/3,而误报率是(0+1)/(2)=1/2,(0+1)代表所有CT序列中误报结节数,(2)代表CT序列的个数。这可以画出FROC中的点(1/2,1/3)。

然后,你再把自信度阈值设置为0.80,那么这时检测到的还是二个真结节,召回率是(1+1)/(2+1)=2/3,而误报率是(1+1)/(2)=1,这可以画出FROC中的点(1,2/3)。

以此类推当你把自信度阈值设置为0.5时,那么这时检测到的就是三个真结节,召回率是3/3=1,而误报率是(6)/(2)=3,这可以画出FROC中的点(3,1)。

这样你就能画出一条FROC曲线来了。其实原理跟ROC曲线曲线一样的。这是我的理解如果有错误请指出。

关于肺结节检测相关的FROC曲线和目标检测中Precision-Recall曲线,ROC曲线,mAP,AP,APs,APm,APl,AP0.5等的理解。相关推荐

  1. PR(precision recall curve)曲线是什么?PR曲线如何绘制?为什么Precision和Recall是矛盾体、此消彼长?为什么提出F1指标?

    PR(precision recall curve)曲线是什么?PR曲线如何绘制?为什么PR是矛盾体.此消彼长?为什么提出F1指标? sklearn.metrics.precision_recall_ ...

  2. R语言使用pROC包绘制ROC曲线并使用smooth函数绘制平滑的ROC曲线(方法包括:binormal、density、fitdistr、logcondens、logcondens.smooth)

    R语言使用pROC包绘制ROC曲线并使用smooth函数绘制平滑的ROC曲线(方法包括:binormal.density.fitdistr.logcondens.logcondens.smooth) ...

  3. R语言使用pROC包在同一图中绘制两条ROC曲线并通过假设检验检验ROC曲线的AUC或者偏AUC的差异(输出p值)

    R语言使用pROC包在同一图中绘制两条ROC曲线并通过假设检验检验ROC曲线的AUC或者偏AUC的差异(输出p值) 目录

  4. r roc曲线 语言_R语言系列6:生存分析中多重时间依赖性ROC曲线绘制 timeROC

    上一篇文章,我们讲到R语言实现Cox回归生存预测模型构建,以及如何将Logistic回归中,多条ROC曲线绘制在一个图里 今天主要围绕生存分析中,预测模型验证部分,如何将多条time-depend e ...

  5. PASCAL VOC目标检测数据集格式转化为COCO目标检测数据集格式

    VOC2012目标检测数据集格式转化为COCO目标检测数据集格式 你只需要传入一个VOC数据集根路径可以直接运行,简直不要太方便好吧 需要材料: VOC2012原始数据集 一个pycharm项目文件夹 ...

  6. 睿智的目标检测21——如何调用摄像头进行目标检测

    睿智的目标检测21--如何调用摄像头进行目标检测 学习前言 使用到的库 实现思路 实现代码 2020/4/26更新:FPS计算 FPS记录的原理 FPS实现代码 学习前言 好多人都想了解一下如何对摄像 ...

  7. 目标检测新方式 | class-agnostic检测器用于目标检测(附论文下载链接)

    计算机视觉研究院专栏 作者:Edison_G 目标检测模型在定位和分类训练期间显示目标时表现良好,然而,由于创建和注释检测数据集的难度和成本,训练过的模型检测到数量有限的目标类型,未知目标被视为背景内 ...

  8. Sklearn机器学习——ROC曲线、ROC曲线的绘制和AUC面积、运用ROC曲线找到最佳阈值

    目录 1 ROC曲线 2 ROC曲线的绘制 2.1 Sklearn中的ROC曲线和AUC面积 2.2 利用ROC曲线找到最佳阈值 1 ROC曲线 上篇博客介绍了ROC曲线的概率和阈值还有SVM实现概率 ...

  9. CVPR21最佳检测:不再是方方正正的目标检测输出(附源码)

    计算机视觉研究院专栏 作者:Edison_G 有些目标往往具有任意方向的分布.因此,检测器需要更多的参数来编码方向信息,这往往是高度冗余和低效的... 公众号ID|ComputerVisionGzq ...

最新文章

  1. [JMX一步步来] 1、JMX的Hello World
  2. 人工不智能,AI产品经理要帮助用户认清这一现实
  3. [保护模式]PAE模式
  4. 【Python基础】Python安装第三方库太慢?配置好这个速度飞起
  5. 如何让快递更快?菜鸟自研定时任务调度引擎首次公开
  6. c语言宏高级用法,C语言宏高级用法 [总结]
  7. 对SqlServer2008中的日志进行截断的方法
  8. mysql数据库重做日志文件_mysql数据库重做日志
  9. python软件名字_python怎么获得文件夹名字
  10. java的for循环取出数据只是拿到最后一个_从MySQL中导数据到HBase
  11. amazon linux ami root 密码,Ubuntu Server的Amazon AMI映像的默认用户名是什么?
  12. 关于钩子(Hook)的使用
  13. over oracle 不足补零,oracle的rank,over partition涵数使用
  14. 老板最讨厌的10种烂个性
  15. 2.5A双路电机驱动模块 正反转 PWM调速 双H桥 步进电机 超L298N
  16. 南大lamda实验室失败面经分享
  17. html 一键复制 ios,h5实现一键复制到粘贴板 兼容ios
  18. arp-scan使用
  19. html5页面弹窗,H5页面怎么设置弹窗
  20. springboot的log4j2日志不打印,且控制台不输出!!!

热门文章

  1. H3C vrrp *** ipsec 基本配置
  2. 灾难,让我们靠的更近!
  3. 关于C#中timer类
  4. 快捷关闭win8中的应用页面---解决方法
  5. [转载]:C#两种不同的存储过程调用方法
  6. oracle 触发器写法|oracle trigger 语法
  7. JMETER 为什么需要分布式
  8. 03-22 H5 性能分析
  9. 计算机行业更看重学历还是更看重技术?
  10. 你应该需要知道的前端小技巧