分析单双步目标检测效果差异

简介: 分析单双步目标检测效果差异

前言


  对象检测任务是计算机视觉中极其重要的基础问题。对象检测是检测输入图像中是否存在给定类别的对象,如果是,则输出有关对象在图像中的位置的信息;当图像中存在目标的时候,则输出目标在图像中的位置信息坐标。(这个里面的位置坐标是指bounding box)


  物体检测模型大致可以分为one-stage)模型和two-stage模型两大类。本篇中分析和对比了这两类模型在架构、性能和效率上的差异,并给出了原理解释。



分析理解


单步检测:


  物体检测中的单步模型是指不独立和明确地提取候选区域的模型,并直接从输入图像中获取其中存在的对象的类别和位置信息。(例如:SSD\YOLO)。


双步检测:


  物体识别中的两步模型具有独立、明确的候选区域提取过程,即首先过滤掉输入图像上可能对象的一些候选区域,然后评估每个候选区域是否存在对象,如果存在,则提供对象的类别和位置校正信息。(例如:RCNN\FASTRCNN)



分析


  一般来说,单步模型在计算效率上有优势,两步模型在检测精度上有优 势。如下图所示。可以看到:当检测时间较短时,单步模型 SSD 能 取得更高的精度;而随着检测时间的增加,两步模型 Faster R-CNN 则 在精度上取得优势。对于单步模型与两步模型在速度和精度上的差异,一般认为有如下原因:

      image.png


比较


  1. 大多数单阶段模型使用预设的锚框来捕获可能存在于图像中不同位置的对象。在单步模型中,大量锚点框架根据它们是否包含对象以及对象所属的类别进行密集分类。由于图像中实际包含的对象数远小于锚帧数,因此训练此分类器时正样本和负样本的数量极不均匀,这可能导致分类器训练不佳。由于它包含两步模型中候选区域的独立提取步骤,因此第一步可以过滤掉大多数不包含任何要检测的对象的区域,如果移动第二步来分类和校正候选框的位置和大小,则正负样本的比例相对平衡,并且没有类似的问题。


  2. 两步模型在提取候选区域期间校正候选框的位置和大小,以便在进入第二步之前对齐候选区域的特征,这有助于为第二步的分类提供更高质量的特征。将两阶段模型在第二步的候选箱中再次进行校正,这里共对候选箱进行两次校正,从而带来更高的定位精度,但它也增加了模型的复杂性。单步模型对候选区域没有提取过程,当然也没有特征对齐步骤,每个锚点场的预测都是基于层上每个特征点的接收场,其输入特征不对齐,质量差,因此定位和分类精度容易受到损害。


  3. 以 Faster R-CNN 为代表的两步模型在第二步对候选区域进行分类 和位置回归时,是针对每个候选区域独立进行的,因此该部分的算法复 杂度线性正比于预设的候选区域数目,这往往十分巨大,导致两步模型 的头重脚轻(heavy head)问题。



结束


  以上的分析是分析单双步目标检测效果差异,希望可以帮助大家在项目中对该操作的理解或在面试过程中回答面试官的提问回答。



相关文章
|
存储 SQL NoSQL
MongoDB 6.0 新特性概览
正如发布MongoDB 5.0时承诺的更快发布频率,年度大版本MongoDB 6.0也于2022年正式跟广大数据库爱好者们见面了。目前阿里云MongoDB已经完成了对6.0版本的适配工作,大家可以直接在官网控制台进行购买和尝鲜体验!
MongoDB 6.0 新特性概览
|
存储 自然语言处理 数据处理
PaddleNLP--UIE--小样本快速提升性能(含doccona标注
需求跨领域跨任务:领域之间知识迁移难度高,如通用领域知识很难迁移到垂类领域,垂类领域之间的知识很难相互迁移;存在实体、关系、事件等不同的信息抽取任务需求。 - 定制化程度高:针对实体、关系、事件等不同的信息抽取任务,需要开发不同的模型,开发成本和机器资源消耗都很大。 - 训练数据无或很少:部分领域数据稀缺,难以获取,且领域专业性使得数据标注门槛高。
PaddleNLP--UIE--小样本快速提升性能(含doccona标注
|
人工智能 并行计算 监控
深入剖析 Qwen2.5 - 32B 模型在 VLLM 上的单机三卡部署与运行
本文深入探讨了Qwen2.5 - 32B模型在VLLM框架上的部署过程,从模型下载、启动命令、资源占用分析到GPU资源分配及CUDA图应用,详述了大模型运行的挑战与优化策略,强调了硬件资源规划与技术调优的重要性。
7159 2
|
SQL 负载均衡 网络协议
高性能数据访问中间件 OBProxy(四):一文讲透连接管理
引言上篇内容我讲到 OBProxy 的问题排查,将你在使用 OBProxy 时可能遇到的问题一一分析,并给出经过实践验证的解决方案。从本篇开始,我将介绍 OBProxy 在OceanBase分布式架构中的作用和原理,帮助你更透彻地了解OBProxy,实现“好用”和“用好”。同时,OBProxy 在上百家企业的持续运行,我积累了大量的工程实践经验,也将遇到的问题作为案例,伴随 OBProxy 的原理
768 103
高性能数据访问中间件 OBProxy(四):一文讲透连接管理
|
应用服务中间件 数据安全/隐私保护
Tomcat【部署 02】Web端403 Access Denied You are not authorized to view this page解决方法(Tomcat 10.2.12 版本)
Tomcat【部署 02】Web端403 Access Denied You are not authorized to view this page解决方法(Tomcat 10.2.12 版本)
1280 0
|
Android开发
Android Button 设置 android:background=“@drawable/xxx“ 无效
Android Button 设置 android:background=“@drawable/xxx“ 无效
358 0
|
消息中间件 人工智能 Cloud Native
2022云栖大会|技术人看过来!带你抢先“云游”D2馆开发者舞台!
最先进的前沿科技趋势就在2022云栖大会!锁定阿里云开发者社区打造的D2馆开发者舞台,行业大咖、阿里云技术专家、百万博主…与您共谈硬核技术热点,品味真实技术人生。11月3日至5日,云栖小镇,我们不见不散!
2486 4
|
存储 人工智能 编译器
最详细的【指针】详解---C语言从入门到精通
最详细的【指针】详解---C语言从入门到精通
1278 0
最详细的【指针】详解---C语言从入门到精通
|
算法 Java Linux
NDK 系列(5):JNI 从入门到实践,万字爆肝详解!(上)
NDK 系列(5):JNI 从入门到实践,万字爆肝详解!
783 0
NDK 系列(5):JNI 从入门到实践,万字爆肝详解!(上)