2020年以来出现的一些单目视觉3-D目标检测的论文。本文针对部分典型的论文要点进行要点解读,仅供参考。
Towards Generalization Across Depth for Monocular 3D Object Detection
arXiv 1912.08035,v3,4,2020
![图片](https://img-blog.csdnimg.cn/img_convert/d0de328d2bfa9d4a58ddc7cbc3c6d8e9.png)
介绍单步法,MoVi-3D,在训练和测试中,利用几何信息,生成目标外观被距离规范化的虚拟视角。结果是,模型减轻学习深度图特定的表示,复杂度降低。
如图所示:不直接在原图进行检测,而是在虚拟图像,并且距离规范化。
![图片](https://img-blog.csdnimg.cn/img_convert/8b93a4f43e2619c22a9767bffe67af76.png)
如下是单目3D目标检测的示意图:3D边框参数估计
![图片](https://img-blog.csdnimg.cn/img_convert/84b95232149d7461f08d14510ea2ee8d.png)
这样需要阐述的是图像变换如何定义,如图所示是先定义一个3D视角口(3D viewport):和图像平面平行,基于深度而设置。
![图片](https://img-blog.csdnimg.cn/img_convert/af015171d2c490cceafe34fe933b85b1.png)
那么虚拟图像的产生是这样过程:给定使用上述摄像头和视角口捕获的图像,分别计算视角口的左上角和右下角,即(Xv,Yv,Zv)和(Xv + Wv,Yv-Hv,Zv),并将它们投影到相机的图像平面,从而产生 2D视角口的左上角和右下角。将其裁剪并重新缩放为所需的分辨率wv x hv,获取最终输出,即给定3D视角口生成的虚拟图像。
其中视角口的宽度为 (f是焦距,高度是预定义)
![图片](https://img-blog.csdnimg.cn/img_convert/530ead70c02f259b2d93b25eb4248aba.png)
训练过程中虚拟图像的产生过程如图:
![图片](https://img-blog.csdnimg.cn/img_convert/b298716d0d9b1bf2c9c073fcdb550af0.png)
而测试过程的流水线如下:给定图像、深度分辨率Zres和摄像头参数,沿着Z轴每隔Zres/2米设置,产生一系列的3D视角口(Yv = 0),投影到图像平面(如同训练过程),最后的虚拟视图送入模型检测目标。
![图片](https://img-blog.csdnimg.cn/img_convert/4a1b204a31d394036b97ec73682ea734.png)
这里虚拟图像分辨率:
![图片](https://img-blog.csdnimg.cn/img_convert/60f8de7a2e249265d99099b7f0919aeb.png)
其中W是图像宽度。
最后看看MoVi-3D,主干是ResNet34,带FPN,检测头在RetinaNet修改,其架构图如下:
![图片](https://img-blog.csdnimg.cn/img_convert/de03c067f224248e5828d7162e21e8a9.png)
文章定义的参考目标大小是:宽-高-长
-
Car W0 = 1:63m, H0 = 1:53m, D0 = 3:84m,
-
Pedestrian W0 = 0:63m, H0 = 1:77m, D0 = 0:83m
-
Cyclist W0 =0:57m, H0 = 1:73m, D0 = 1:78m
结果比较如下表所示:
![图片](https://img-blog.csdnimg.cn/img_convert/3dab1b902b2d9d5c5739efabae818f5b.png)
![图片](https://img-blog.csdnimg.cn/img_convert/e8f7157f5570b1da0ae0875dd94af14b.png)
![图片](https://img-blog.csdnimg.cn/img_convert/e50d2159b7037d87d1137b7f2dd0f217.png)
RTM3D: Real-time Monocular 3D Detection from Object Keypoints for Autonomous Driving
arXiv 2001.03343,1,2020
![图片](https://img-blog.csdnimg.cn/img_convert/cb324b2622acc6906cca1a86e42782b9.png)
单步法,利用3D边框的9个keypoints图像透视投影预测,以及3D-2D投影的几何关系,来恢复目标的大小、位置、朝向。不过,训练不需要额外的网络或者监督数据。
代码将上线:Banconxuan/RTM3D
如图是该方法的概览:8个框点和1个中心点,预测其图像投影。
![图片](https://img-blog.csdnimg.cn/img_convert/0f561f2d439ce618ecddd4c3537c5840.png)
首先是keypoint 检测网络:主干、keypoint特征金字塔(KFPN)、检测头。基本上是一步法,类似无锚框的架构。输出各个点的热图(9个)。检测头类似CenterNet。
![图片](https://img-blog.csdnimg.cn/img_convert/344ab7f3869f9ebfb176ba4779222e7b.png)
其中KFPN的细节展示:
![图片](https://img-blog.csdnimg.cn/img_convert/35a485ef50e34a3caf206d0aa85f9e82.png)
给定KFPN的keypoint结果,3D边框的估计是如下2Dkeypoint和3D边框投影之间的误差最小优化问题:求解最佳朝向R、位置T和大小D
![图片](https://img-blog.csdnimg.cn/img_convert/7416c1a84d4d6481432dcada5df4b588.png)
其中方差矩阵反应的是热图可信度:
![图片](https://img-blog.csdnimg.cn/img_convert/431f79149a34a220951cabc8f5bd46ec.png)
3D边框的顶点和中心定义为:
![图片](https://img-blog.csdnimg.cn/img_convert/dc0f934efd728f60b5fb4d067f4774b7.png)
3D点的投影则是:
![图片](https://img-blog.csdnimg.cn/img_convert/0190936d683530d5c62a152c38d6b631.png)
实验结果比较如下:
![图片](https://img-blog.csdnimg.cn/img_convert/d8b6954f343893de9e915625ba51d77c.png)
![图片](https://img-blog.csdnimg.cn/img_convert/e835d0a5c7c5b6491808dd9bafd8b5f1.png)
Monocular 3D Detection with Geometric Constraints Embedding and Semi-supervised Training
arXiv 2009.00764,9,2020
是上个方法的改进版,KM3D-Net,提出半监督训练。对同一个未标注图像,两个共享参数的KM3D-Net,不同输入增强和网络正则化条件下,强制实现一个一致性的预测。特别是,统一坐标相关的增强如仿射变换,提出keypoint dropout模块做网络正则化。
![图片](https://img-blog.csdnimg.cn/img_convert/4088965527d5643c447815f2c976c11d.png)
如图是KM3D-Net示意图:基本包括两个部分,一是全卷积网络,输出目标表观相关的特性,如keypoints、目标大小、局部朝向和3D可信度,接着二是几何推理模块,做位置预测的可微分几何一致性约束。
![图片](https://img-blog.csdnimg.cn/img_convert/822b4fb3fee5b11c2828364ef1ec54de.png)
而无监督训练的示意图如下:利用仿射变换和keypoint -dropout。
![图片](https://img-blog.csdnimg.cn/img_convert/cbfed27526a3ad2630f0de0302a65b66.png)
基本思想是用KM3D-Net通过不同的增强和正则化两次评估同一输入图像。无监督损失通过取均方差(MSE损失)来惩罚图像中同一目标的不同估计。输入增强包括两个部分:坐标独立和坐标相关。第一个组件是随机颜色抖动。第二部分包括随机水平翻转、平移和缩放。将这些操作公式化为仿射变换,转换或恢复主要中心点和关键点的坐标。坐标相关的增强以矩阵形式的统一表达可以满足网络的可微分性。
此外,提出用于网络正则化的keypoint dropout方法。在位置预测中随机丢弃关键点。一个关键点可以提供两个几何约束,至少两个关键点可以计算三自由度的位置信息。因此,在计算位置信息时,删除9个关键点的一些是合理的。它有两个好处:1)使模型在预测非丢失关键点时更加准确;2)包含所有关键点的推断具有更强的泛化能力。输入增强和关键点dropout使相同的网络权重在训练步骤中输出一个随机变量。给定相同的输入,它们的差异可视为优化目标。
无监督损失定义为:
![图片](https://img-blog.csdnimg.cn/img_convert/e2d9a68f01f78eb7b7131845e9c68c7f.png)
实验结果比较如下:
![图片](https://img-blog.csdnimg.cn/img_convert/2a201becb79c9b4628ada13ce9ebe44b.png)
![图片](https://img-blog.csdnimg.cn/img_convert/d182afac59cca2b3931a0c705e4697ca.png)
SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation
arXiv 2002.10111, 2, 2020
![图片](https://img-blog.csdnimg.cn/img_convert/5c041a44c4aa27accdd70f29c74887b4.png)
分析2D detection network冗余并且给3D detection带来噪声,故提议SMOKE, 直接结合回归3D变量的keypoint估计预测3D边框。此外,提出一个multi-step disentangling 变换法,改进了收敛性和检测精度。
SMOKE架构如图所示:hierarchical layer fusion network DLA-34做主干,其中类似地采用Deformable Convolution Network (DCN),BatchNorm (BN) 被 GroupNorm (GN)取代。主干从图像提取特征,原始图像下采样1/4,特征图的大小为1:4。两个单独分支连接到特征图,共同执行keypoint分类(粉红色)和3D框回归(绿色)。通过组合来自两个分支的信息来获得3D边框。
![图片](https://img-blog.csdnimg.cn/img_convert/1d56f39a1ac945311e1a2443e392787f.png)
keypoint分类网络:每个目标都由一个特定的关键点表示;关键点不是定义2D边框的中心,而是定义为目标3D中心在图像平面的投影。
3D投影2D图像平面过程:
![图片](https://img-blog.csdnimg.cn/img_convert/582c7c661d2f7ec0684eed40c6ae02aa.png)
如图所示:2D中心(红色)和3D中心投影(橙色)的不同。
![图片](https://img-blog.csdnimg.cn/img_convert/b11aae2e7a4dc237deee9cb73c23f9f8.png)
回归网络:回归分支负责预测3D边框所需的变量,取决于热图的每个关键点;受lifting transform想法(“ROI-10D:Monocular lifting of 2d detection to 6d pose and metric shape”)启发,加入类似操作将投影的3D点转换为3D边框。
3D目标信息编码为:
![图片](https://img-blog.csdnimg.cn/img_convert/84da97959d7a50c2d499197e77cd05ec.png)
目标深度根据预定义尺度和移动参数计算:
![图片](https://img-blog.csdnimg.cn/img_convert/6618df1b98adc823edec1b150f435e2a.png)
由此得到目标位置:
![图片](https://img-blog.csdnimg.cn/img_convert/ccd53cf0d9d79f5f795d5de5960b98c8.png)
事先在整个数据集计算类别平均大小, 然后恢复每个目标大小:
![图片](https://img-blog.csdnimg.cn/img_convert/ac722cbb785771f16baf5427a32ac77c.png)
类似回归的是每个目标的观测角,而不是偏航角。另外,更改相对于目标头alpha x-轴的观察角度,而不是通常使用的相对于目标头alpha z-轴的观察角度值,二者区别如图所示:差90度。
![图片](https://img-blog.csdnimg.cn/img_convert/9a303651be2bb91e2006216f6b89ca0b.png)
偏航角根据观测角和目标位置得到:
![图片](https://img-blog.csdnimg.cn/img_convert/2d674da7d065e4ef40522b02fe73700c.png)
最后3-D边框的8角点计算:
![图片](https://img-blog.csdnimg.cn/img_convert/623e7fc446a31094519682d8ca50a47d.png)
训练的损失函数也是分成两部分:分类和回归(略)。
实验结果比较如下:
![图片](https://img-blog.csdnimg.cn/img_convert/f98b5f0e19c97697c4d957f1508374ae.png)
![图片](https://img-blog.csdnimg.cn/img_convert/f9c177e3b8ea5565b384e695d474dc17.png)
MonoPair: Monocular 3D Object Detection Using Pairwise Spatial Relationships
arXiv 2003.00504, 3, 2020
![图片](https://img-blog.csdnimg.cn/img_convert/24c01b704cb4f9308e3303e3f33536e7.png)
MonoPair考虑成对样本的联系。这样,对部分遮挡目标和其邻域的空间约束进行编码。特别是,计算相邻目标对的目标位置和3D距离的不确定性-觉察(uncertainty-aware)预测,并随后做非线性LS联合优化。这种预测结构和后优化模块能特别地集成在一起提高运行效率。
如图是架构概览图:单目RGB图像作为骨干的输入,在监督下进行训练。具有特征图 W x H x m (64)的11个不同预测分支,分为三个部分:2D检测、3D检测和成对约束预测。输出特征的宽度和高度(W,H)与骨干输出相同。虚线表示神经网络的正向流动。2D检测的热图和偏移量也可用于定位3D目标中心和成对约束keypoint。
![图片](https://img-blog.csdnimg.cn/img_convert/c6364116dc14da5a02df27347d806c43.png)
文章的特征图坐标-3D空间的几何关系如图所示:
![图片](https://img-blog.csdnimg.cn/img_convert/420eac174ee5a936655f3be608188066.png)
2D检测来自CenterNet,3D中心推理来自摄像头内参数K:
![图片](https://img-blog.csdnimg.cn/img_convert/c441f75c247a4dae129b98ea16bd2f1e.png)
成对约束分支是一个回归,其中成对目标约束定义如图:3D距离在不同坐标下的显示。
![图片](https://img-blog.csdnimg.cn/img_convert/0e716d49e6fba94165911db884e4dec6.png)
而成对匹配策略的训练和推理如图所示:
![图片](https://img-blog.csdnimg.cn/img_convert/309ab2bd2b491f5a4d3fc21d37c03b72.png)
对不确定性估计(用于最后联合优化),附加定义一个regression L1 loss:
![图片](https://img-blog.csdnimg.cn/img_convert/0b96d511466ee00a5fff65895d0997f8.png)
最后的后处理是基于图理论的空间约束优化,如图所示:
![图片](https://img-blog.csdnimg.cn/img_convert/486f655ab994521a8a1dfbaf6b95fafd.png)
最后看实验结果比较:
![图片](https://img-blog.csdnimg.cn/img_convert/acfc11bdf25bdb414013d61bafcb2496.png)
![图片](https://img-blog.csdnimg.cn/img_convert/131d3f84066bacc299fd48096080f05f.png)
![图片](https://img-blog.csdnimg.cn/img_convert/a20487b3e9bb4dac080b75d670a142e0.png)
Monocular 3D Object Detection with Decoupled Structured Polygon Estimation and Height-Guided Depth Estimation
arXiv 2002.01619,2,2020
![图片](https://img-blog.csdnimg.cn/img_convert/45aeecf884041e9603542b56ac26d2fd.png)
本文提出一种解耦方法,即分成结构化多边形预测和深度恢复两个任务。这里需要一个先验知识,目标高度和给定的摄像头姿态(内外参数)。还提供有一个BEV细化3D边框的方法。
如图是整个网络框架(Decoupled-3D):stacked hourglass network做2D结构化多边形产生;目标深度估计(高度作为先验知识);BEV特征做3D边框细化。
![图片](https://img-blog.csdnimg.cn/img_convert/2dec6e18a74a1a3d626a0e9cf6bffbc7.png)
这图是结构化多边形估计的部分细节:
![图片](https://img-blog.csdnimg.cn/img_convert/aa4f88080d0edc50b7034e0f2fa47b9f.png)
这是高度指导的深度估计:
![图片](https://img-blog.csdnimg.cn/img_convert/f505b00eea4d05bcd7c071d3443399ae.png)
其中各个顶点的深度表示为:
![图片](https://img-blog.csdnimg.cn/img_convert/c0407c9dcfe791a7fea80848dad66a52.png)
下图是3D框细化示意图:
![图片](https://img-blog.csdnimg.cn/img_convert/9e047f7dbf6921ab0f715ca9e994f1f7.png)
其中深度估计采用Depth Net:DOR (“Deep Ordinal Regression Network for Monocular Depth Estimation“)。
下面是实验结果比较:
![图片](https://img-blog.csdnimg.cn/img_convert/765b76c2de9737fe179df1502afd749a.png)
![图片](https://img-blog.csdnimg.cn/img_convert/3625505d5d52ad14dd79bc34c47625dd.png)
定性结果展示:
![图片](https://img-blog.csdnimg.cn/img_convert/fe29dff2f35c57b432553625580e8f9f.png)
Exploring the Capabilities and Limits of 3D Monocular Object Detection - A Study on Simulation and Real World Data
arXiv 2005.07424,5,2020
![图片](https://img-blog.csdnimg.cn/img_convert/ac4ac742d2b4c652a2a8888776f28d90.png)
有趣的工作:3D 目标检测的深度估计设置比较。采用模拟数据进行比较,也用了一个真实数据。讨论了各种深度估计策略对3D目标检测的影响。
如图就是3种设置:
![图片](https://img-blog.csdnimg.cn/img_convert/5d1696d77509645b99a5e1f60868c740.png)
-
使用2D边框高度和真实世界赛车的已知高度作为几何约束的距离计算,该方法叫做“已知高度假设”。
-
使用监督的DenseDepth网络对整个图像进行深度估计。到每个目标的距离被计算为边框裁剪的深度估计中值。这种方法不需要有关目标的明确知识,例如高度信息。
-
使用自监督的struct2depth网络对整个图像进行深度估计。到每个目标的距离被计算为边框裁剪的深度估计中值。这种方法也不需要有关目标的明确知识,例如高度信息。
这是实验结果比较:
![图片](https://img-blog.csdnimg.cn/img_convert/ec2c5e76cef9f69501b3a548f791df7e.png)
深度网络结果在有限的范围(例如一般的光学印象)在数据集进行泛化。如果更改了相机的固有特性或输入图像的分辨率,则泛化性会进一步降低。这个学习仅在特定条件下有效。当把结果推算到大量训练数据情况,结论是,对于20m距离的近距离场景,使用当前方法可以很好地执行3D目标检测。距离越远,检测性能越差。从理论上讲,通过更高的图像分辨率来补偿,但需要更高的整体数据速率。可选地,组合具有小和宽视野的摄像机,实现在额外期望距离下的精确检测。系统复杂性和包装要求更高。
目前将相机信息与测距传感器(如激光雷达和雷达)融合,似乎仍然是在3D模式下执行目标检测的最有效方法。
Object-Aware Centroid Voting for Monocular 3D Object Detection
arXiv 2007.09836",7,2020
![图片](https://img-blog.csdnimg.cn/img_convert/9258f8d990776a97c6e4b9b16b0d986e.png)
该方法无需学习深度图。2D 边框的格坐标反投到3D空间做3D目标中心提议。加一个object-aware voting和后融合得到3D边框。
如图是架构图:RPN模块提供2D region proposals,3D Center Reasoning (左边) 从2D ROI 格坐标估计多个 3D centroid proposals,接着是Object-Aware Voting (右边)包括 geometric projection distribution (GPD) 和 appearance attention map (AAM),投票 3D centroid proposals 得到3D 位置。另外,2D目标检测头、3D 大小 和 朝向一起估计得到。
![图片](https://img-blog.csdnimg.cn/img_convert/5e0687d6c44143fa6d298dc77f947dd8.png)
对于行车道路上的目标,它们水平放置,没有相对于摄像机的偏航角和俯仰角。此外,每类目标(例如车辆)的3D尺寸方差都非常小。这些约束导致这样的想法,即当物体处于相同深度时,物体在图像上的视在高度近似不变。最近的调查还指出,KITTI数据集上图像目标的位置和表观大小可用于推断深度。
这里目标3D中心近似为
![图片](https://img-blog.csdnimg.cn/img_convert/2a6aac88bdc5b38d1c456542cd3042bb.png)
具体来说,将每个2D区域提议划分为s x s 网格单元,并将网格坐标投影回3D空间。由于每个网格点都给出相应3D目标中心的可能投影,因此获得多个3D中心提议,其中第i个中心提议由下式计算:
![图片](https://img-blog.csdnimg.cn/img_convert/cd53d6600d6a4c3eb33addbbd212e2a7.png)
下图是在Kitti数据训练数据得到的中心偏差统计:
![图片](https://img-blog.csdnimg.cn/img_convert/cf529fe2876838382e138c753b479526.png)
具体而言,使用单个1X1卷积,然后采用S-激活函数,从RoI池化层的特征图生成外观注意图(appearance attention map)。来自图像激活的卷积特征图,通过2D目标检测的分类监督,给出前景语义目标,从而得到对目标-觉察投票(object-ware voting)。
该投票成分来自投影3D中心和2D边框中心之间的偏移分布。已经有证明2D边框中心可以建模为高斯分布,并具有真值期望,为了动态学习该分布,将RoI的2D网格坐标和图像特征连接在一起作为全连接层的输入预测偏移量,以Kullback-Leibler(KL)散度作为损失函数来监督学习,即
![图片](https://img-blog.csdnimg.cn/img_convert/4a48022ea25f13648cf27d748df4629e.png)
其中object-aware voting 定义为:
![图片](https://img-blog.csdnimg.cn/img_convert/2560cff715d01d382e2cd4cae39da1db.png)
在训练中,3D定位流水线的损失函数是:
![图片](https://img-blog.csdnimg.cn/img_convert/a06466c886d4503e881a62edfa244b09.png)
3D 大小的损失函数:
![图片](https://img-blog.csdnimg.cn/img_convert/8f33ae20855387b4934a5082dd434ef7.png)
3D朝向的损失函数:
![图片](https://img-blog.csdnimg.cn/img_convert/3a7b642a62b79570fab075df516e9af0.png)
2D和3D目标检测的联合任务训练损失函数为:
![图片](https://img-blog.csdnimg.cn/img_convert/501800b13f9ecc6dab40aeb580720db5.png)
实验结果比较如下:
![图片](https://img-blog.csdnimg.cn/img_convert/addf6141de1341fc3936ffe8794a0851.png)
![图片](https://img-blog.csdnimg.cn/img_convert/1ec00bfe43431aa2e972a867b087712d.png)
![图片](https://img-blog.csdnimg.cn/img_convert/0a7f0b711081245518bd6c8ddfa02195.png)
定性结果比较:红色: 检测框. 黄色: 真值. 右边小图: birds’ eye view (BEV) 。
![图片](https://img-blog.csdnimg.cn/img_convert/72bd9847b5330cdf4d883247630a983c.png)
未完,待续。。。
作者:黄浴
|关于深延科技|
![图片](https://img-blog.csdnimg.cn/img_convert/30df40c00d3bf4822a51755bdf84e270.gif)
深延科技成立于2018年,是深兰科技(DeepBlue)旗下的子公司,以“人工智能赋能企业与行业”为使命,助力合作伙伴降低成本、提升效率并挖掘更多商业机会,进一步开拓市场,服务民生。公司推出四款平台产品——深延智能数据标注平台、深延AI开发平台、深延自动化机器学习平台、深延AI开放平台,涵盖从数据标注及处理,到模型构建,再到行业应用和解决方案的全流程服务,一站式助力企业“AI”化。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)