SyncOOD:增加OOD目标检测鲁棒性,自动化数据助您一臂之力 | ECCV'24
本文是对公开论文的核心提炼,而非直接翻译,旨在进行学术交流。如有任何侵权问题,请及时联系号主以便删除。
来源:晓飞的算法工程笔记 公众号,转载请注明出处
论文: Can OOD Object Detectors Learn from Foundation Models?

创新点
- 研究并发掘在大规模开放集数据上训练的文本到图像生成模型在目标检测任务中合成
OOD对象的潜力。 - 引入一种自动化的数据整理过程以获取可控的、带注释的场景级合成
OOD图像,用于OOD目标检测。该过程利用大型语言模型(LLMs)进行新对象发现,并使用视觉基础模型进行数据注释和过滤。 - 发现在保持
ID/OOD图像上下文的一致性以及获得更准确的OOD注释边界框,对合成数据在OOD目标检测中的有效性至关重要。 - 在多个基准上的全面实验证明了该方法的有效性,在使用最少合成数据的情况下显著超越了现有的最先进方法。
内容概述
分布外(OOD)目标检测是一项具有挑战性的任务,因为缺乏开放集的OOD数据。受到近期在文本到图像生成模型方面的进展的启发,例如Stable Diffusion,论文研究了基于大规模开放集数据训练的生成模型合成OOD样本的潜力,从而增强OOD目标检测。
论文提出了SyncOOD,这是一种简单的数据策划方法。该方法利用大型基础模型的能力,从文本到图像的生成模型中自动提取有意义的OOD数据,使得模型能够访问包含在现成基础模型中的开放世界知识。合成的OOD样本随后被用于增强一个轻量级、即插即用的OOD检测器的训练,从而有效地优化了在分布内(ID)/OOD的决策边界。
在多个基准上进行的广泛实验表明,SyncOOD在性能上显著优于现有方法,凭借最少的合成数据使用,建立了新的最先进性能。
SyncOOD

