NMS与Soft-NMS

news/2025/3/17 23:58:42/文章来源:https://www.cnblogs.com/Dongmy/p/18778046
非极大值抑制(Non-Maximum Suppression,简称NMS)是一种在计算机视觉任务中,尤其是在目标检测领域扮演着重要角色的低层次处理技术。它通过筛选出局部极大值得到最优解,广泛应用于边缘检测、目标检测等领域。NMS算法在目标检测中,通过消除冗余的边界框来完善物体检测模型的输出,并确保每个物体只被检测一次。这一过程大大提高了检测结果的准确性和可解释性,使其成为现代物体检测管道不可或缺的组成部分
NMS算法的核心思想是通过设定一个阈值来判断两个候选框是否重叠。常用的重叠度量是交并比(IoU),定义为两个候选框的交集面积除以它们的并集面积。当两个候选框的IoU大于设定的阈值时,认为它们重叠。算法的步骤如下:
  1. 按照置信度分数对所有候选框进行排序,从高到低。
  2. 选择置信度最高的候选框,并将其作为最终输出的一个检测结果。
  3. 计算该候选框与其他未处理的候选框的重叠区域的面积(可以使用交并比(Intersection over Union,IoU)来度量重叠程度)。
  4. 去除与已选择的候选框有较高重叠的候选框,以避免重复检测。
  5. 重复步骤2到4,直到所有候选框都被处理完毕
NMS算法保留了置信度最高的候选框,并通过去除与其重叠的其他候选框,消除了冗余的检测结果。通过调整IoU阈值,可以控制NMS的严格程度。较高的IoU阈值会保留更多的候选框,但可能导致冗余检测;较低的IoU阈值可以去除更多的冗余框,但可能会错过一些真实目标
NMS(Non-Maximum Suppression)和Soft-NMS都是目标检测中用于去除冗余边界框的技术,但它们在处理边界框的方式上有所不同。
NMS通过直接消除那些与已选择边界框IoU(Intersection over Union)大于设定阈值的候选框来简化检测结果。这种方法简单直接,但有时可能会错误地抑制掉一些重要的边界框,特别是当这些边界框的置信度较高时。
Soft-NMS则是一种改进的NMS方法,它不是简单地删除那些IoU大于阈值的候选框,而是降低这些框的置信度。Soft-NMS通过一个函数来调整每个框的置信度,这个函数考虑了IoU值,对于那些原来置信度不高的Box,一打压,其置信度就会低于置信度门槛值,从而在后续的筛选中被过滤掉;而对于那些置信度很高的Box,即使打压,其置信度依然高,最后得以保留。Soft-NMS的IoU主要是用来打压Box的置信度的,以高斯函数举例,如果iou越大,则对Si的影响越大,使得Si越小,这样就更新了每个Box的Si的值。最终保留那些即使iou不是很高,同时置信度不是很低的Box。这种方法可以避免NMS中直接消除边界框的问题,从而保留更多有用的信息,有助于提高检测的召回率。
总的来说,Soft-NMS相对于传统的NMS来说,是一种更“柔软”的处理方式,它通过调整置信度而不是直接删除边界框,以期望获得更好的检测性能。Soft-NMS还有后续改进版Softer-NMS,其主要解决的问题是:当所有候选框都不够精确时该如何选择,当得分高的候选框并不更精确,更精确的候选框得分并不是最高时怎么选择。论文值得一看,本文不作更多的详解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/900682.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Fiddler工具无法抓取请求的几种原因

1、设置了过滤: fiddler中支持我们设置过滤条件,这样fiddler就不会抓取所有的请求,比如我们要抓取一个指定ip地址的请求,就可以设置对应的过滤信息,但是结束过后可能忘记删除了,导致下一次使用fiddler的时候抓不到请求。 1、首先进入Fiddler界面 2、点击Filters,如果设置…

使用 INFINI Gateway 保护 Elasticsearch 集群之修改查询不合理参数(二)

本文将探讨如何使用 INFINI Gateway 修改查询不合理的参数,此方法同样适用于 Opensearch 和 Easysearch 。 在之前的文章中,我们介绍了如何使用 request_body_json_set 处理器修改不合理的查询参数,本篇将继续探讨如何使用 request_body_regex_replace 处理器修改不合理参数…

11判断

C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false。判断语句语句 描述if 语句 一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。if...else 语句 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。嵌套 if 语句 您可以在一个…

2.4G 5G 频率 Wi-Fi 信道 All In One

2.4G & 5G 频率 Wi-Fi 信道 All In One2.4G & 5G 频率 Wi-Fi 信道 All In One demos荣耀路由 XD28Wi-Fi 信道:以无线信号作为传输媒体的数据信号传送通道,若选“自适应”,则路由器会根据周围环境选择一个最好的信道。 模式:设置路由器的无线工作模式。2.4G Wi-Fi 推…

win系统部署deepseek、ollama,修改模型路径

安装ollama 1、ollama官网下载对应版本的安装包:https://ollama.com/download 2、ollama默认安装到C盘,如果希望自定义安装路径,可以考虑该命令:OllamaSetup.exe /DIR=路径, 比如我想安装到D:\ollama文件下,我要在D盘下创建ollama文件夹,并将Ollama的安装包放在里面,然…

Power Apps 技术分享:画布应用使用表单控件

前言表单控件,是画布应用里一个非常好用的控件,我们今天简单介绍下,如何使用这个控件。正文1.首先,我们需要有一个数据源,我们这里用上一篇博客新建的数据源,如下图:2.新建一个页面,在页面里添加表单控件,也就是编辑窗体(这个中文的翻译啊,一言难尽),如下图:3.为…

P4569 [BJWC2011] 禁忌♂题解

传送门 我的板蓝根 前言 这个题的数据范围及其出卖解法,其实很简单。 题目大意 定义一个字符串的权值为将其分割后子串与 \(N\) 个文本串相等个数的最大值,求:在由前 \(alphabet\) 个小写字母组成的长度为 \(len\) 的任意字符串中随机选择出的字符串的期望权值。 题解 看到这…

微服务存在的问题及解决方案

微服务存在的问题及解决方案 1. 存在问题 1.1 接口拖慢 因为一个接口在并发时,正好执行时长又比较长,那么当前这个接口占用过多的 Tomcat 连接,导致其他接口无法即时获取到 Tomcat 连接来完成请求,导致接口拖慢,甚至失败。 假如商品服务业务并发较高,占用过多 Tomcat 连接…

Esay_log移植

1. 目录结构demo 包含多平台移植示例,如 Linux、RT-Thread、裸机系统等,提供实际工程参考,帮助开发者快速适配不同环境。docs 存放中英文文档,详细说明库的配置、API 接口、移植方法及插件扩展机制。关键文档包括:api/kernel.md:核心接口函数定义及使用说明。port/kernel…

The sunshine in my life--Sun Yingsha

Have you ever been stuck in the mud, unable to move? I was once that person until Sun Yingsha’s story illuminated my path. During the epidemic period, exposed to various electronic devices, I was addicted to online games. Time slipped through my fingers …

工具-typora 字数太多卡顿问题

进入设置打开高级设置在文件夹中编辑 配置文件修改 flags 后面的内容 "flags": [] 为 "flags": [["disable-gpu"],] 如图保存后重启 typora