资讯详情

三维物体检测三大技术路线全解析:激光雷达、相机与多模态融合

📅 2026/9/19 21:59:48 | 华诺云谱 👁 阅读
三维物体检测三大技术路线全解析:激光雷达、相机与多模态融合
1. 为什么这篇综述值得每一个做感知的人逐页精读做自动驾驶感知这行的朋友应该都有体会最近两三年三维物体检测的论文数量几乎是爆炸式增长光arXiv上每天新挂出来的相关预印本就能刷好几页。但问题也随之而来方向太散、术语不统一、数据集和评价指标各说各话想系统性地搞清楚基于激光雷达、基于相机、多模态这三条技术路线到底各自走到哪一步了靠零散读论文效率极低。港中文这次放出的这篇32页综述一口气覆盖了367篇文献把三条主流技术路线从问题定义、方法演进、数据集基准到未来挑战做了一次相当完整的梳理对正在做感知算法选型、准备开题、或者要给团队做技术调研的人来说省下的时间成本非常可观。我自己是从激光雷达点云检测这条线入行的后来因为项目需要又陆续碰了纯视觉方案和多模态融合踩过的坑不算少。这篇综述最让我认可的一点是它没有把三条路线割裂开讲而是始终围绕三维空间中如何准确定位并分类目标这个核心问题展开让读者能清楚地看到不同传感器方案在解决同一个问题时的取舍逻辑。下面我就结合这篇综述的框架加上我自己在实际项目中的理解把三条技术路线的关键细节拆开讲透顺便把一些论文里不会写、但工程上一定会遇到的坑点出来。需要先说明的是综述本身是学术性质的梳理很多方法细节在原文里有严格公式推导我这里不会照搬公式而是用工程视角把为什么这么设计实际落地时要注意什么讲清楚。文中涉及的具体方法名称、数据集参数我会尽量还原综述中的表述但部分工程细节是基于我自己的实践经验做的合理补充读者心里有数即可。2. 三维物体检测的问题定义与三条技术路线的分野2.1 三维检测到底在解决什么问题很多人刚接触这个方向时容易把三维检测和二维检测混为一谈觉得无非是多预测一个深度值。实际上两者的难度完全不在一个量级。二维检测只需要在图像平面上框出目标输出的是像素坐标下的边界框而三维检测要输出的是目标在真实物理空间中的位置、尺寸和朝向通常表示为(x, y, z, l, w, h, θ)这七个自由度有些场景还要加上速度分量。这意味着模型不仅要看见目标还要理解目标在三维空间中的精确姿态。这个差异带来的直接后果是二维检测里那些成熟的技术比如基于锚框的密集预测、特征金字塔多尺度融合搬到三维空间后都会遇到新问题。最典型的就是朝向估计的歧义性——同样一个长方体从点云或图像上看绕垂直轴旋转180度后投影可能高度相似但实际朝向完全相反这对下游的轨迹预测和规划控制是致命的。综述里专门用了一节讨论这个问题可见其重要性。另一个核心难点是尺度变化和遮挡。自动驾驶场景里近处的车可能占据几百个点远处的车只有十几个点甚至几个点行人被车辆遮挡后可能只剩半个身子可见。三维检测模型必须在这样极端不平衡的输入下保持稳定输出这对特征提取网络的设计提出了很高要求。2.2 三条技术路线为什么会长成现在这样综述把现有方法分成基于激光雷达、基于相机、多模态融合三大类这个划分不是随意为之而是由传感器的物理特性决定的。激光雷达直接输出三维点云天然带有精确的深度和几何信息所以基于激光雷达的方法核心挑战在于如何高效地从无序、稀疏、不均匀的点云中提取判别性特征。早期做法是把点云体素化后用三维卷积处理但三维卷积计算量巨大后来PointNet系列开创了直接处理原始点的方法用对称函数解决无序性问题再往后又出现了基于柱体的PointPillars等方案在精度和速度之间找平衡。这条线的演进逻辑非常清晰在保持几何信息完整性的前提下不断降低计算复杂度。基于相机的方法则完全相反图像本身没有深度信息必须靠几何约束、先验知识或者数据驱动的方式猜出三维结构。好处是相机成本低、分辨率高、纹理信息丰富坏处是深度估计误差会直接传导到最终检测结果。综述里把基于相机的方法又细分为单目、双目和伪激光雷达几类其中伪激光雷达的思路很有意思——先用深度估计网络把图像转成点云再套用激光雷达的检测头相当于用软件模拟了一个激光雷达。多模态融合是近两年的绝对热点逻辑也很直白激光雷达提供精确几何相机提供丰富纹理两者互补。但融合的难点在于如何对齐不同模态的特征。点云是三维的、稀疏的图像是二维的、稠密的直接拼接维度对不上简单投影又会丢失信息。综述里把融合策略分成早期融合、中期融合和晚期融合并指出中期融合在特征层面交互是目前的主流因为它在信息保留和计算效率之间取得了较好平衡。2.3 三条路线的核心对比为了让大家更直观地理解三条路线的差异我把综述中的关键对比整理成下面这张表。需要强调的是这里的精度成本都是相对而言具体到某个场景可能结论完全不同。对比维度基于激光雷达基于相机多模态融合深度信息直接测量精度高间接估计误差较大以激光雷达为主相机辅助纹理信息弱点云无颜色强图像纹理丰富两者兼有硬件成本高机械式更贵低中等偏高恶劣天气鲁棒性受雨雾影响受光照影响大互补相对更稳远距离检测点稀疏难度大分辨率下降难度大融合后有一定改善计算复杂度中到高中高数据标注成本高需三维框高需三维框高这张表背后其实藏着一个工程上很现实的结论没有哪条路线能通吃所有场景。我在实际项目里见过太多团队一上来就追求多模态融合结果因为标定误差和同步问题融合后的效果反而不如单激光雷达。综述在讨论部分也委婉地提到了这一点强调融合的前提是各模态本身足够可靠。3. 基于激光雷达的三维检测从体素到点再到柱体3.1 点云数据的三个不友好特性要理解基于激光雷达的方法为什么演化出这么多分支得先搞清楚点云数据本身有多难搞。综述开篇就用不小篇幅描述了这三个特性我结合自己的理解展开说。第一个是无序性。一张图像里像素的排列是有意义的左上角的像素和右下角的像素位置固定但点云是一堆三维坐标的集合你把点的顺序打乱它表示的还是同一个场景。这意味着常规卷积网络那种按位置滑动窗口的操作没法直接用必须设计对顺序不敏感的网络结构。第二个是稀疏性和不均匀性。激光雷达的扫描线是固定的比如64线雷达垂直方向只有64个采样角度水平方向随距离增加点与点之间的间距越来越大。结果是近处物体点密集远处物体点稀疏而且不同区域的点密度差异可能达到几个数量级。这对下采样和特征聚合策略提出了很高要求。第三个是旋转不变性需求。同一个物体车头朝向不同点云分布完全不同但我们希望模型识别出它是同一类物体。这要求网络在一定程度上对旋转具有鲁棒性或者至少能显式地估计出朝向。3.2 体素化方法把点云变成规则网格最直观的思路是把三维空间切成一个个小立方体体素每个体素里有点就标记为占用然后用三维卷积提取特征。VoxelNet是这条线的代表作它先用体素特征编码层把每个体素内的点聚合成一个固定维度的特征向量再送入三维卷积网络最后接区域提议网络输出检测框。这个思路的好处是能直接复用二维检测里成熟的卷积架构缺点是三维卷积的计算量和内存占用随体素分辨率呈立方增长。我实测过在1080Ti上跑高分辨率体素网络batch size只能开到2训练一轮要好几个小时。所以后续工作大多在想办法降低这个开销比如用稀疏卷积只对非空体素做计算或者用更粗的体素划分。实操心得体素大小这个参数非常关键。设得太小远处物体可能一个体素都占不到直接漏检设得太大近处相邻物体容易被合并到同一个体素里造成误检。我的经验是先用激光雷达的垂直角分辨率反推一个下限再根据实际场景目标尺寸微调。3.3 原始点方法PointNet系列的贡献与局限PointNet的出现算是绕开了体素化的思路直接用多层感知机逐点提取特征再用最大池化这种对称函数聚合全局特征。因为最大池化对输入顺序不敏感所以天然解决了无序性问题。PointNet进一步引入分层采样和局部特征聚合让网络能捕捉局部几何结构。但原始点方法的问题也很明显逐点操作的计算量随点数线性增长而激光雷达一帧动辄十几万点直接处理非常慢。而且最大池化虽然解决了无序性但也丢失了点的空间分布信息对精细的朝向估计不够友好。综述里提到后续很多工作尝试在PointNet基础上引入注意力机制或图神经网络来增强局部关系建模但计算效率始终是个绕不开的坎。3.4 柱体方法PointPillars为什么能落地PointPillars是我个人认为在工程落地层面最有参考价值的一条线。它的核心思想很巧妙不做三维体素而是把点云在垂直方向上压扁划分成一个个柱体pillar每个柱体内的点用PointNet提取特征然后这些柱体特征在鸟瞰图视角下排列成二维伪图像直接套用二维卷积检测头。这个设计的好处是计算量大幅下降因为二维卷积比三维卷积快得多同时通过柱体编码保留了垂直方向的信息。实测下来PointPillars在nuScenes数据集上能跑到实时精度也够用这也是为什么很多量产方案和开源项目都基于它做二次开发。不过柱体方法也有代价垂直方向的信息被压缩了对于需要精确估计高度的场景比如区分地面上的小物体和悬空物体会吃力一些。综述里提到有后续工作尝试用多尺度柱体或混合体素-柱体结构来缓解这个问题。3.5 激光雷达方法的实操要点如果你正准备基于激光雷达做检测我建议按这个顺序推进先把数据加载和可视化跑通确认点云坐标系和标注框对齐然后选一个成熟baselinePointPillars或CenterPoint跑通训练和评估流程最后再根据自己场景的问题做针对性改进。这里有几个容易踩的坑。第一是坐标系约定不同数据集对x、y、z轴的定义可能不同标注框的朝向角基准也不一样直接混用会导致训练完全不收敛。第二是点云范围裁剪激光雷达原始点云可能包含大量地面点和远处噪点不裁剪的话既浪费算力又干扰检测。第三是数据增强点云的数据增强和图像完全不同常用的有全局旋转、全局缩放、局部区域随机丢弃等但旋转增强要注意别把标注框的朝向搞乱。4. 基于相机的三维检测用二维信息反推三维世界4.1 单目方法的几何困境单目三维检测的核心矛盾在于一张二维图像理论上对应无穷多个三维场景必须靠先验知识来约束解空间。综述里把单目方法分成两类一类是基于几何投影的一类是基于伪激光雷达的。基于几何投影的方法通常先估计目标的二维框和观测角再结合相机内参和地面假设反推三维位置。这里的观测角是个关键概念它描述的是目标相对于相机光心的方位和目标的真实朝向偏航角不是一回事。很多初学者会混淆这两个角度导致预测出来的框朝向完全错误。综述里专门用图示区分了这两个概念建议反复看几遍。伪激光雷达的思路是先跑一个深度估计网络把图像每个像素的深度预测出来再结合内参反投影成三维点云最后用激光雷达的检测头处理。这个思路在理论上很优雅但实际效果高度依赖深度估计的精度。我试过几个开源深度估计模型在近距离和纹理丰富区域还行一到远处或者弱纹理区域比如白墙、天空误差就很大反投影出来的点云形状完全变形。4.2 双目与多视角方法双目方法通过左右图像的视差计算深度理论上比单目更可靠因为深度是算出来的而不是猜出来的。但双目也有自己的问题基线长度限制了有效测距范围远处视差趋近于零深度误差急剧放大而且双目匹配在弱纹理区域同样容易失败。综述里还提到了一类多视角方法用多个相机从不同角度拍摄同一场景通过多视角几何约束来提升深度估计和检测精度。这类方法在环视感知方案里比较常见但标定和同步的复杂度也相应上升。4.3 相机方法的实操要点做纯视觉三维检测我觉得最关键的是相机标定。内参不准反投影出来的三维位置就会系统性偏移外参不准多相机融合就是灾难。我见过一个项目标定参数用的是出厂默认值结果检测框在图像上看着挺准一投影到鸟瞰图就偏了半米排查了两天才发现是标定问题。另一个要点是数据增强的尺度一致性。图像做随机缩放增强时如果不同时调整内参模型学到的深度尺度就会乱。正确做法是把缩放后的内参矩阵一起更新保证几何关系一致。注意纯视觉方案在夜间和强逆光场景下的性能下降非常明显如果你的应用场景包含这些工况要么补光要么考虑加雷达别指望靠算法硬扛。5. 多模态融合11如何真正大于25.1 融合的三个层次综述把多模态融合分成早期、中期、晚期三个层次这个划分很经典我结合实际项目说说各自的适用场景。早期融合也叫数据级融合最典型的是把图像像素的颜色或语义特征附加到对应的点云上让点云带颜色。这种做法实现简单但受标定精度影响极大而且图像特征和点云特征维度差异大简单拼接效果有限。晚期融合是各模态独立跑检测最后在结果层面做融合比如用非极大值抑制合并两边的检测框或者用贝叶斯方法做概率融合。这种做法鲁棒性好某个模态失效时另一个还能兜底但缺点是丢失了模态间的细粒度交互信息。中期融合是目前研究的主流在特征提取的中间层做跨模态交互。典型做法是把点云投影到图像平面用图像特征增强点云特征或者反过来用点云深度信息引导图像特征。综述里提到中期融合的关键在于对齐机制的设计简单的逐元素相加或拼接效果一般需要引入注意力机制让网络自己学习哪些区域该融合、融合多少。5.2 标定与同步融合方案的生命线我必须要强调多模态融合的成败很大程度上不取决于网络结构而取决于标定和同步这两个工程环节。综述里虽然主要讲算法但也用了一定篇幅讨论这个问题说明学术界也意识到了它的重要性。标定方面相机-激光雷达联合标定需要精确估计两者之间的旋转和平移关系。常用的工具有基于标定板的也有基于运动的方法。我的经验是标定完成后一定要做验证在场景里放几个已知位置的标志物看投影误差是否在可接受范围内。如果误差超过几个像素融合效果就会大打折扣。同步方面相机和激光雷达的采样频率通常不同如果时间戳对不齐运动物体在两种传感器里的位置就会有偏差。高速场景下几十毫秒的延迟就能造成米级的错位。所以硬件触发同步或者精确的时间戳插值是必须的。5.3 融合方法的实操建议如果你打算上多模态融合我的建议是分三步走。第一步先把单激光雷达和单相机方案各自调通搞清楚各自的性能上限和失效模式。第二步做晚期融合验证融合是否能带来稳定增益这一步能帮你确认标定和同步是否到位。第三步再上中期融合尝试更复杂的交互结构。这个顺序的好处是每一步都有明确的验证目标出问题时容易定位。我见过不少团队直接上中期融合结果效果不好时根本分不清是标定问题、同步问题还是网络设计问题排查成本极高。6. 数据集、评价指标与常见问题排查6.1 主流数据集怎么选综述里梳理了当前主流的三维检测数据集我挑几个最常用的说说。KITTI是早期最经典的数据集但场景相对简单现在更多作为baseline验证用。nuScenes规模更大包含多传感器数据和复杂城市场景是目前学术和工业界都认可的主流基准。Waymo Open Dataset的点云质量很高但获取门槛相对高一些。选数据集时要考虑你的实际场景。如果你的应用是高速场景KITTI可能够用如果是复杂城市道路nuScenes更合适。另外要注意不同数据集的评价指标和标注规范可能不同跨数据集对比时要格外小心。6.2 评价指标背后的门道三维检测常用的指标是mAP但和二维检测的mAP计算方式有区别。三维检测的匹配通常要求预测框和真实框的IoU超过某个阈值同时朝向误差也要在允许范围内。这意味着一个位置很准但朝向反了的框会被判定为不匹配。nuScenes还引入了mAP和NDS等更综合的指标NDS把检测精度、位置误差、尺寸误差、朝向误差、速度误差等加权组合更能反映实际感知质量。我建议在做方案对比时不要只看mAP把各项误差分开看才能发现真正的短板。6.3 常见问题速查表下面这张表是我在实际项目中遇到的高频问题及排查思路供参考。问题现象可能原因排查方向训练loss不下降学习率过大、标注格式错误检查标注框坐标系和角度定义检测框位置系统性偏移标定参数错误、坐标系不统一验证内外参检查点云裁剪范围远处目标大量漏检点云稀疏、体素划分过粗调整体素大小增加远距离采样朝向预测混乱角度回归方式不当、缺少朝向监督检查角度编码方式考虑用bin-based方法多模态融合无增益标定误差大、时间戳不同步做投影验证检查同步精度推理速度不达标网络过重、后处理耗时用稀疏卷积优化NMS实现6.4 几个容易被忽视的细节第一个是类别不平衡。自动驾驶场景里车辆样本远多于行人、自行车等小目标直接训练会导致小目标检测性能很差。常用的做法是重采样、focal loss或者类别加权但要注意别矫枉过正导致车辆检测下降。第二个是标注质量。三维标注比二维标注难得多标注员需要判断目标的真实尺寸和朝向不同标注员之间的一致性可能不高。如果发现模型在某些样本上表现异常先回头看看标注是不是有问题。第三个是评估时的场景划分。有些数据集按场景划分训练验证集如果随机划分同一段连续帧可能同时出现在训练和验证集里导致评估结果虚高。做自己的评估时要注意这一点。7. 我对这篇综述和整个方向的一些个人看法这篇综述的信息量确实大367篇文献的覆盖面在同类工作中算是相当全的。但读的时候也要有取舍不是每篇都值得精读。我的建议是先把三条路线的代表性方法各挑两三篇吃透建立起对问题和方法演进的基本认知再根据自己项目的实际需求去追特定方向的进展。从我自己的经验看三维检测这个方向短期内不会出现一招鲜的解决方案。激光雷达在精度和鲁棒性上仍有优势但成本压力会推动纯视觉方案持续进步多模态融合理论上限最高但工程复杂度也最高。真正落地时选型要综合考虑成本、算力、场景工况和团队能力而不是单纯追SOTA。最后分享一个我踩过的坑早期做项目时总想着一步到位上最复杂的模型结果训练调参花了大半年效果还不如一个调好的PointPillars。后来才明白数据质量和工程细节的重要性往往超过模型结构本身。标定做准、同步做好、标注清洗干净这些基础工作带来的收益比换个新网络结构实在得多。这篇综述把方法梳理得很清楚但真正决定项目成败的还是那些论文里不会写的工程细节。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。