视觉定位(visual grounding)是视觉语言的基础任务之一,也是实现人机交互的重点。在这个任务中,机器需要通过人类给予的描述找到图像或三维空间中的物体位置。 基于2D图像的视觉定位任务已在近年来得到了较好的发展,但是基于3D点云的视觉定位任务仍存在着巨大挑战。主要原因是由于三维场景中存在的物体数目往往数倍于图像,并且三维场景往往由3D点云来进行表征,其往往是无序且稀疏的。
[ICCV 2021] InstanceRefer: Cooperative Holistic Understanding for Visual Grounding on Point Clouds through Instance Multi-level Contextual Referring
袁之浩(香港中文大学(深圳)), 颜旭(香港中文大学(深圳)),廖颖泓(香港中文大学(深圳)),张瑞茂(香港中文大学(深圳)),王晟(南方科技大学),李镇(香港中文大学(深圳)),崔曙光(香港中文大学(深圳))
论文链接:https://arxiv.org/pdf/2103.01128.pdf 代码链接:https://github.com/CurryYuan/InstanceRefer
创新点
这篇论文的核心思想是将大型场景中的视觉定位问题转换成一个实例匹配的问题。具体来说,其先通过全景分割和目标类别的筛选等方式选出一些候选物体(candidate),再通过三个子模块分别从物体的属性、与相邻物体的关系以及全局的感知三个方面给每个候选者打分。如此基于实例的定位方式比起先前工作中利用目标检测生成冗余的proposal再进行筛选的方式来说,大大地减少了问题的难度,也提升了该任务正确率的潜在下界。更重要的是,这样的方式充分地利用了全场景的上下文信息。从下图可以看出,在一句输入的语句之中实际上包含了物体的属性信息、与相邻物体的关系信息以及全局的定位信息。而InstanceRefer可以充分利用这三种信息来进行推断。
![image.png]( error&from=paste&height=533&id=u36ea3604&name=image.png&originHeight=737&originWidth=750&originalType=url&ratio=1&rotation=0&showTitle=false&size=665612&status=error&style=none&taskId=u23e62cc5-5d6f-4ee2-ae4e-78e12839795&title=&width=542)
Multi-level contextual referring
2. 相关工作
基于3D场景的视觉定位任务是由ECCV2020的论文ScanRefer [1]首次提出的。该论文提出了一个简单有效的方式。对于一个输入点云和查询语句,ScanRefer先通过GloVe词嵌入和GRU生成语言的特征,再通过VoteNet [2]得到目标检测的proposals。对于每一个proposal,其通过将语言特征拼接到proposal的特征后面,再通过一个MLP去输出每个proposal的打分。然而这样的方式却存在了以下问题:
1 由目标检测提出的proposal的个数往往远远超过场景中存在的实例个数,其导致任务难度加大。
2 其缺少了对相邻物体之间的关系学习,以及物体的整个场景中的定位。
![image.png]( error&from=paste&height=207&id=uf15cd182&name=image.png&originHeight=402&originWidth=1464&originalType=url&ratio=1&rotation=0&showTitle=false&size=526003&status=error&style=none&taskId=u5fb49448-31ef-4a7f-bbf7-453b1d58d87&title=&width=755)
方法描述
Pipeline:InstanceRefer同样使用查询语句(description)和3D点云作为输入,对于查询语句,其使用与[1]一样的方式将其变成语言特征(E),然后其会预测该查询语句想让其定位的物体类别(target prediction)。对于输入点云,其先通过前景分割(panoptic segmentation)将其中的实例物体都提取出来,然后通过上面target prediction所预测的类别筛选出一系列候选物体(candidate)。对于每一个候选物体,都会有三个不同的模块来给它们提取特征,这三个模块分别是属性感知模块(AP module),关系感知模块(RP module)以及全局定位感知模块(GLP module)。最后,三个模块提取的特征会和语言特征一起计算一个置信度,打分最高的物体将会被选出作为输出。下图为InstanceRefer的模型流程图。
![image.png]( error&from=paste&id=uae116213&name=image.png&originHeight=456&originWidth=1458&originalType=url&ratio=1&rotation=0&showTitle=false&size=793876&status=error&style=none&taskId=u5bc98cad-4d71-40d1-abd9-4c7de8cdd4e&title=)
InstanceRefer的模型流程图
下面分别介绍三个感知模块:
AP module:属性感知模块(下图(a))主要用于提取实例的属性相关的信息。考虑到大场景中实例个数较多,InstanceRefer采用速度较快的稀疏卷积(SparseConv [3])来构建一个三层的网络。最后通过一个最大池化层,其得到候选物体的属性特征。
RP module:关系感知模块(下图(b))主要用于提取相邻物体之间的相关关系。具体来说,对于每一个候选物体,InstanceRefer利用k近邻找寻k个最相近的实例作为邻居。然后,其通过构建一张图(graph)并利用图卷积网络,通过物体之间的类别、相对距离等来进行特征的融合,得到候选物体的关系特征。
GLP module:全局感知模块(下图(c))主要用于提取物体在全局的大致位置。具体来说,InstanceRefer先通过SparseConv对整个场景的点云提取特征,并在高度维度进行最大池化,得到一个鸟瞰图特征(BEV features)。然后,其通过将鸟瞰图划分成一个3x3的区域,并结合语言特征预测该物体所处的网格区域。最终,其通过预测的网格位置将鸟瞰图特征插值回物体特征,得到候选物体的全局感知特征。
![image.png]( error&from=paste&height=296&id=u1b328629&name=image.png&originHeight=777&originWidth=1841&originalType=url&ratio=1&rotation=0&showTitle=false&size=841780&status=error&style=none&taskId=u71ce5bff-d365-4a29-87e6-df4450365f1&title=&width=701)
- 实验结果
InstanceRefer在ScanRefer,Nr3D/Sr3D等数据集上达到了最优的效果。其次,在ScanRefer提供的线上测试平台中,InstanceRefer于论文投稿时(2021-03-18)在该排行榜上达到第一名。
![image.png]( error&from=paste&height=262&id=u57da79cf&name=image.png&originHeight=593&originWidth=1244&originalType=url&ratio=1&rotation=0&showTitle=false&size=846100&status=error&style=none&taskId=ub14b192c-5768-4134-ae68-ab40c7aa842&title=&width=549)
![image.png]( error&from=paste&height=243&id=u86f53dfd&name=image.png&originHeight=551&originWidth=1169&originalType=url&ratio=1&rotation=0&showTitle=false&size=67221&status=error&style=none&taskId=u16ec3ffb-009b-41a1-b0c8-984269031e8&title=&width=515)
参考文献
[1] Dave Zhenyu Chen, Angel X Chang, and Matthias Nießner. Scanrefer: 3d object localization in rgb-d scans using natural language. 16th European Conference on Computer Vision (ECCV), 2020.
[2] Charles R Qi, Or Litany, Kaiming He, and Leonidas J Guibas. Deep hough voting for 3d object detection in point clouds. In Int. Conf. Comput. Vis., pages 9277– 9286, 2019.
[3] Benjamin Graham, Martin Engelcke, and Laurens Van Der Maaten. 3d semantic segmentation with submanifold sparse convolutional networks. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 9224–9232, 2018.