异常合成管道包括两个部分:
- 合成一组有效的照片真实感场景级
OOD图像 \(\textbf{x}^{\text{edit}}\) ,记为 \(\mathcal{D}_{\text{edit}} = \left\{(\textbf{x}^{\text{edit}}, \textbf{b}^{\text{edit}})\right\}\) ,该图像包含新颖对象及其相应的标注框 \(\textbf{b}^{\text{edit}}\) ,这一过程基于从 \(\mathcal{D}_{\text{id}}\) 进行全自动化的区域级编辑。 - 选择和使用高效的合成数据,为训练
OOD对象检测器提供伪OOD监督,与训练集中ID样本一起使用。
合成新语义对象
从分布内对象想象新概念对象
如图 (a) 所示,基于训练集 \(\mathcal{D}_{\text{id}}\) 中的ID标签 \(\mathcal{Y}_{\text{id}}\) ,利用大型语言模型LLM(如GPT-4)广泛的知识和推理能力来检查视觉相似度和上下文兼容性,为每个ID对象标签设想了一组新颖对象,记为 \(\mathcal{Y}_{\text{novel}}\) ,同时保持了想象对象与ID对象之间的语义可分性。这能够关联ID对象,并通过使用包含上下文示例的提示来促进可能的新对象的概念化,以替换现有的ID对象。
在指定区域内编辑对象
为了生成包含新概念 \(y_j \in \textbf{y}^{\text{novel}}_i\) 的新图像,选择替换现有图像中标签为 \(y_i^{\text{id}}\) 的现有ID对象,而不是寻找新的位置或从头生成图像。通过这样做,可以确保上下文兼容性,并消除场景上下文中的干扰,因为上下文得以保留。
如图 (b) 所示,使用稳定扩散修复(Stable-Diffusion-Inpainting)对ID图像进行区域级编辑,得到包含新对象的编辑图像 \(\textbf{x}^{\text{edit}}\) 为:
\textbf{x}^{\text{edit}}=\text{SDI}(\textbf{x}^{\text{id}},\textbf{b}^{\text{id}},\textbf{y}^{\text{novel}}).
\label{eq:sdi}
\end{equation}
\]
细化新对象的注释框
由于扩散模型中的随机性,编辑对象的属性,如质量、体积和定位,可能与原始对象框不匹配。为了解决这个问题,如图 (c) 所示,设计一个基于SAM的高效、有效的细化器,以获取新对象的精确边界框。
使用从 \(\textbf{b}^{\text{id}}\) 扩展出的填充区域作为提示,并使用SAM输出该区域中新对象的最高置信度实例掩码 \(\textbf{m}^{\text{SAM}}\) :
\textbf{m}^{\text{SAM}}=\text{SAM}(\textbf{x}^{\text{edit}};\text{padding}(\textbf{b}^{\text{id}}, e)),
\label{eq:sam}
\end{equation}
\]
将获得的掩码 \(\textbf{m}^{\text{SAM}}\) 转换为边界框 \(\textbf{b}^{\text{SAM}}\) ,并计算 \(\textbf{b}^{\text{SAM}}\) 与相应的 \(\textbf{b}^{\text{id}}\) 之间的交并比(IoU),以过滤出在尺度上变化较大的新对象:
\left\{\textbf{b}^{\text{edit}}\right\}=\left\{\left.\textbf{b}^{\text{SAM}}\middle|\right.\text{IoU}(\textbf{b}^{\text{SAM}},\textbf{b}^{\text{id}})>\gamma\right\},
\label{eq:iou}
\end{equation}
\]
发掘难OOD样本以及模型训练
Mining Hard OOD Objects with High Visual Similarities for Training
最可能被目标检测器混淆为原始ID对象的新对象视为最有效。因此,基于预训练目标检测器的潜在空间中的成对相似性,寻找最容易被混淆为ID的合成OOD样本。
对于一个现成的目标检测器 \(\mathcal{F}_\text{det}\) ,为每一对提取潜在特征 \(\textbf{z}^{\text{edit}}\) 和 \(\textbf{z}^{\text{id}}\) ,根据相似性进行过滤,以提供伪OOD监督:
\textbf{z}^{\text{edit}},\textbf{z}^{\text{id}}=\mathcal{F}_\text{det}(\textbf{b}^{\text{edit}};\textbf{x}^{\text{edit}}),\mathcal{F}_\text{det}(\textbf{b}^{\text{id}};\textbf{x}^{\text{id}}).
\label{eq:extract}
\end{equation}
\]
\left\{\textbf{z}^{\text{ood}}\right\}=\left\{\left.\textbf{z}^{\text{edit}}\middle|\right.\epsilon_{\textit{low}}<\text{sim}(\textbf{z}^{\text{edit}},\textbf{z}^{\text{id}})<\epsilon_{\textit{up}}\right\},
\label{eq:sim}
\end{equation}
\]
通过合成样本优化
ID/OOD决策边界
一旦获得了ID和合成OOD对象,使用一个轻量级的多层感知器(MLP) \(\mathcal{F}_\text{ood}\) ,作为经过二分类损失优化的OOD检测器参与训练:
\mathcal{L}_\text{ood}=\mathbb{E} _{\textbf{z}\sim\textbf{z}^{\text{id}}}\left[-\log\frac{1}{1 + \exp^{-\mathcal{F}_\text{ood}(\textbf{z})}}\right]+\mathbb{E} _{\textbf{z}\sim\textbf{z}^{\text{ood}}}\left[-\log\frac{\exp^{-\mathcal{F}_\text{ood}(\textbf{z})}}{1+\exp^{-\mathcal{F}_\text{ood}(\textbf{z})}} \right].
\label{eq:optim}
\end{equation}
\]
主要实验



如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

