基于视觉语言(图像文本)知识蒸馏的目标检测

CLIP模型当成teacher模型,去蒸馏自己的模型,从而达到zero-shot。

模型具有检测新类别的能力。

baseline方法是一个Mask R-CNN由两阶段组成,一是生成proposal,然后筛选pospoal,第二步是进过分类头为每个pospoal确定目标类别。目标检测目标函数两部分,一部分是分类损失一部分是边界框回归参数(框定位)。文本来自物体的类别,是有监督的学习。

ViLD-Text模型将图像特征和文本特征联系到一起,但是open vocabulary(zero-shot)的能力还有待加强。文本端模型参数锁住。然后文本特征与图像特征做点乘,得到相似度就可以计算交叉熵,进而训练模型。

图像region embedding和背景以及文本特征做点乘计算相似度。这里ViLD-Text只是把图像特征和文本特征做了一下关联,这样就可以做zero-shot了。

ViLD-image右侧这里将M个proposal(这里M个相对于ViLD-Text中N个proposals更少了,M个是从N个中通过RPN预抽取出来的,这样做可以加速计算)经过裁剪和resize后送进CLIP中预训练好的图像编码器,得到M个image embedding(图像特征)。上述过程可以理解为将筛选后的每个proposal看做一个图像并提取特征。这里使用CLIP提取的proposal的特征看做伪标签,也就是groun true。右侧也就是知识蒸馏中的teacher网络。

另一边,将M个proposal送进目标检测的框架,希望这边抽出的特征与teacher网络(CLIP图像编码器抽取的特征)那边的特征尽可能一致。这样一来,监督信号就是CLIP中图像编码器抽取的特征,不再是人工标注的特征。因此,就不再受基础类的限制了,proposal既可以来自基础类Bade Category,也可以来自New Category。监督信号是CLIP里来的,而不是人工标注来的。

ViLD-image与ViLD-text结合起来即为ViLD。右侧为teacher网络,只有训练的时候抽取伪标签用,测试的时候用不到。左侧将N+M个proposal同时输入进目标检测框架,然后分开,M一端抽取的特征与右侧teacher网络的伪标签计算L1-loss。N一端用于抽取每个proposal的特征并与文本和背景配对计算交叉熵损失。

模型总览如上图,训练过程:一张图像经过backbone和RPN抽取proposal,然后每个proposal通过conv抽取region embedding。同时,经过裁剪和resize的proposal经过CLIP预训练好的图像编码器得到image embedding作为伪标签。然后region embedding与image embedding计算L1-loss。与此同时,文本信息经过文本编码器得到text embedding,region embedding与text embedding点乘计算相似度进一步计算交叉熵损失来匹配图像文本对。

测试过程:region embedding与text embedding(可以有新类)去匹配。

这个数据集有很多特别小或者不常见的物体,因此对这些物体标注也很少。APr就是对这种特别小的物体的检测结果。可以看出ViLD表现还是很好的,已经超过了监督学习+RFS的方法(这里这些小物体本来标注就很少,即使是基督的方式,模型看到的也不多,甚至可能产生误导)。

python的学习还是要多以练习为主,想要练习python的同学,推荐可以去看,他们现在的IT题库内容很丰富,属于国内做的很好的了,而且是课程+刷题+面经+求职+讨论区分享,一站式求职学习网站,最最最重要的里面的资源全部免费。

牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网求职之前,先上牛客,就业找工作一站解决。互联网IT技术/产品/运营/硬件/汽车机械制造/金融/财务管理/审计/银行/市场营销/地产/快消/管培生等等专业技能学习/备考/求职神器,在线进行企业校招实习笔试面试真题模拟考试练习,全面提升求职竞争力,找到好工作,拿到好offer。https://www.nowcoder.com/link/pc_csdncpt_ssdxjg_python

他们这个python的练习题,知识点编排详细,题目安排合理,题目表述以指导的形式进行。整个题单覆盖了Python入门的全部知识点以及全部语法,通过知识点分类逐层递进,从Hello World开始到最后的实践任务,都会非常详细地指导你应该使用什么函数,应该怎么输入输出。

牛客网(牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网)还提供题解专区和讨论区会有大神提供题解思路,对新手玩家及其友好,有不清楚的语法,不理解的地方,看看别人的思路,别人的代码,也许就能豁然开朗。

快点击下方链接学起来吧!

牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网

参考:

论文下载:http://arxiv.org/abs/2104.13921

参考:CLIP 改进工作串讲(上)【论文精读】_哔哩哔哩_bilibili

