点击上方“计算机视觉工坊”,选择“星标”

干货第一时间送达

首先基于一个现象:人类在对事物进行观察的时候,是能够检测到每个实例,并按照自己已知的知识来对每个实例进行分类,有认知的归属到对应类别,无认知的归属到未知(unknown),而过往的深度学习检测任务所完成的工作只能对已有认知的实例进行定位和分类,所以作者提出,能否使得检测算法达到更近似人类的认知体验?所以作者提出了“开放世界目标检测”任务。作者原文中对这个任务的解释如下:

1)在没有明确监督的情况下,将尚未引入该对象的对象识别为“未知”。

2)在逐步接收到相应的标签时,逐步学习这些已识别的未知类别,而不会忘记先前学习的课程。

对该任务的个人理解:

1)在训练集中无明确的某类别实例标签时,测试图像上的该类别实例能够实现检测并识别类别为未知

2)可以通过增量学习的方式,即保持已有知识库所学习到的知识正常使用,也能够逐步增加对新实例的正确类别识别。也就是该类别由“未知”学习修改为其指定的正确类别。

作者还提供了一套被成为ORE的开放世界目标检测性能评估指标和评估工具,并测试了该套工具的合理性。

作者的认知中,开放世界的分类问题和检测问题并不是完全适用的,主要原因就是检测类算法在训练时,是将类别位置的实例作为背景来进行训练的。通过在训练时添加额外的辅助方式,检测器也大多会强行将当前位置类别实例归类到某一已知类别实例中,并输出一个较高的置信度。同时作者认为本文的主要贡献为:

1) 更贴近现实世界的检测需求设置

2)提出一种基于对比聚类,位置类别RPN网络和基于能量的未知类型识别的开放世界目标检测的结构ORE

3)提供了开放世界目标检测算法模型性能测试方案

4)所提出的检测结构,在增量检测问题上,达到了当前的最优技术水平

本文中,作者认为的开放世界目标检测器工作流程应如图1的第一行,首先是网络对开放世界已知的类别进行训练,并将遇见的未知类别的实例检测提供给用户来进行分辨,用户标注出自己感兴趣的实例类别后,增添到网络中,网络不必重新训练,仅通过增量学习自我更新就可对之前的检测类别和当前新增类别实现良好检测。

开放世界中的目标检测器工作流程

作者认为,深度网络中间层学习到的隐藏层特征如果善加利用,是可以帮助学习清晰的已知类别和位置类别的特征表示的区别,从而避免上文提到的检测器大多会强行将当前位置类别实例归类到某一已知类别实例中,并输出一个较高的置信度的现象。第二点就是,因新事物与已知类别事物的不同,也就是特征空间的不重叠,所以也存在通过增量学习,在不影响原有类别识别的情况下,让网络逐步的学习新的类别。而如何对隐藏层特征善加利用,作者就采用了对比聚类;我们也知道,在出现未知类别的实例时,可能会有很多该未知类别的实例出现,手工标记并不是可取的最优选项,所以作者提出了基于RPN的自动标记机制;然后作者在提出的ORE中,在分类头上基于已知类别和位置类别在特征空间能量图上的固有间隔,通过基于能量的分类头来区分已知类别实例和未知类别实例。如图1第二行,作者采用的是Faster RCNN的两阶段基础架构,首先用类无关的RPN来确定图像中的实例区域,接着对其进行每个实例区域,在ROI中进行对比聚类,确定其为已知类别或未知类别,并进行回归定位。其中“unkonwn aware RPN”用于自动标记,基于能量的分类头用于对未知实例的类别进行识别归类。

对比聚类

在隐藏层特征空间上类的区分性将是实现类别分离的理想特征。采用对比性聚类就是为了强制性的达到图1上最后一行中间图的效果,类内差尽量小,而类间差尽量大。每个已知类别会维护一个向量是检测器中间层生成的特征向量,假设已知类别数为,则特征向量表征为,其中代表未知类的特征向量。然后再建立一个用来存储训练过程中的临时特征向量,每个类的特征向量存在其对应位置。最后在常规损失函数上再叠加一个对比聚类损失来达到强制降低类内差,增大类间差的效果。原文中该部分的流程图如下,其中是不叠加对比聚类损失的轮数,用以初始化已知类别的特征向量,表示,在迭代轮数大于后,每轮都计算对比聚类的损失,并每轮进行一次特征向量更新(有点像混合高斯背景建模了):

