2. BEV感知基础
BEV(Bird's Eye View,鸟瞰视图)感知的目标,是把环绕车身的多个相机图像统一映射到车辆正上方的俯视平面,并在该平面上完成检测、分割、跟踪与预测。理解 BEV 感知,不能只停留在“把图拼起来”的直觉,而必须同时掌握四件事:BEV 表示什么、多视图几何如何约束、相机模型如何成像、坐标系如何变换与标定。这四者构成 BEV 感知的数学地基。
一、BEV 表示:从图像平面到俯视栅格
BEV 表示通常是一个以自车为中心的二维栅格,栅格坐标 (x, y) 对应车辆坐标系下的纵向与横向位置,每个格子可承载语义类别、占据概率、高度、速度等特征。与透视图像相比,BEV 的优势在于:尺度一致、遮挡关系明确、便于与规划控制模块对接。常见表示形式包括语义 BEV、占据栅格、BEV 特征图以及实例级 BEV 查询。
需要强调的是,BEV 不是某一张真实照片,而是多相机信息在统一空间中的融合结果。它的质量取决于几何对齐是否准确、特征融合是否充分,以及标定误差是否被控制。
二、多视图几何:极线、三角化与重投影
多视图几何回答的是“同一个三维点,在不同相机中如何成像,以及如何由多张图像反推其位置”。核心概念包括:
- 极线约束:同一空间点在两幅图像中的投影点位于对应极线上,可用于匹配搜索与误匹配剔除。
- 三角化:已知相机位姿与匹配点时,通过多射线交汇估计三维点坐标。
- 重投影误差:将估计的三维点重新投影到各图像,与观测点比较,是标定与位姿优化的基础损失。
- 单应与平面假设:当场景近似平面时,可用单应矩阵描述两视图映射,常用于地面 BEV 变换。
在 BEV 感知中,多视图几何的价值在于:它提供了跨相机的空间一致性约束。若忽略极线关系,直接做特征拼接,往往会在重叠区域产生重影或错位。
三、相机模型:内参、外参与畸变
相机模型描述三维点如何投影到像素平面。最常用的是针孔模型加畸变模型:
像素坐标 = K · [R | t] · 世界坐标
K = [[fx, 0, cx],
[0, fy, cy],
[0, 0, 1]]
畸变:x_dist = x(1 + k1 r^2 + k2 r^4) + 2 p1 x y + p2 (r^2 + 2 x^2)
其中 fx、fy 为焦距,cx、cy 为主点,R、t 为相机相对世界坐标系的旋转与平移,k1、k2、p1、p2 为径向与切向畸变系数。内参决定像素与归一化平面的关系,外参决定相机在车体上的安装位置与朝向。畸变校正通常在图像预处理阶段完成,否则 BEV 投影会在边缘产生弯曲。
四、坐标系变换与标定基础
BEV 感知涉及多个坐标系:像素坐标系、图像坐标系、相机坐标系、车体坐标系、世界坐标系。它们之间的变换链为:
像素 → 图像 → 相机 → 车体 → 世界。每一步都由内参、外参或标定矩阵描述。标定的目标,就是求出这些矩阵,使多相机图像能够一致地映射到车体 BEV 平面。
常见标定方法包括:棋盘格标定、车道线标定、消失点标定、在线自标定。标定误差会直接放大到 BEV 空间,尤其在远距离区域。因此,标定后必须用重投影误差、BEV 拼接缝对齐度、地面直线度等指标进行验证。
五、案例:环视 BEV 拼接中的典型问题
假设一辆车装有前、后、左、右四个鱼眼相机,目标是生成 10 m × 10 m 的 BEV 语义图。若标定外参存在 1° 的俯仰角误差,在 10 m 远处会产生约 0.17 m 的纵向偏移;若四个相机各自偏差方向不同,拼接缝处就会出现车道线断裂或重影。此时仅靠后处理融合无法根治,必须回到标定环节,用地面控制点重新优化外参。
六、方法流程与检查清单
| 步骤 | 关键操作 | 输出/指标 |
|---|---|---|
| 1. 相机建模 | 标定内参、畸变系数 | K、k1、k2、p1、p2 |
| 2. 外参标定 | 确定相机相对车体的 R、t | 外参矩阵、安装角 |
| 3. 去畸变 | 对原始图像做畸变校正 | 校正图像、有效视场 |
| 4. 坐标变换 | 像素→图像→相机→车体→世界 | 统一坐标下的点云/特征 |
| 5. BEV 投影 | 单应或射线投影到俯视平面 | BEV 栅格特征 |
| 6. 验证 | 重投影误差、拼接缝、直线度 | 误差阈值、对齐度 |
复盘时,建议按“标定误差 → 几何变换 → 特征融合 → 下游任务”的顺序逐层排查。多数 BEV 感知的精度问题,根源不在网络结构,而在标定与坐标系变换的精度。把这一层做扎实,后续的 BEV 检测、分割与跟踪才有可靠的基础。