资讯详情

IMVoxelNet翻译

摘要

本文将基于 RGB 的多视图 3D 对象检测任务介绍端到端优化。 为了解决这个问题,我们提出了这个问题 ImVoxelNet,这是基于单目或多视图的 RGB 图像的 3D 对象检测新型全卷积法。 在训练和推理过程中,每个多视图输入中的单目图像数量可能会发生变化; 事实上,这个数字可能是每个多视图输入中唯一的。 ImVoxelNet 室内外场景处理成功,使其通用。 具体来说,它在接受 RGB 在图像的所有方法中, KITTI(单目)和 nuScenes(多视图)基准测试取得了最先进的汽车测试结果。 另外,它超越了 SUN RGB-D 现有的基于数据集 RGB 的 3D 对象检测方法。 在 ScanNet 上,ImVoxelNet 为多视图 3D 对象检测设置了新的基准。 训练后的源代码和模型可以从 https://github.com/saic-vul/imvoxelnet 获得。

引言

RGB 图像是一个经济实惠的通用数据源; 因此,近年来,基础 RGB 的 3D 积极研究对象检测。 RGB 图像为场景及其对象提供视觉线索,但不包括场景几何形状和数据绝对比例的清晰信息。 因此,从 RGB 图像中检测 3D 对象是一项不适定的任务。 给定基于深度学习的单目图像 3D 对象检测方法只能推断数据的规模。 此外,场景几何不能从 RGB 导出图像,因为有些区域可能看不见。 但是,单目 RGB 与图像相比,使用多个姿势图像可能有助于获景的信息。 因此,一些 3D 对象检测方法 [35, 33] 操作多视图推理。 这些方法独立获得每个单目 RGB 图像预测,然后聚合门预测。 相比之下,我们不仅用多视图输入推理,还用于训练。 在训练和推理过程中,提出的方法接受具有任何数量视图的多视图输入; 这个数字可能是每个多视图输入中唯一的。 另外,我们的方法可以接受有姿势的单眼输入(作为多视图输入的特例)。 此外,它在单目基准测试中的表现出奇的好。 所有基于 RGB 的 3D 对象检测方法设计为室内或室外,并在某些场景和对象的假设下工作。 例如,通常在汽车上评估户外方法。 一般来说,汽车大小相似,位于地面上,鸟瞰图上 (BEV) 上面的投影不相交。 因此,BEV 平面投影包含有关汽车 3D 大量位置信息。 因此,室外 3D 物体检测的常用方法是点云中 3D 物体检测简化为 BEV 平面中的 2D 物体检测。 同时,室内物体可能有不同的高度,随机位于空间中,因此它们在地板平面上的投影几乎无法提供 3D 位置信息。 总的来说,基于 RGB 的 3D 对象检测方法的设计往往是特定领域。 为了从多个输入中积累信息,我们建立了信息 3D 体素表示空间。 我们使用这种统一的方法来检测室内外场景中的物体:我们只在室内外头部之间进行选择,元架构保持不变。 在提出的方法中,最终预测是从 3D 获得的特征图对应于基于点云的检测问题的公式化。 在此基础上,我们不需要修改基于点云的对象检测器的现成颈部和头部。 我们的贡献有三个方面: ? 据我们所知,我们是第一个 RGB 图像多视图 3D 对象检测制定端到端训练任务。 ? 我们提出了一种新颖的全卷积 3D 对象检测器可用于单眼和多视图设置。 ? 利用特定领域的头,提出的方法在室内外数据集中都取得了最先进的效果。

相关工作

