论文名称:ScanRefer: 3D Object Localization in RGB-D Scans using Natural Language

这篇文章最主要的工作,我觉得是两个,第一,提出了一个问题;第二,比较简单地解决了这个问题。

Project page: https://daveredrum.github.io/ScanRefer/

3D Visual Grounding

提出这个问题,是这篇文章的核心,也因此,作者在Abstract上方首先插入了一张图:

他说,我们“introduce”一个task,我其实也是第一次读这类挖大坑的文章,很有意思,毕竟只有这种刚开始起步的方向,我才会专门去找一下开头读一读。开篇讲了3D Visual Grounding到底是在做什么,与2d有什么区别,很清晰。

然后他还说:

ScanReferDataSet

挖坑之作,提出问题,你要解决问题,当然需要与这个问题相关的数据集,那你挖的坑,当然你也要给出一个数据集。

这个领域的数据集重点就在于文本和场景的匹配了,而不是场景的采集,因此这个数据集是基于ScanNet数据集来做的(一个1613个RGBD室内场景的数据集)。有了场景,我们就要对场景中的object进行label了,因为是自然语言做label,所以这部分必然逃不过人工,做不到完全的自动化。作者团队做了一个网站,然后请了一批人(好像是大学生志愿者)来作标定,首先是做标注,就是给你一个场景,然后给你标出这个场景的某个物体,要求你用自然语言描述这个物体的位置(或者物体本身的特征),你的描述最终必须指向这个特定的物体。等这批人标记完成之后,再选另外一批人来验证这些标记,即看看他们的表述是否真的唯一地指向空间中的某个场景,同时要检查表述中是否有错误拼写啊,错误的语法啊之类的。

文章的补充材料里把他们的UI还做了个好多截图贴进来:

我也是第一次读这种做一个数据集的文章,讲道理,数据集构建占了相当大的篇幅,包括各种角度的数据分布,数据集采集过程,谁采集的,采集后验证过程修改了多少错误单词和错误表述等等,十分详细。

只不过这个数据集好像不如ReferIt3D数据集更被大家接受?还不知道为何,走走看。哦对咱也不知道为什么有了ScanRefer,ReferIt3D还要花心思再去构建一个新的数据集,偶不,两个。

Method

这个模型,怎么说呢,复杂也不是很复杂,但是作为一个双模态的任务肯定也简单不了,我们可以看一下。

文本编码器

首先,text先进入GloVe模型(应该是被预训练好的模型,和Word2Vec是同一类很火的专门做词向量的模型)得到这个表述的Embedding,然后送入GRU(一种类似LSTM但是比LSTM的性能好的网络)得到语言特征,后面加了一个文本分类器,其实就是对提取到的语言特征进行分类,看看能不能找到它指向的类别,这里做了一个Loss,算是对GRU的一个有监督的强化。(这个东西其实MVT也有,我还以为那是MVT作者干的,没想到这玩意在开山之作里面就已经出现了。。。)

点云编码器+目标检测器

没啥可说的,PointNet++提取点云特征,利用Voting Module来做目标检测?这个地方的子论文没读,做完目标检测,得到M个点云簇(原作者M设置的是256),然后再对256个box(或者叫proposal更合适)进行mask。

模态融合器

所谓的模态融合大家也看到了,就是简单粗暴的concat起来,很naive,但是确实也无所谓,这不是这篇工作的重点了已经。对concat之后的高维矩阵进行mask,直接把mask矩阵(向量)广播成融合后数据的形状,直接乘过来,0的地方就被mask掉了,方便,粗暴,就得到了融合后的features。

定位器

所谓的定位部分也非常简单,就是一点FC,然后过一个Softmax,把得分最高的proposal选出来,就算是完成了定位。

可以看到,整个模型是非常简单甚至有些naive的,发展空间很大。

实验部分

讲道理,他这个表格和表述我看的不是很懂,一方面是可能我第一次看这类文章很不适应,另一方面是这里面涉及到的工作我都不了解。

大概就是,每一组,上面是baseline,下面是他们的东西?不太理解,而且他们为什么要强调自己end to end?看得有点蒙。

而且用GT box我觉得属实是有点在玩的感觉了……我没找到这个比较的意义……

但是可能这也不是重点吧,重点可能是:

