RetinaNet,SSD,YOLOv3,Faster R-CNN等都是Anchor-based的检测器,即需要预定义的Anchor boxes来进行训练。FCOS是一种Anchor-free和Proposal-free的检测器,即不需要预定义Anchor boxes来进行训练,从而节省了对计算资源的占用。

根据我的理解,FCOS和Faster R-CNN的区别主要表现在:

(1) Faster R-CNN是每个点提出N个Proposal,N一般等于9(预设了3种长宽比例,3种尺寸因此是9个Proposal),每一个Proposal的类别如何确定呢?就需要计算Proposal和GT Box的IOU了,IOU达到一定的程度,Proposal就算是这个GT Box的类,要求这个Proposal回归到这个GT Box;而FCOS每个点只提出一个Proposal,这个Proposal的类别如何确定?就是这个点在哪一个GT Box里面,它提出的Proposal就属于哪一个GT Box的类,当然也要求这个Proposal回归到这个GT Box。但是感觉Faster R-CNN的分类更好训练一些,毕竟Proposal和GT Box有比较大的IOU,FCOS靠近GT Box中心的点的类还比较好训练,距离中心比较远的点估计不好训练吧。

(2) FCOS多出来一个Center-ness:

这是因为距离目标中心越远的位置预测出的Proposal质量越低,所以FCOS增加了一个分支预测Center-ness,越靠近GT Box的中心,这个Center-ness的值就越接近1。

预测的时候结合对应的分类分数以及Center-ness的值来对Proposal进行排序,从而抑制了距离目标中心越远的位置预测出的Proposal,这种方法是很巧妙的,值得借鉴。

FCOS及其和Faster R-CNN的区别的更多相关文章

  1. 转载:python文件打开方式详解——a、a+、r+、w+区别

    第一步 排除文件打开方式错误: r只读,r+读写,不创建      ###f.readline()是读取第一行,f.readlines()是读取全部并返回一个列表 w新建只写,w+新建读写,会将文件内 ...

  2. python文件打开方式详解——a、a+、r+、w+区别

    出处: http://blog.csdn.net/ztf312/ 第一步 排除文件打开方式错误: r只读,r+读写,不创建 w新建只写,w+新建读写,二者都会将文件内容清零 (以w方式打开,不能读出. ...

  3. 转:\r,\n,\r\n的区别

    回车.换行的区别   他们间的区别其实是个回车换行的问题 先来段历史 回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别. 符号        ASCII码 ...

  4. 【转】python文件打开方式详解——a、a+、r+、w+区别

    原文地址:http://blog.csdn.net/ztf312/article/details/47259805 第一步 排除文件打开方式错误: r只读,r+读写,不创建 w新建只写,w+新建读写, ...

  5. python 基础-文件读写'r' 和 'rb'区别

    原文链接: python基础-文件读写'r' 和 'rb'区别 一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r ...

  6. \r,\n,\r\n的区别

    http://www.studyofnet.com/news/285.html \n是换行,英文是New line,表示使光标到行首\r是回车,英文是Carriage return,表示使光标下移一格 ...

  7. 关于/r与/n 以及 /r/n 的区别总结

    应该说还是区别的,\r就是回到行首,\n就是到下一行的,但是一般我们输出程序时,看不到明显的差别的 '\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格.通常用的Enter是两个加起来 ...

  8. [转]关于/r与/n 以及 /r/n 的区别总结

    应该说还是区别的,\r就是回到行首,\n就是到下一行的,但是一般我们输出程序时,看不到明显的差别的 '\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格.通常用的Enter是两个加起来 ...

  9. (转)java中/r与/n还有/r/n的区别

    场景:在学习spring实战,以及工作中进行写文件时候,经常遇到java中的换行问题,发现有的书上的介绍和实际使用并不一致.现在才算是搞清楚! 通过文本对比,断言应该返回正确的结果!但是事与愿违,最终 ...

随机推荐

  1. 实例透彻分析CMS垃圾收集器执行过程

    CMS收集器收集步骤: 在上一次[https://www.cnblogs.com/webor2006/p/11055468.html]中已经对CMS的垃圾收集器有了一定的理论上的了解,其中提到了CMS ...

  2. Jmeter怎么搭建环境

    1.JDK检查与安装 cmd输入命令:java -version   -- 检查主机是否安装了JDK JDK下载官网:https://www.oracle.com/technetwork/java/j ...

  3. 使用CMD命令部署.NetCore程序到IIS

    dotnet restore cd src\XXXXX md publish dotnet publish -o publish cd publish set siteFilePath=%cd% se ...

  4. [PHP] 阿里云 Composer 全量镜像

    阿里云 Composer 全量镜像 镜像地址:https://mirrors.aliyun.com/composer/

  5. NOIP 2011 提高组初赛错题简析

    Preface 好久没做初赛题了,据说今年的审核会更加严苛,作为一名去年未PY时只有\(92\)分的蒟蒻,我今年看来是\(90\)分都莫得了 然而今年也没怎么看重初赛,结果现在才来做,翻车到了\(84 ...

  6. FileSystemResource 和 ClassPathResource 有何区别

    在FileSystemResource 中需要给出spring-config.xml文件在你项目中的相对路径或者绝对路径.在ClassPathResource中spring会在ClassPath中自动 ...

  7. Anaconda入门教程【快速掌握】

    Anaconda 使用指南 概述 很多学习python的初学者甚至学了有一段时间的人接触到anaconda或者其他虚拟环境工具时觉得无从下手, 其主要原因就是不明白这些工具究竟有什么用, 是用来做什么 ...

  8. 五、Spring之自动装配

    Spring之自动装配 ​ Spring利用依赖注入(DI),完成对IOC容器中各个组件依赖关系的赋值. [1]@Autowired @Autowired 注解,它可以对类成员变量.方法及构造函数进行 ...

  9. 手风琴效果 animate

    animate的手风琴效果 <style type="text/css"> * { margin: 0; padding: 0; } ul{ list-style: n ...

  10. SpringBoot 整合RabbitMQ错误记录

    1. 控制台报错:Exception in thread "main" java.io.IOException…… Caused by: com.rabbitmq.client.S ...