4. 三维目标检测概述
三维目标检测是机器人感知系统中的核心任务之一。它不仅要回答“图像里有什么”,还要回答“它在三维空间中的位置、朝向和尺寸是多少”。与二维检测输出矩形框不同,三维检测通常输出目标的三维中心坐标、长宽高、偏航角,有时还包括速度、类别和置信度。对于抓取、避障、导航和装配等机器人任务,这些三维信息直接决定后续动作是否可行。
4.1 问题定义:从二维框到三维位姿
给定传感器输入,例如单目 RGB 图像、双目图像、RGB-D 图像或激光点云,三维目标检测的目标是估计场景中每个感兴趣目标的三维状态。常见表示包括:
- 三维边界框:中心点 (x, y, z)、尺寸 (l, w, h)、偏航角 θ,有时包含俯仰角和滚转角。
- 类别与置信度:如 car、pedestrian、chair、cup 等,以及该检测的可靠程度。
- 附加属性:速度、遮挡等级、截断程度、可见性等,在自动驾驶数据集中尤其常见。
从数学上看,三维检测可以视为从观测空间到状态空间的映射:观测空间可能是像素、深度图或点云,状态空间是目标的三维框参数。难点在于深度信息在单目图像中天然缺失,点云又稀疏且无序,因此模型必须同时处理几何、纹理和上下文信息。
核心区别:二维检测关注“在哪里出现”,三维检测关注“在三维空间中处于什么位置和姿态”。后者对机器人操作和自动驾驶决策更关键。
4.2 评价指标:IoU、mAP、ADD 与 ADD-S
评价三维检测器时,不能只看分类是否正确,还要看三维框或位姿估计是否准确。常用指标如下:
| 指标 | 含义 | 适用场景 |
|---|---|---|
| 3D IoU | 预测三维框与真实三维框的交并比,通常按体积计算 | KITTI、nuScenes 等三维框检测 |
| BEV IoU | 鸟瞰图平面上的交并比,忽略高度方向 | 自动驾驶中评估水平定位 |
| mAP | 多类别平均精度,按 IoU 阈值统计 PR 曲线面积 | 通用检测性能对比 |
| ADD | 模型点平均距离,衡量预测位姿与真实位姿下模型点的平均偏差 | LineMOD 等位姿估计 |
| ADD-S | 对称物体版本,按最近点距离计算,避免对称歧义 | 对称工业零件位姿估计 |
其中,ADD 的计算方式可以直观理解为:把物体模型上的每个点分别用预测位姿和真实位姿变换,再计算对应点之间的平均距离。如果该距离小于物体直径的 10%,通常认为位姿估计正确。对于对称物体,ADD-S 会寻找最近点,因此不会因为旋转 180 度而误判。
ADD = (1/m) * Σ || R_pred * x_i + t_pred - (R_gt * x_i + t_gt) ||
ADD-S = (1/m) * Σ min_j || R_pred * x_i + t_pred - (R_gt * x_j + t_gt) ||
mAP 则更偏向检测任务:先按置信度排序,计算不同召回率下的精度,再对精度-召回曲线积分。三维检测中常设置 3D IoU 阈值为 0.25、0.5 或 0.7,阈值越高,要求定位越精确。
4.3 主流数据集:KITTI、nuScenes、LineMOD
不同数据集对应不同传感器配置和任务重点。KITTI 是自动驾驶三维检测的经典基准,包含双目图像、激光点云和标注的三维框,主要类别为汽车、行人、骑行者。nuScenes 规模更大,包含 6 个相机、1 个激光雷达和 5 个毫米波雷达,标注类别更多,且强调多模态融合和长尾场景。LineMOD 则面向物体位姿估计,提供 RGB-D 图像和物体三维模型,常用于评估 ADD/ADD-S。
- KITTI:7481 张训练图、7518 张测试图,标注三维框、遮挡和截断,适合入门和算法对比。
- nuScenes:1000 个场景,每场景 20 秒,包含 140 万张图像和 39 万帧点云,评测指标包括 mAP、NDS 等。
- LineMOD:15 个物体,约 1.5 万张图像,提供精确位姿标注,适合抓取和装配场景。
选择建议:做自动驾驶感知优先看 KITTI 和 nuScenes;做机械臂抓取或工业装配优先看 LineMOD、YCB-Video 等位姿数据集。
4.4 核心挑战与常见误区
三维目标检测面临多重挑战。第一,深度模糊:单目图像中同一像素可能对应不同深度,模型必须依赖尺寸先验和上下文。第二,点云稀疏:激光雷达在远处或小物体上只有少量点,难以稳定估计朝向。第三,遮挡与截断:目标被部分遮挡时,三维框的中心和尺寸容易偏移。第四,对称物体:许多工业零件具有旋转对称性,直接回归角度会产生歧义。第五,实时性:机器人系统通常要求 10–30 FPS,而三维检测计算量较大。
常见误区包括:只关注 mAP 而忽略 ADD;在 KITTI 上过拟合后直接迁移到 nuScenes;把二维检测框直接反投影当作三维框;以及忽略坐标系定义,导致预测框与真实框方向相反。实际项目中,应明确相机、激光雷达和世界坐标系之间的变换关系,并在训练和评测时保持一致。
理解这些指标和数据集之后,下一步才是选择具体算法。无论是基于点云的 PointPillars、VoxelNet,还是基于图像的 Mono3D、SMOKE,抑或 RGB-D 融合方法,都需要围绕本节定义的问题、指标和挑战来设计和验证。只有把评价标准与机器人任务需求对齐,三维检测结果才能真正服务于抓取、导航和交互。