对比聚类算法流程

基于RPN的自动标记机制

核心就是利用RPN的建议框类别无关特性,将RPN提取的置信度最高的前K个背景建议框作为位置对象的建议框位置向后传递

基于能量的分类头

首先是基于前面提到的对比聚类将不同类别的特征表征尽量的拉开了,这里作者选择对不同类别的概率密度函数进行建模,作为不同类别的区分,作者用图进行了说明。

基于能量的分类头

增量学习

文章最开始,作者提到了,开放世界目标检测要实现“可以通过增量学习的方式,即保持已有知识库所学习到的知识正常使用,也能够逐步增加对新实例的正确类别识别。也就是该类别由“未知”学习修改为其指定的正确类别”。所以作者就调研了针对该类问题的不同处理方式,最后选了个最简约的--每个类至少存储个平衡的样本(这里应该是指具有类别代表性的样本),然后用增量学习进行微调。

实验结论

作者在这个部分提供了一套评估协议,用来评估检测模型识别已知类、未知类以及逐步学习未知类的性能。作者是在VOC和COCO数据集上做的实验,具体就是训练时把训练集按照类别分成组,然后规定每个组有一个时刻,在这个时刻前,里的类别被视为是未知的,在这个时刻前的,就认为是已知的类别了。而在测试时,用了VOC的测试集和COCO的Val集,然后训练集的每组保留1K张做验证。

评估标准

其中是已知类别上的测试精度,是在已知+未知类别上的测试精度,在Recall 0.8下进行测试,并报告被错分为已知类别的未知类别物体的绝对数量。mAP是在阈值0.5下测得的。

实现细节

backbone采用的Resnet-50,对分类头上类别数可能会发生该表的问题,作者先假定了一个最大类别数,然后增量学习时引入新类时修改损失函数实现,而对视而不见的类别,即判断属于"未知"类别,但是用户不关心的类,修改它们分类的对数值为一个极大的负数值,从而是的他们在softmax上贡献尽量低()。RoI块的最后一个残差结构得到的2048维特征用于进行对比聚类。训练时,当训练集中第t组作为已知类别加入训练时,只有当前分组被标记(这句话我个人稍微有点歧义,目前是按照自己的理解写的,大家可以看作者的开源代码来确定具体执行流程)。当测试第t组时,则是之前的所有样本都会被标记,而第t组以后的会被标记为“未知“类别。作者选择的50,后续章节则是有敏感性分析的实验表格来支撑这个值的选取。

可视化结果

可视化结果示例

在图(a)中,还没有学习过apple、orange等类别,但ORE模型能够正确地将这些目标识别为“未知”类。在图(b)中,当给定了apple、orange标签之后,ORE模型在保证之前person类准确识别的前提下,还正确识别了新标记的目标。

论文链接

  • paper: https://arxiv.org/abs/2103.02603

  • code: https://github.com/JosephKJ/OWOD

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「计算机视觉工坊」公众号后台回复:深度学习,即可下载深度学习算法、3D深度学习、深度学习框架、目标检测、GAN等相关内容近30本pdf书籍。

下载2

在「计算机视觉工坊」公众号后台回复:计算机视觉,即可下载计算机视觉相关17本pdf书籍,包含计算机视觉算法、Python视觉实战、Opencv3.0学习等。

下载3

在「计算机视觉工坊」公众号后台回复:SLAM,即可下载独家SLAM相关视频课程,包含视觉SLAM、激光SLAM精品课程。

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近3000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