许多场景理解方法接受多视图输入。 例如,在给定多视图输入的情况下,只能解决某些场景理解子任务。 例如,SLAM 任务意味着重建 3D 场景几何形状,估计给定帧序列的相机姿势。 Structure-from-Motion (SfM) 该方法旨在从一组无序的图像中估计相机的姿势和内部特征,多视图三维 (MVS) 方法使用 SfM 输出来构建 3D 点云。 其它场景理解子任务可以重新表达为多视图。 最近提出了几种使用多视图输入来解决这些任务的方法。 例如,3D-SIS [13] 基于一组 RGB-D 输入执行 3D 实例分割。 MVPointNet [17] 使用多视图 RGB-D 输入进行 3D 语义分割。 Atlas [26] 处理多个单目 RGB 图像以联合执行 3D 语义分割和 TSDF 重建。 。 点云是三维的,所以使用 3D 检测卷积网络似乎很自然。 然而,这种方法需要详细的计算,这将导致对大型户外场景的推理缓慢。 最近的户外方法 [39, 19] 通过将 3D 点云投影到 BEV 平面可以减少运行时间。 点云处理的常见做法是将点云细分为体素。 BEV 平面投影意味着每个垂直列中的所有元素都应该编码成固定长度的特征图。 然后,伪图像可以传递给 2D 对象检测网络以获得最终预测。 室内目标检测方法是在点云中生成每个点。 然而,有些室内物体不是凸面,所以室内物体的几何中心可能不属于物体(例如,桌子或椅子的中心可能在腿之间)。 因此,单个中心点给出的对象提议可能无关紧要,因此室内方法采用深度霍夫投票生成提议 [29, 30, 41]。 。 尽管接受多个图像,但基于立体的方法不能被视为多视图。 相比之下,多视图方法可以处理任何数量的输入。 此外,对于多视图输入,相机姿势可能是任意的,而对于三维输入,两个相机之间的相对变化是准确和已知的,并且在记录时保持固定。 这使得通过估计左右图像之间的光流来实现三维重建成为可能。 例如,立体假设严重依赖于立体假设。 例如,3DOP [6] 对象提议是通过立体重建生成的 TLNet [32] 通过独立合并左右图像获得运行三角剖分的建议。 Stereo R-CNN [21] 在给定左右图像的情况下生成对象提议,然后通过三角测量关键点来估计对象位置。 。 Mono3D [7] 复杂的能量函数聚合线索通过语义地图、对象的可见轮廓和位置先验生成 3D 锚点。 Deep3DBox [25] 从离散化的角度来估计每个对象的方向 2D 和 3D 导出边界框之间的约束 3D 姿态。 MonoGRNet [31] 将 3D 对象检测问题分为子任务,即对象距离估计、对象位置估计和对象角度估计。 这些子任务由单独的网络解决,先分阶段训练,再一起完善 3D 边界框。 其它方法,如 [4, 14, 27],利用 2D 检测和从 2D 到 3D 提升信息。 [15, 14, 27] 使用回归对象的姿势 3D 分支扩展 2D 检测网络。 例如,使用外部数据源的方法,DeepMANTA [4] 用迭代粗到细算法生成 2D 建议选择对象 CAD 模型。 3D-RCNN [18] 还执行 2D 检测并将输出与 3D 模型匹配。 然后,它使用渲染和比较来恢复对象的形状和姿势。 单目室内 3D 物体检测是一个很少探索的问题,只有 SUN RGB-D [37] 基准存在。 该基准意味着室内 3D 对象检测是理解整个场景的子任务。 除了检测 3D [15, 14, 27] 估计相机的姿势和房间布局。 最近的 Total3DUnderstanding [27] 考虑对象之间的关系,使用注意机制重建对象网格。 一些户外 3D 对象检测方法 [35, 33] 在 nuScenes [3] 数据集上的多视图输入上进行评估。 具体来说,这些方法适用于每个单目 RGB 推断图像,然后聚合输出。 聚合是管道不可避免的一部分; 然而,在最新阶段这样做是有争议的,因为空间信息可能不会尽可能有效地使用。 因此,现有的方法没有给出多种方法 RGB 图像的 3D 对象检测制定为端到端优化。

方法