[3] ScanRefer论文精读 3DVisual Grounding开山之作的更多相关文章

  1. 【深度学习 论文篇 02-1 】YOLOv1论文精读

    原论文链接:https://gitee.com/shaoxuxu/DeepLearning_PaperNotes/blob/master/YOLOv1.pdf 笔记版论文链接:https://gite ...

  2. 这部分布式事务开山之作,凭啥第一天预售就拿下当当新书榜No.1?

    大家好,我是冰河~~ 今天,咱们就暂时不聊[精通高并发系列]了,今天插播一下分布式事务,为啥?因为冰河联合猫大人共同创作的分布式事务领域的开山之作--<深入理解分布式事务:原理与实战>一书 ...

  3. 用深度学习(DNN)构建推荐系统 - Deep Neural Networks for YouTube Recommendations论文精读

    虽然国内必须FQ才能登录YouTube,但想必大家都知道这个网站.基本上算是世界范围内视频领域的最大的网站了,坐拥10亿量级的用户,网站内的视频推荐自然是一个非常重要的功能.本文就focus在YouT ...

  4. 【DL论文精读笔记】Object Detection in 20 Y ears: A Survey目标检测综述

    目标检测20年综述(2019) 摘要 Abstract 该综述涵盖了400篇目标检测文章,时间跨度将近四分之一世纪.包括目标检测历史上的里程碑检测器.数据集.衡量指标.基本搭建模块.加速技术,最近的s ...

  5. AFM论文精读

    深度学习在推荐系统的应用(二)中AFM的简单回顾 AFM模型(Attentional Factorization Machine) 模型原始论文 Attentional Factorization M ...

  6. Faster-RCNN论文精读

    State-of-the-art object detection networks depend on region proposal algorithms to hypothesize objec ...

  7. 论文翻译——R-CNN(目标检测开山之作)

    R-CNN论文翻译 <Rich feature hierarchies for accurate object detection and semantic segmentation> 用 ...

  8. 【DL论文精读笔记】 深度压缩

    深度压缩 DEEP COMPRESSION: COMPRESSING DEEP NEURAL NETWORKS WITH PRUNING, TRAINED QUANTIZATION AND HUFFM ...

  9. 【DL论文精读笔记】Image Segmentation Using Deep Learning: A Survey 图像分割综述

    深度学习图像分割综述 Image Segmentation Using Deep Learning: A Survey 原文连接:https://arxiv.org/pdf/2001.05566.pd ...

  10. DeepWalk论文精读:(3)实验

    模块三 1 实验设计 1.1 数据集 BLOGCATALOG[39]:博客作者网络.标签为作者感兴趣的主题. FLICKR[39]:照片分享网站的用户网络.标签为用户的兴趣群组,如"黑白照片 ...

随机推荐

  1. concurrent.futures之ThreadPoolExecutor python线程池代码实现方法

    from concurrent.futures import ThreadPoolExecutor def main(i): print(i) THREAD_NUM = 20 # 线程数 with T ...

  2. uniapp 分享 绘制海报

    小程序分享海报,由于微信的限制,暂时无法直接分享小程序到朋友圈(虽然微信开发者工具基础库从2.11.3开始支持分享小程序到朋友圈,但目前仍处于Beta中)所以生成海报仍然还是主流方式 主体思路:将设计 ...

  3. aop中的名词解释

    aop中的名词解释 aop spring Joinpoint(连接点) 目标对象中所有可以增强的方法叫做连接点 Pointcut(切入点) 目标对象中要增强的的方法 Advice(通知/增强) 增强的 ...

  4. 「SHOI2015」脑洞治疗仪

    \(\text{Naive Solition}\) 当然是 \(ODT\) 暴力啦 \(Luogu\) 煞费苦心加强了数据,于是就过不了了... 不过 \(LibreOJ\) 上可以过 #includ ...

  5. python flask后端request获取参数的几种方式整理

    最近用 flask 写后端,将获取访问参数的几种方式总结整理一下,仅供参考 从 postman 上来看,调用后端接口传参的方式有两种,一种是 params,参数是以?a=x&b=y 的形式显示 ...

  6. K8S 1.20 弃用 Docker 评估之 Docker CLI 的替代产品 nerdctl

    背景 2020 年 12 月初,Kubernetes 在其最新的 Changelog 中宣布,自 Kubernetes 1.20 之后将弃用 Docker 作为容器运行时. 弃用 Docker 带来的 ...

  7. LeetCode-622 设计循环队列

    来源:力扣(LeetCode)链接:https://leetcode.cn/problems/design-circular-queue 题目描述 设计你的循环队列实现. 循环队列是一种线性数据结构, ...

  8. CRM管理系统界面

  9. Xilinx XPM使用说明--XPM_MEMORY_SDPRAM

    XPM_MEMORY_SDPRAM 参数化宏:简单的双端口RAM 介绍 此宏用于实例化简单双端口RAM.端口A用于从存储器执行写入操作,端口B可用于从存储器读取. 下面介绍XPM_MEMORY实例的基 ...

  10. android webview与js简单的交互方案

    最近研究webview与js交互,看了几个开源库实现,感觉不尽如人意,存在主要问题是,耦合较高,使用不够简洁,后来参考Uri设定规则,格局Uri类似协议自定义了类似的js交互协议 比较简洁,自定义协议 ...