CVPR2021 Oral|开放世界中的目标检测相关推荐

  1. 拥挤场景中的目标检测

    拥挤场景中的目标检测 Detection in Crowded Scenes: One Proposal, Multiple Predictions 论文链接: https://arxiv.org/a ...

  2. X射线图像中的目标检测

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 1 动机和背景 每天有数百万人乘坐地铁.民航飞机等公共交通工具,因 ...

  3. 无人驾驶中的目标检测--MODNet: Moving Object Detection Network for Autonomous Driving

    MODNet: Moving Object Detection Network with Motion and Appearance for Autonomous Driving 这里讲视频动作识别中 ...

  4. 《巫师 3:狂猎》:传统叙事在开放世界中的水土不服

    鉴于我并没有去关注当时<巫师3>的宣发过程(因为对于这个系列我是"出必入",所以没有关心宣发--),我对这个游戏所拥有的热度感到有点惊讶.我是从初代就开始玩起了,在二代 ...

  5. CODA:自动驾驶中道路目标检测的极端情况数据集

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 来源丨计算机视觉深度学习和自动驾驶 2022年3月arXiv论文"CODA: A Real- ...

  6. 开源库 | 监控视频中的目标检测与跟踪

    介绍一份来自卡内基梅隆大学开源的主要用于监控视频中目标检测与跟踪的开源库:Object_Detection_Tracking . 其赢得了 2019 Activities in Extended Vi ...

  7. 地平线机器人Waymo Open Dataset Challenge中2D目标检测赛道第二名方案解析

    点击上方"AI算法修炼营",选择"星标"公众号 精选作品,第一时间送达 这是地平线机器人在CVPR 2020 Waymo Open Dataset Challe ...

  8. AAAI 2021中的目标检测(详细版with code)

    本文转自知乎,已获作者张泽今授权转载,请勿二次转载.原文链接: https://zhuanlan.zhihu.com/p/345472885 本篇文章来介绍一下 AAAI 2021 会议录取的目标检测 ...

  9. 工业视觉中的目标检测——兼谈天池大赛优胜方案

    点击我爱计算机视觉标星,更快获取CVML新技术 目标检测是计算机视觉领域研究最火热的方向,这从计算机视觉顶会CVPR相关论文数量就能看得出来. 目标检测应用范围广泛,上至卫星遥感,下至自动驾驶,大到鲸 ...

  10. IoU优化——在Anchor-Free中提升目标检测精度(附源码)

    计算机视觉研究院专栏 作者:Edison_G 目前的anchor-free目标检测器非常简单和有效,但缺乏精确的标签分配方法,这限制了它们与经典的基于Anchor的模型竞争的潜力 公众号ID|Comp ...

最新文章

  1. 【 Notes 】RSSI,LOS versus NLOS,Positioning, Mobility, and Tracking,Network Localization
  2. 从C#中的枚举获取int值
  3. cookie和session的理解
  4. c#对象集合去重_C# List集合去重操作注意点
  5. LINUN 网络连接小记
  6. ios framework 找不到.h_找不到好看的壁纸?上万张「高清壁纸」,都在iOS捷径里...
  7. c++模板--2(模板机制,模板的局限性,类模板,类模板做函数的参数)
  8. ntlm java_深讨Java SE 6 在 HTTP 方面的新特性(NTLM)
  9. 基础算法 —— 调度问题
  10. 44 SD配置-销售凭证设置-定义状态参数文件
  11. EverNote 极致的免费笔记资料管理软件 (数据网络同步、支持PC、Mac与手机多平台) 转自:http://www.iplaysoft.com/evernote.html
  12. 美国苹果股价走势图(抢先看美股三大指数新动态)
  13. php重构求圆柱圆锥的体积,圆锥的体积 - 彭阳县第二小学数学教研社区 - 宁夏教育云...
  14. 计算机时间校对更改原因,计算机时间校准方法
  15. 自下而上构建知识图谱全过程
  16. RabbitMQ的两种不同写法
  17. cairo和pixman库给bmp图片加文字水印
  18. Java 删除文件/文件夹
  19. 涉外资(外商)公司股权转让有关问题答疑
  20. Android Drawable设计圆角

热门文章

  1. linux系统优化的方法
  2. PHP学习记录(一)
  3. ClamAV学习【6】—— cli_load函数浏览
  4. 再探结构体字节对齐问题
  5. 8.确保0对于值类型是有效的
  6. 乱谈B2C系统-算是今年的总结吧
  7. 使用vue-cli3创建项目的时候出错,ERROR command failed: npm install --loglevel error --registry
  8. SqlServer实现split功能
  9. SQL Server中数据库文件的存放方式,文件和文件组
  10. 每日一道剑指offer-两个栈来实现一个队列