我们的方法接受任何大小的一组 RGB 输入和相机姿势。 首先,我们使用它 2D 卷积主干从给定图像中提取特征。 然后,我们投影图像特征 3D 体素体积。 对于每个体素,来自多个图像的投影特征通过简单的元素平均聚合。 其次,具有指定特征的体质体积被传递到颈部 3D 卷积网络。 颈部输出作为最后几个卷积层(头)的输入,预测每个锚的边界框特征。 边界框参数化为 (x, y, z, w, h, l, θ),其中 (x, y, z) 是中心坐标,w, h, l 宽度、高度和 长度,θ 是绕 z 轴的旋转角度。 提出方法的一般方案如图所示 1 所示。 2D 特征投影和 3D 颈部网络已经存在 [26, 13] 中提出。 首先,让我们简要总结一下这些步骤。 然后,我们介绍了一种专为室内检测而设计的新型多尺度 3D 头部。 让我看看∈ rw×H×3是一组t图像中的第t个图像。多视图输入,T>1.输入单视图,T=1。[26]之后,我们首先使用预训练2D背骨从传输输入中提取2D特征。它输出四种形状W 4×4×c 0的特征图,hwh×h8×2c0、w16×16×4c0和32×32×8c0。我们通过特色金字塔网络H(FPN)该网络输出的特征映射形状为W4×4×C1的张量Ft。 c0和c1是骨干网独有的;实际值见4.2。 对于第t输入,提取二维特征F t然后投影到三维体素体积V t中∈ rnx×ny×nz×c1。 我们将z轴设置为垂直于地板平面,x轴向前,y轴与x轴和z轴正交。在[41、19、26]中,对于每个数据集,所有三个轴都有已知的空间限制。让我们把这些极限表x min,x max,y min,y max,z min,z max。固定体素大小s,空间约束可以表示为N x s=x max?x最小值,N y s=y最大值? y最小值,N z s=z最大值? 兹敏。我们使用针孔相机模型来确定特征地图F t二维坐标(u,v)和体积v t中间的三维坐标(x,y,z)对应关系: 公式 其中K和rt是本征矩阵和外征矩阵,∏是透视映射。投影二维特征后,所有沿着相机光线的元素都会填充相同的特征。我们还定义了一个和VT形状相的二元掩模mt,它指示每个体素是否在相机3内。提出的方法我们的方法接受任意大小的RGB输入和相机姿态。首先,我们使用二维卷积主干从给定的图像中提取特征。 然后,我们将获得的图像特征投影到三维体素体。对于每个体素,来自多个图像的投影特征通过简单的元素平均进行聚合。 接下来,将具有指定特征的体素体积传递到称为颈部的三维卷积网络。颈部的输出作为最后几个卷积层(头部)的输入,预测每个锚点的边界框特征。生成的边界框参数化为(x,y,z,w,h,l,θ),其中(x,y,z)是中心坐标,w,h,l是宽度、高度和长度,θ是围绕z轴的旋转角度。所提出方法的总体方案如图1所示。 [26,13]中提出了二维特征投影和三维颈部网络。首先,我们简要概述这些步骤。 然后,我们介绍了一种用于室内检测的新型多尺度三维头。 3平截头体。因此,对于每个图像it,掩码mt被定义为: 公式 室内的在[26,13]之后,我们将体素体积V通过3D卷积编码器-解码器网络来细化特征。对于室内场景,我们使用[26]中的编码器架构。然而,由于超过48个三维卷积层,原始网络计算量大,推理速度慢。为了获得更好的性能,我们通过减少耗时的三维卷积层的数量来简化网络。简化编码器只有三个下采样剩余块,每个块有三个三维卷积层。简化的解码器由三个上采样块组成,每个上采样块由一个转置的三维卷积层组成,该层的步长为2,然后是另一个三维卷积层。 解码器分支输出以下形状的三个特征映射:n4x×4y×n4z×c2、n2x×2y×n2 z×c2和nx×ny×nz×c2。有关C2的实际值,请参见4.2。 的室外方法[36、19、39]将三维空间中的三维对象检测减少为BEV平面中的二维对象检测。在这些方法中,颈部和头部都由二维卷积组成。户外头部接受2D特征贴图,因此我们应该获得构造的3D体素体积的2D表示,以便在我们的方法中使用。为了做到这一点,我们使用了[26]中编码器-解码器体系结构的编码器部分。通过该编码器的几个三维卷积和下采样层后,形状为nx×ny×nz×c1的体素体积V被映射到形状为nx×ny×c2的张量。 ImVoxelNet构建空间的三维体素表示;因此,它可以使用基于点云的头部三维目标检测方法。因此,耗时的定制体系结构实现,可以采用最先进的方法,无需修改。 然而,室外[19,39]和室内[29,30]方法的头部设计存在显著差异。 我们按照通常的做法,将室外三维目标检测转换为BEV平面上的二维目标检测。我们使用的2D锚头在KITTI[11]和nuScenes[3]数据集上似乎是有效的[19,39]。 由于室外3D检测方法是在汽车上进行评估的,因此所有物体都具有相似的比例,属于同一类别。对于单尺度和单类检测,头部由两个平行的二维卷积层组成。一层估计类概率,而另一层回归边界框的七个参数。 输入输入是nx×ny×c2形状的张量。 输出对于每个2D BEV锚定,头部返回一个类概率p和一个作为7元组的3D边界框: 公式 这里的·gt和·a分别是地面真相和锚箱。边界框对角线的长度da=q22(wa)+(la)。z a对于所有锚来说都是常数,因为它们位于BEV平面中。 丧失我们使用第二个[39]中介绍的损失函数。室外总损失由几个损失项组成,即作为位置损失L loc的平滑平均绝对误差、分类L cls的焦点损失和方向L dir的交叉熵损失。总的来说,我们可以将室外损耗计算为 所有现代室内3D对象检测方法[29,30,41]都对稀疏点云表示执行深霍夫投票。相反,我们遵循[26,13],使用中间特征的密集体素表示。据我们所知,没有密集的三维多尺度头用于三维目标检测。受二维检测方法FCOS的启发,我们构建了这样一个头部[38]。原始FCOS头部接受来自FPN的二维特征并估计二维边界盒通过二维卷积层。为了使FCOS适应3D检测,我们用3D卷积代替2D卷积来处理3D输入。按照FCOS和ATSS[40],我们应用中心采样来选择候选对象位置。在这些工作中,选择了9(3×3)名候选人;由于我们在3D空间中操作,因此我们将每个对象的候选位置限制为27个(3×3×3)。生成的头部由三个三维卷积层组成,分别用于分类、位置和中心,权重在所有对象比例中共享。 多尺度输入由形状为n4x×4y×n4z×c2、n2×2y×n2 z×c2和nx×ny×nz×c2的三个张量nn组成。 对于每个3D位置(x a、y a、z a)和三个比例中的每一个,头部将类概率p、中心度c和3D边界框估计为7元组: 公式 这里,x gt min、x max、y min、y max、z min、z max表示沿地面真值边界框轴的最小和最大坐标。 我们调整了原始FCO中使用的损失函数[38]。它包括分类L cls的焦点损失、中心度L cntr的交叉熵损失和位置L loc的IoU损失。由于我们处理的是3D检测任务而不是2D检测任务,因此我们将2D IoU丢失替换为旋转3D IoU丢失[42]。此外,我们用第三维度更新了地面真相中心。由此产生的室内损失可以写成 公式 在一些室内基准测试中,三维目标检测任务被描述为场景理解的子任务。因此,评估协议意味着解决各种场景理解任务,而不仅仅是估计三维边界框。在[15,14,27]之后,我们预测摄像机旋转和房间布局。与[27]类似,我们添加了一个用于联合R t和3D布局估算的简单头部。这个额外的头部由两个平行的分支组成:两个完全连接的层输出房间布局和另外两个完全连接的层估计相机旋转。 输入是一个8c0形状的单张量,通过主干输出的全局平均池获得。 头部将相机姿态输出为俯仰β和滚动γ的元组,将3D布局框输出为7元组(x,y,z,w,l,h,θ)。如[27]所述,我们将偏航角和偏移设置为零。 我们修改了[27]中使用的损耗,使其与用于训练探测头的损耗一致。因此,我们将布局损失L布局定义为预测和地面真实布局框之间的旋转3D IoU损失;这与我们在3.3中使用的损耗相同。2.对于摄像机旋转估计,我们使用L姿态=| sin(βgt− β) |+| sin(γgt− γ) |类似于3.3。1.总体而言,额外损失可表述为: 公式

