当前位置: 首页 > news >正文

YOLO拓展-NMS算法

1.概述

NMS(non maximum suppression)即非极大值抑制,其本质就是搜索局部极大值,抑制非极大值元素,可以理解为局部最大搜索。

    这里不讨论通用的NMS算法(参考论文《Efficient Non-Maximum Suppression》对1维和2维数据的NMS实现),而是用于目标检测中提取分数最高的窗口的。例如在行人检测中,滑动窗口经提取特征,经分类器分类识别后,每个窗口都会得到一个分数。但是滑动窗口会导致很多窗口与其他窗口存在包含或者大部分交叉的情况。这时就需要用到NMS来选取那些邻域里分数最高(是行人的概率最大),并且抑制那些分数低的窗口。

2.算法流程演示

Step1:按置信概率排列相应的备选框

Step2:取最大的框作为保留框,把与其IOU大于阈值的重叠框删除掉

Step3:剩下的框执行Step2

如上图,A,B,C为一组重叠框 F,D为一组重叠框。

根据候选框的类别分类概率做排序:F<B<D<E<A<C

先标记最大概率矩形框F是我们要保留下来的;

那么第一步会先按置信概率选择C框,分别判断A~F(除C外)与C的重叠度IOU(两框的交并比)是否大于某个设定的阈值,假设B、A与C的重叠度超过阈值,那么就扔掉B、A;

再从剩下的矩形框F、D、E中,选择概率最大的E,标记为要保留下来的,然后判读E与D、F的重叠度,扔掉重叠度超过设定阈值的矩形框D

剩余步骤如上重复操作,直到剩下的矩形框没有了,标记完所有要保留下来的矩形框C,E,F三个框

相关文章:

  • Dijkstra 算法
  • 用usb网卡 虚拟机无法开到全双工的解决办法
  • 时态--06--现在完成時
  • jmeter中文乱码问题解决
  • k8s安装kubeadm
  • 自由学习记录(56)
  • 算法期末复习
  • 任意文字+即梦3.0的海报设计Prompt
  • No package docker-ce available问题的解决
  • Python requests代理(Proxy)使用教程
  • 【ESP32】ESP-IDF开发 | 低功耗蓝牙开发 | GAP协议 + 设备扫描例程
  • 【PyTorch】colab上跑VGG(深度学习)数据集是 CIFAR10
  • Python 一等函数( 把函数视作对象)
  • AtCoder ABC402 A~D 题解
  • 五分钟学会如何基本使用JJWT!!!
  • Linux系统编程 day6 进程间通信mmap
  • 借助LlamaIndex实现简单Agent
  • Day2—3:前端项目uniapp壁纸实战
  • 深入理解 MCP 协议:开启 AI 交互新时代
  • 【人工智能】再谈探索AI幻觉及其解决方案(进一步整理)
  • 尹锡悦涉嫌发动内乱案第二次庭审21日举行,媒体获准拍摄
  • 人民文学奖颁出,董宇辉获传播贡献奖
  • 徐州沛县一村委会因无资质处理固废,被环保部门罚款19万元
  • 突然手抖心慌?低血糖的“死亡连锁反应”,3步急救法必看
  • 广东虎门大桥计划今年10月开启大修,工期27个月
  • 泰康资产获批设立全资私募基金管理子公司,首期投资规模预计120亿元