SyncOOD:增加OOD目标检测鲁棒性,自动化数据助您一臂之力 | ECCV'24的更多相关文章
- 目标检测 的标注数据 .xml 转为 tfrecord 的格式用于 TensorFlow 训练
将目标检测 的标注数据 .xml 转为 tfrecord 的格式用于 TensorFlow 训练. import xml.etree.ElementTree as ET import numpy as ...
- (转)如何用TensorLayer做目标检测的数据增强
数据增强在机器学习中的作用不言而喻.和图片分类的数据增强不同,训练目标检测模型的数据增强在对图像做处理时,还需要对图片中每个目标的坐标做相应的处理.此外,位移.裁剪等操作还有可能使得一些目标在处理后只 ...
- 目标检测-yolo2
转载自:http://blog.csdn.net/qq_34784753/article/details/78825493 对于现在的最好的检测系统来说,yolo_v1 的问题主要出现在两方面,也就是 ...
- 【目标检测】SSD:
slides 讲得是相当清楚了: http://www.cs.unc.edu/~wliu/papers/ssd_eccv2016_slide.pdf 配合中文翻译来看: https://www.cnb ...
- 【目标检测实战】目标检测实战之一--手把手教你LMDB格式数据集制作!
文章目录 1 目标检测简介 2 lmdb数据制作 2.1 VOC数据制作 2.2 lmdb文件生成 lmdb格式的数据是在使用caffe进行目标检测或分类时,使用的一种数据格式.这里我主要以目标检测为 ...
- 目标检测网络之 YOLOv2
YOLOv1基本思想 YOLO将输入图像分成SxS个格子,若某个物体 Ground truth 的中心位置的坐标落入到某个格子,那么这个格子就负责检测出这个物体. 每个格子预测B个bounding b ...
- 目标检测网络之 YOLOv3
本文逐步介绍YOLO v1~v3的设计历程. YOLOv1基本思想 YOLO将输入图像分成SxS个格子,若某个物体 Ground truth 的中心位置的坐标落入到某个格子,那么这个格子就负责检测出这 ...
- YOLT:将YOLO用于卫星图像目标检测
之前作者用滑动窗口和HOG来进行船体监测,在开放水域和港湾取得了不错的成绩,但是对于不一致的复杂背景,这个方法的性能会下降.为了解决这个缺点,作者使用YOLO作为物体检测的流水线,这个方法相比于HOG ...
- 目标检测(六)YOLOv2__YOLO9000: Better, Faster, Stronger
项目链接 Abstract 在该论文中,作者首先介绍了对YOLOv1检测系统的各种改进措施.改进后得到的模型被称为YOLOv2,它使用了一种新颖的多尺度训练方法,使得模型可以在不同尺寸的输入上运行,并 ...
- 从YOLOv1到YOLOv3,目标检测的进化之路
https://blog.csdn.net/guleileo/article/details/80581858 本文来自 CSDN 网站,作者 EasonApp. 作者专栏: http://dwz.c ...
随机推荐
- SpringMVC:SpringMVC处理Ajax请求
目录 @RequestBody @RequestBody获取json格式的请求参数 @ResponseBody @ResponseBody响应浏览器json数据 @RestController注解 @ ...
- Spring:IOC(2)
接前文:Spring:IOC 目录 依赖注入之setter注入 依赖注入之构造器注入 特殊值处理 字面量赋值 null值 xml实体 CDATA节 为类类型属性赋值 为数组类型属性赋值 修改Stude ...
- 【YashanDB知识库】字段加上索引后,SQL查询不到结果
[标题]字段加上索引后,SQL查询不到结果 [问题分类]索引功能使用 [关键字]索引,SQL查询,时间类型,vachar字符类型 [问题描述]字段加上索引后,SQL查询不到结果. [问题原因分析]当前 ...
- Qml 实现仿前端的 Notification (悬浮出现页面上的通知消息)
[写在前面] 经常接触前端的朋友应该经常见到下面的控件: 在前端中一般称它为 Notification 或 Message,但本质是一种东西,即:悬浮弹出式的消息提醒框. 这种组件一般具有以下特点: ...
- CSS – rem, em, px
参考: 掘金 – 如何更愉快地使用em -- 别说你懂CSS相对单位 绝对值 vs 相对值 px, cm, mm 这些是绝对值. rem, em 是相对值. 绝对值就是最终的尺寸. 相对值的意思是它不 ...
- JavaScript Bom和Dom的一般性详解
一.JavaScript的组成 JavaScript的实现包括以下3个部分: ECMAScript(核心) 描述了JS的语法和基本对象. 文档对象模型 (DOM) 处理网页内容的方法和接口 浏览器对象 ...
- java_day2_常量,变量,数据类型,运算符
一.常量 常量:在Java程序运行过程中其值不能发生改变的量 分类: 1.字面值常量: 整数常量 表示所有的整数,包括负数 10 -8 小数常量 表示所有的小数 1.23 -3.14 布尔常量 tru ...
- MybatisPlus——DML编程控制——增删改
DML编程控制 id生成策略控制 不同的表应用不同的id生成策略 日志:自增(1,2,3,4,......) 购物订单:特殊规则(FQ23948AK3843) 外卖单:关联地区日期等信息(10 04 ...
- 为了更好的 Flutter | 2021 第二季度开发者调研
自 Flutter 2 发布以后,诸多振奋人心的开发特性 也随之解锁,从 加速应用开发 到 流畅地开发多平台应用 都已经有了长足的进步.我们也从社区收集到了不少大家关心的问题,并进行了 解答.毫无疑问 ...
- 浏览器中生成 OSS 令牌 | Web Crypto API
笔者写文章的时候,都会把图片通过自己搭建的一个简单站点 https://imgbed.sugarat.top/ 把图片上传到各种云的对象存储服务(OSS)上. 然后通过CDN访问,保证图片有可靠的访问 ...