ViLD(Open-Vocabulary Object Detection via Vision and Language Konwledge Distillation)相关推荐

  1. Simple Open-Vocabulary Object Detection with Vision Transformers

    Paper name Simple Open-Vocabulary Object Detection with Vision Transformers Paper Reading Note URL: ...

  2. AVOD:Aggregate View Object Detection跑通(官方README小补充)

    本地环境 Ubuntu20.04 + anaconda + tensorflow-gpu1.3.0 + cudatookit8.0 + cudnn6.0 + protobuf3.14.0(protob ...

  3. Shifting More Attention to Video Salient Object Detection (CVPR 2019)

    Shifting More Attention to Video Salient Object Detection 现实生活中缺少一个完善的高质量标注的视频显著性目标检测(video salient ...

  4. 目标检测20年(Object Detection in 20 Years)

    Object Detection in 20 Years: A Survey Zhengxia Zou, Zhenwei Shi, Member, IEEE, Yuhong Guo, and Jiep ...

  5. 【目标检测】论文笔记Arbitrary-Oriented Object Detection with Circular Smooth Label(2020)

    目录 前情提要: 解决方案 Regression-based Rotation Detection Method Boundary Problem of Regression Method Some ...

  6. Open-Vocabulary Object Detection Using Captions论文讲解

    文章目录 一.论文前言 二.提出原因 三.论文的核心 四.论文讲解 4.1 论文流程 4.2 OVD与之前相关的setting 4.3 结果对比 一.论文前言 目标检测是人工智能最突出的应用之一,也是 ...

  7. 【开放域目标检测】一:Open-Vocabulary Object Detection Using Captions论文讲解

    出发点是制定一种更加通用的目标检测问题,目的是借助于大量的image-caption数据来覆盖更多的object concept,使得object detection不再受限于带标注数据的少数类别,从 ...

  8. 同r做一个窗口_目标检测(Object Detection):R-CNN/SPPnet/R-FCN/Yolo/SSD

    这篇文章我是Survey目标检测(Object Detection)系列论文的一个总结. 包括R-CNN系列.SPP-net.R-FCN.YOLO系列.SSD.DenseBox等. 基本概念 目标识别 ...

  9. 论文笔记:CVPR 2022 Cross-Domain Adaptive Teacher for Object Detection

    摘要 我们解决了对象检测中的域适应任务,其中有注释的源域和没有注释的感兴趣的目标域之间存在域间隙(注:在一个数据集上训练模型,再另外一个数据集上进行预测性能下降很大,在一个数据集上训练好的模型无法应用 ...

最新文章

  1. vs2017中报无法打开包括文件: corecrt.h: No such file or directory
  2. Microsoft Visual Studio Learning Pack 自动生成流程图插件(转)
  3. 详解 Weex JS Framework 的编译过程
  4. 信息系统项目管理师 案例1
  5. 一幅图秒懂LoadAverage(转载)
  6. php背景图片 存放位置,CSS中背景图片位置 background-position 的使用方法
  7. 如何解决移动端键盘弹起将底部导航栏顶起
  8. Qt之设置QWidget背景色
  9. iOS把UIImage保存到沙盒目录下以及少盒目录概述
  10. Silverlight 3 OOB 原理
  11. php序列化 java对象,在Java中反序列化一个序列化的php对象
  12. 【动态规划】P1220:区间dp:关路灯
  13. python pip安装
  14. uni-app 开发微信小程序,网络断开,无网络情况,刷新检查,重新加载
  15. 清华姚班毕业生开发新特效编程语言,99行代码实现《冰雪奇缘》
  16. 在ENVI5.3 下基于GLT/IGM文件的几何校正具体过程
  17. CAN总线介绍及硬件设计
  18. 数据库性能优化--超详细
  19. 中级软件设计师刷题笔记
  20. uni-app uni-fab修改图标 浮窗位置 是否展开

热门文章

  1. 每日三省吾身,省什么?
  2. SnnGrow快讯:微软被曝整合ChatGPT进必应向谷歌宣战?、消息称微软将把OpenAI人工智能技术整合至Office:或可编写电子邮件、学校封杀,大厂禁用,ChatGPT引发大面积恐慌?
  3. 爱与灾难·《致我们终将逝去的青春》
  4. Android绘图:360加速球
  5. access自动编号怎么解除_【转】Access中如何设置自动编号字段?
  6. Week2云计算从0到1学习-已脱敏
  7. Windows7 war3宽屏解决方案
  8. 上班[卒]如何面对复杂工作?“精要主义之父” 麦吉沃恩教你轻松工作
  9. js实现网站文本朗读(文字转语音)
  10. 07 基于python实现超级画板(完整的代码+说明文档+可执行程序exe)