4实验

我们在四个数据集上评估了所提出的方法:室内 ScanNet [9] 和 SUN RGB-D [37],以及室外 KITTI [11] 和 nuScenes [3]。 SUN RGB-D 和 KITTI 在单目模式下进行基准测试,而对于 ScanNet 和 nuScenes,我们解决了多视图公式中的检测问题。 。 KITTI 物体检测数据集 [11] 是单目 3D 物体检测最具决定性的室外基准。 它由 3711 张训练图像、3768 张验证图像和 7518 张测试图像组成。 通常的做法 [35, 23] 是报告验证子集的结果并将测试预测提交到开放的排行榜。 所有 3D 对象注释都有一个难度级别:简单、中等和困难。 根据测试集中中等对象的结果评估 3D 对象检测方法。 根据 [35, 23],我们仅在汽车类别的对象上评估我们的方法。 。 nuScenes 数据集 [3] 为开发解决自动驾驶相关任务的算法提供数据。 它包含 LiDAR 点云、六个摄像头捕获的 RGB 图像,以及 IMU 和 GPS 测量。 该数据集涵盖 1000 个视频序列,每个序列记录 20 秒,总计 140 万张图像和 390 000 个点云。 训练拆分包含 28 130 个场景,验证拆分包含 6019 个场景。 注释包含 140 万个对象,分为 23 个类别。 继 [35] 之后,3D 检测的精度仅在汽车类别上进行测量。 在此基准测试中,不仅计算平均精度 (AP) 指标,还计算平均平移误差 (ATE)、平均比例误差 (ASE) 和平均方向误差 (AOE)。 。 SUN RGB-D [37] 是第一个也是最著名的室内 3D 数据集之一。 它包含在各种室内场所拍摄的 10 335 张图像以及使用四种不同传感器和相机姿势获得的相应深度图。 训练分割由 5285 帧组成,其余 5050 帧组成验证子集。 注释包括 58 657 个对象。 对于每个框架,都提供了房间布局。 。 ScanNet 数据集 [9] 包含 1513 次扫描,涵盖 700 多个独特的室内场景,其中 1201 次扫描属于训练拆分,312 次扫描用于验证。 总体而言,该数据集包含超过 250 万张具有相应深度图和相机姿势的图像,以及具有 3D 语义注释的重建点云。 我们按照标准协议 [29] 从语义点云中估计 3D 边界框。 生成的对象边界框是轴对齐的,因此我们不预测 ScanNet 的旋转角度 θ。 。 我们使用 ResNet-50 [12] 作为特征提取器。 因此,第一个卷积块 c 0 中的卷积数等于 256。我们将 3D 体积特征大小 c 1 和输出特征大小 c 2 都设置为 256,如 [19, 39] 中所提出的。 室内外场景具有不同的绝对尺度。 因此,我们考虑数据域为每个数据集选择特征量的空间大小。 我们使用之前工作中提供的值 [26, 19, 39, 36],如表所示。 1. 因此,使用 [19, 36] 中 3D 头部的锚点设置,我们将室外数据集的体素大小 s 设置为 0.32 米。 室外数据集所有三个轴的最小值和最大值也遵循 [19, 36] 中汽车类别的点云范围。 为了选择室内数据集约束,我们遵循 [26],其中房间大小为 6.4 × 6.4 × 2.56 米。 唯一的变化是我们将体素大小 s 从 0.04 增加到 0.16 以提高内存效率。 。 在训练期间,除非另有说明,否则我们会针对室内数据集优化 L 室内数据集和针对室外数据集优化 L 室外数据集。 我们使用 Adam 优化器,初始学习率设置为 0.0001,权重衰减为 0.0001。 该实现基于 MMDetection 框架 [5],并使用其默认训练设置。 网络训练了 12 个 epoch,第 8 和第 11 个 epoch 后学习率降低了 10 倍。 对于 ScanNet、SUN RGB-D 和 KITTI,网络在每个训练时期看到每个场景 3 次。 我们使用 8 个 Nvidia Tesla P40 GPU 进行训练,每个 GPU 分配一个场景(多视图场景)或四张图像(单目场景)。 我们在单目实验中随机应用水平翻转和调整大小输入不超过其原始分辨率的 25%。 此外,在室内场景中,我们可以增强类似于基于点云的方法的 3D 体素表示,因此我们沿每个轴随机移动体素网格中心最多 1m。 。 在推理过程中,使用旋转 NMS 算法过滤输出,该算法应用于对象投影到地平面上。 首先,我们报告了在户外KITTI和nuScenes基准上检测汽车的结果。然后,我们讨论了SUN RGB-D和ScanNet室内数据集上的多类3D目标检测结果。 。我们在表中给出了KITTI上单目车辆检测的结果。2.ImVoxelNet在测试分割中实现了最佳的中等AP,这是KITTI基准中的主要指标。此外,对于简单物体,我们的方法在6%的AP 3D和4%的AP BEV方面超过了以前的最新水平。总的来说,ImVoxelNet在测试和val分割的几乎所有指标方面都具有优势。 。对于nuScenes,与其他仅对来自6台机载摄像机的图像进行推断的方法不同,ImVoxelNet使用多视图输入进行训练。如选项卡中所示。3,所提出的方法比MonoDIS[35]的性能好1%以上的平均AP,这是主要指标。根据AP@0.5与MonoDIS相比,ImVoxelNet输出的高精度估计几乎是MonoDIS的两倍。对于车辆检测,当中心距离超过1米时,两个框的IoU=0。那么,,AP@1.0m, AP@2.0m和AP@4.0m可能为非相交边界框计算,这似乎违反直觉(例如,对于KITTI数据集,只有IoU>0.7的框才被视为真正)。因此,我们认为AP@0.5是最具决定性的指标。 此外,我们报告了ATE、ASE和AOE指标的值。如选项卡中所示。3、ImVoxelNet比其他单目方法的ATE至少小0.09米。 。我们将ImVoxelNet与现有的[27]中介绍的最新单眼基准上的方法,包括NYU-37类别的物体[34]。由于选择的基准意味着估计摄像机姿势和布局,我们优化了L室内+L额外训练。为了与Total3DUnderstanding[27]进行公平比较,我们报告了他们的结果,而无需联合训练,因为这需要额外的网格注释数据集。标签。4表明ImVoxelNet在地图方面超过了所有以前的方法,超过了18%。此外,ImVoxelNet在布局和相机姿态估计方面都优于Total3DUnderstanding。我们还报告了其他基准的指标:具有30个对象类别的PerspectiveNet[16]基准,以及具有10个类别的VoteNet[29]基准,这些基准由基于点云的方法使用(见A)。 。我们将ImVoxelNet与现有的方法进行比较n具有18个类的通用基准。在训练期间,我们按照[26]中的建议,每个场景使用T=50个图像。我们进行了一项消融研究,以选择每个场景的最佳测试图像数量(表6)。我们对每个测试图像的不同样本运行我们的方法五次,并报告0.95置信区间的平均结果。实验表明,每个测试场景的图像越多越好。管道中最耗时的部分是使用3D卷积处理体素体积,而提取2D特征的开销较小。因此,随着每个场景的测试图像数量的增加,运行时呈次线性增长。 根据Tab。5,尽管没有使用点云,ImVoxelNet仍然显示出竞争性的结果。值得注意的是,它超越了-形成基于点云的3D-SIS[13],该3D-SIS使用RGB图像作为附加模态构建体素体积表示。 我们在KITTI数据集的选项卡中报告推断时间。7.所有方法都在同一个GPU上的相同实验装置中进行了检查。ImVoxelNet使用计算代价高昂的三维卷积,因此预计其速度将低于仅依赖二维卷积的方法。在我们的实验中,ImVoxelNet在速度上似乎不如所列的大多数方法,但运行时间在一个数量级内有所不同。列出的方法使用不同的主干,这会影响总速度。在ImVoxelNet中,与使用三维卷积处理体素体积相比,使用主干提取特征是一个简单、轻量级的过程。因此,主干网的选择可以忽略不计:实验表明,用更轻量级的版本取代ResNet-50

结论

在本文中,我们将基于RGB的多视图三维目标检测作为一个端到端优化问题。为了解决这个问题,我们提出了ImVoxelNet,这是一种新的基于单目或多视角RGB输入的全卷积3D目标检测方法。在训练和推理过程中,ImVoxelNet接受具有任意数量视图的多视图输入。 此外,我们的方法可以接受单目输入(视为多视图输入的特例)。该方法在单目KITTI基准和多视点nuScenes基准上都取得了最新的室外车辆检测结果。此外,它还超越了现有的基于室内太阳RGB-D数据集的三维目标检测方法。对于ScanNet数据集,ImVoxelNet为室内多视图3D对象检测设置了新的基准。总的来说,ImVoxelNet成功地处理了室内和室外数据,这使得它具有通用性。

标签: h8a传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台