想象你是一位站在剧院高处的总导演。台上的演员来回走动,但任何一台固定摄影机都只能拍到局部——台口的镜头看不清地砖上的走位标记,二楼的镜头又跟不上演员的转身。于是你下令:在剧场四周架起六台摄影机,各拍一角,再把所有画面按舞台的平面坐标拼成一张“上帝俯瞰图”。在这张图上,谁站在哪块地砖上、面朝哪里、下一步迈向何方,一目了然。这就是 BEV(Bird's Eye View,鸟瞰图)感知的直觉。而 Transformer 呢?它像导演的“剧本记忆”与“注意力”——导演不可能同时盯住每个角落,他会根据剧情记忆,把注意力瞬间聚焦到关键演员身上,甚至预判出演员的下一步动作。BEV+Transformer,就是把“多机位拼成的俯瞰图”与“会记忆、会聚焦的导演大脑”结合起来,让自动驾驶汽车像最老练的导演一样,在三维世界中看清全局、料敌机先。
对 AI 从业者而言,BEV+Transformer 是当前高阶自动驾驶感知的主流范式。掌握它,你就能直接切入智能驾驶算法团队的核心工作,从“会调模型”升级为“懂车载感知系统”。
目录
可视化演示
展示数据包在网络节点间的路由传输过程,通过动态路径选择和包投递动画演示网络通信机制。
本节配有交互动效(进入视口后自动加载,约 3KB)。
数据包路由传输 红色节点为源端和目的端 粉色节点为中继路由节点 throughput = packets / time 数据包通过多跳路径从源到达目的端。
BEV感知原理:从单镜头到俯瞰图
总导演最苦恼的事,是剧场里每个机位都只能看到舞台的一隅。台口机位能看清演员表情,却看不见脚下的走位线;二层机位视野开阔,却把演员压成了扁扁的影子。直到导演把六个机位的画面投影到同一张舞台平面图上,才终于获得“上帝视角”。BEV 感知做的就是这件事:把多个摄像头看到的 2D 图像,通过几何投影统一到以自车为中心的俯视平面上,生成一张“鸟瞰图”。
这张鸟瞰图不是简单地把画面拉伸拼接,而是先把世界坐标下的三维点投影到每个相机像素坐标,再利用“反投影”把特征放回地面网格。技术上的关键一步是相机投影模型——它描述了“舞台上的某个点,最终落在摄影机画面的哪个像素”。
有了这张“舞台平面图”,导演就不必再依赖任何单台机位——BEV 感知的核心优势正在于统一坐标下的全局视角,后续的融合、记忆与检测都以它为基准。
- 世界坐标 P_w演员在舞台经纬网格上的真实站位,用三维坐标 (x_w, y_w, z_w) 表示。它是所有投影的出发点。
- 外参 [R∣t]把舞台坐标转换到摄像机坐标的旋转与平移,描述摄像机装在车上的位置和朝向,好比每台摄影机的“机位参数”。
- 内参 K相机镜头把三维点“压”到二维像素平面的固有参数,包含焦距和主点,相当于摄影机的镜头焦距。
- 像素坐标 p_uv最终图像上的列 u 与行 v。BEV 感知正是把地平面高度上的点投影到网格,再逐格聚合,形成俯瞰特征。
多摄像头融合:六台机位的对齐拼图
导演知道,单靠一台摄影机会漏掉半个舞台。于是他在剧场前后左右架起六台摄影机,让每台负责一个方向。自动驾驶同样在车身周围部署 6 个环视摄像头——前视、后视、左右侧视——覆盖 360 度无死角。但多机位也带来新问题:同一件道具可能被两台摄影机同时拍到,画面里的位置却对不上。导演必须先校准每台摄影机的“机位参数”,这就是外参标定。
每个摄像头先经骨干网络(如 ResNet)提取 2D 特征图,再按各自外参把这些特征投影到 BEV 网格上。落在网格之外的特征被丢弃,重叠区域的特征则按权重相加。最终得到一个完整、连续、无缝隙的鸟瞰特征图——恰如导演把六块拼图严丝合缝地拼成一张完整的舞台俯瞰图。
多机位拼图拼得越准,导演看到的舞台就越完整。多摄像头融合正是 BEV 感知的“素材积累阶段”——它把零散的局部信息变成一张完整的俯瞰底图。
- 相机特征 F_i每台摄影机经骨干网络提取的画面信息,形状是二维特征图,包含该视角下的物体纹理、边缘与语义。
- 外参 ξ_i第 i 个相机的旋转平移矩阵,把它的特征映射到以自车为中心的地面坐标,相当于告诉导演“这台机器在哪个机位、朝哪个方向拍”。
- 特征对齐 Align按外参将 F_i 采样到 BEV 网格的每个格子 (x,y),越靠近视野中央的格子采样越密集,远离视野的部分被丢弃。
- 求和融合N 个相机在重叠格子上的贡献加权相加,最终输出覆盖 360 度的 BEV 特征图。
Transformer结构:导演的注意力聚光灯
舞台上有三十个演员同时走动,导演不可能逐一盯着。他会迅速锁定此刻最关键的角色,其他演员的信息则作为背景参考。这种“按需聚焦”的能力,正是 Transformer 自注意力的精髓。在 BEV 感知中,每个网格位置都可以看作一个“小型导演”,它向全图发出查询:谁和我相关?然后从其他位置聚合信息。
自注意力机制用三个角色完成这个过程:查询 Q 代表“我想知道什么”,键 K 代表“我能提供什么”,值 V 代表“我实际给什么”。每个网格先计算与所有位置的匹配分数,再用 softmax 归一化成权重,最终把全图信息按权重加权聚合。BEVformer 等主流模型正是借此让 BEV 网格中的每个格子,都能根据内容动态感知全图。
多头注意力进一步让导演同时关注不同维度的线索——有人盯着走位,有人盯着表情,再把这些“头”的结果拼接起来。编码器堆叠则让聚焦能力层层深化,最终 BEV 特征图上每个格子都“阅尽全局”。
- 查询 Q当前 BEV 网格位置的“提问向量”——这里到底有什么关键信息值得关注?它由该位置的特征经线性变换得到。
- 键 K 与值 V其他网格位置提供的“检索标签”和“实际内容”。就像导演脑中每个演员的背名牌与表演片段,点查询时用名牌匹配,真正取用时取片段。
- 缩放点积Q 与所有 K 做点积得到匹配分数,除以 √d_k 防止分数随维度增大而过大,从而稳定梯度。
- softmax 加权 V把匹配分数归一化成总和为 1 的权重,再对 V 加权求和,得到这个网格位置聚合全图信息后的新特征。
时序建模:导演的剧本记忆
高明的导演不会只看眼前这一幕。他记得上一幕演员站在哪里、朝哪个方向转身,因此能预判下一幕的走位。自动驾驶也一样:单帧 BEV 图只能回答“现在谁在哪”,却答不出“它正以多快速度朝哪移动”。要理解运动,必须让模型拥有“剧本记忆”——这就是时序建模的任务。
具体做法是把过去 N 帧的 BEV 特征缓存起来,作为历史记忆;当前帧特征作为提问,通过 Transformer 与历史帧做时序注意力。模型在记忆与画面之间反复映照,自然能提取出运动趋势:哪个目标在匀速前进,哪个目标在减速避让,哪个目标即将切入自车车道。最终输出不仅包含当前空间位置,还隐含速度与运动预测。
有了剧本记忆,导演就不再是“每幕重新猜谜”的新人,而是能预判剧情的老手。时序建模让 BEV+Transformer 从“空间感知”升级为“时空感知”,这是处理动态交通的关键一步。
- 当前帧 BEV 特征 x_t此刻刚拼出的俯瞰图,相当于舞台当前这一幕的实时走位。
- 历史隐状态 h_{t-1}过去若干帧被压缩编码后的“剧本记忆”,由历史上多帧 BEV 特征归纳而来。
- Transformer 交互与输出用注意力让剧本记忆与当前画面互相映照,输出融合了“过去怎么动”和“现在在哪”的新状态,供后续检测头使用。
3D检测头:给演员精确标注
俯瞰图上已经铺满了融合后的时空特征,但导演还需要回答最实际的问题:这位演员具体站在哪个坐标?他多高多宽?面朝哪个方向?3D 检测头就是负责“标注”的最后一环——从 BEV 特征解码出每个目标的三维属性。
检测头通常以 BEV 网格上的每个位置为锚点,先判断该位置是否有目标,再回归目标的中心点坐标、长宽高尺寸和朝向角。中心点回归决定了目标在路面上的精确位置,尺寸预测给出物理包围盒,朝向角回归则让下游规划模块知道对方正在朝哪个方向行驶。最后用置信度评分过滤掉不可靠的检测,只输出高可信目标。
导演在俯瞰图上完成标注后,整张图就成了可执行的“舞台调度方案”:每个演员的位置、体型、朝向都清清楚楚。3D 检测头输出的正是下游预测与规划模块直接消费的“演员名单”。
- 分类损失 L_cls判断每个 BEV 格子里是否真的有目标,用的是二分类交叉熵——导演先回答“这里有没有人”。
- 中心点回归 L_center在判定为有目标的格子上,预测目标中心相对格子的精确偏移。
- 尺寸与朝向回归预测长宽高物理尺寸和偏航角,让标注框不仅是“一个点”,而是有体积、有朝向的立体框。
数据与训练:反复排练打磨
再天才的导演也需要排练。BEV+Transformer 模型同样需要海量“彩排”——用标注好的数据反复迭代,让模型从错误中学习。3D 检测的标注比 2D 框麻烦得多:不仅要画框,还要标注中心点、长宽高、朝向角,常用数据集如 nuScenes、KITTI 都提供这类 3D 标注格式。
训练时,损失函数(如上一节的多任务损失)告诉模型“偏差有多大”,反向传播更新参数。数据增强则像导演在排练中故意变换灯光、调整道具位置,让演员适应各种突发状况——随机翻转、颜色抖动、BEV 网格扰动等都能提升泛化能力。此外,真实数据难以覆盖所有危险场景,仿真训练(如 CARLA 生成的对抗场景)成为补充长尾数据的重要手段。
排练结束、彩排数据一遍遍打磨之后,模型才敢“上台”。数据与训练的质量直接决定了 BEV+Transformer 在真实道路上的表现上限——毕竟,再好的架构也怕“没见过的剧本”。
- 交集面积 |B∩G|预测框与标注框的重叠区域,相当于导演圈出的走位与剧本要求的重合部分。
- 并集面积 |B∪G|两个框覆盖的总区域,用 |B| + |G| 减去重叠部分得到。
- IoU 比值重叠越大比值越接近 1,检测越精准。训练中常用 IoU 阈值(如 0.5/0.7)划分正负样本,评估时也用它算 mAP。
系统部署:正式演出前的设备调试
公演前夜,导演要把调度方案固化到舞台控制台:灯光按脚本自动切换,转台按时序自动旋转。自动驾驶同样需要把训练好的模型部署到车载计算平台(如英伟达 Orin),面对的是严苛的算力与实时性约束——每一帧必须在几十毫秒内完成。车载平台跑不动原始 FP32 大模型,必须做“设备调试”。
最常用的手段是模型量化:把浮点权重压缩成 FP16 甚至 INT8 整数。量化后模型体积缩小约 4 倍,推理速度大幅提升,精度损失却可以控制在很小范围。配合 TensorRT 等推理优化引擎、知识蒸馏等轻量化手段,BEV+Transformer 才能在车载芯片上实时跑起来。工程架构上还需设计多线程流水线,让采集、推理、后处理并行执行。
设备调试完成,导演的控制台才能精准无误地执行调度。系统部署的意义正在于此:让“理论上很强”的模型变成“车上真正能跑”的感知引擎,这是 BEV+Transformer 从论文走向量产的关键一跃。
- 量化步长 Δ把浮点数的取值范围均匀切成 2^b-1 段,b 是量化位宽(如 INT8 即 b=8)。段越细,精度损失越小。
- 取整量化每个浮点值 r 除以步长并四舍五入,得到整数 q。这一操作把连续的权重与激活值变成离散整数。
- 反量化还原推理时用整数乘以步长,还原成近似浮点值参与计算,从而用整数运算加速矩阵乘法。
场景局限:灯光不明时的导演盲区
再老练的导演也有无奈时刻:灯光骤暗看不清演员表情,道具堆叠挡住了走位线路,剧本里从没排过“演员突然忘词”的意外。BEV+Transformer 同样有它的盲区——极端天气首当其冲。雨雪雾会让摄像头采集的图像充满噪声,BEV 投影后的特征可靠性大幅下降;障碍物遮挡则会让目标在俯瞰图上“凭空消失”,被大车挡住的行人就是典型。
还有长尾场景问题:真实道路上的罕见情况(逆行三轮车、散落货物、异常施工)在训练数据中出现极少,模型很难学会应对。更重要的是,感知系统并非 100% 可靠,任何单一传感器都可能失效。因此行业通行做法是冗余融合——引入毫米波雷达、激光雷达、高精地图等多源信息互为备份,就像导演在关键段落安排 AB 两组演员,一组失误另一组立刻顶上。
导演的盲区提醒我们:BEV+Transformer 不是万能的上帝之眼,而是需要被认真对待的“强感知组件”。理解它的局限,用冗余与容错设计兜底,才是自动驾驶落地时真正考验工程智慧的地方。
- 单源可靠概率 p_i第 i 个传感器(相机、雷达、地图)正常输出有效信息的概率。单个来源再可靠也存在失效风险。
- 全失效概率假设各源独立,M 个来源同时失效的概率是各自失效概率的乘积——条件越多越安全。
- 系统安全概率用 1 减去全失效概率,得到“至少一路可靠”的总概率。冗余源越多,P_safe 越逼近 1。
AI 应用场景
高速导航辅助驾驶(NOA)
阶段:感知与预测
解决的问题:传统 2D 前视感知在弯道、匝道等场景容易丢失目标,无法把多个摄像头的检测结果统一到同一坐标系,导致下游规划模块“看到的信息互相矛盾”。BEV+Transformer 将所有摄像头特征融合成一张统一俯瞰图,让车辆周边 360 度范围内所有目标的 3D 位置、朝向、速度都出自同一坐标系,规划模块可以直接消费。
具体案例:某车型在高速 NOA 中采用 6 摄像头 BEV+Transformer 方案。车辆行驶至大曲率弯道时,前视摄像头即将丢失旁车道目标,而侧视摄像头依然捕捉到该目标;BEV 融合后,系统稳定输出旁车道车辆的 3D 轨迹与速度,顺利完成自动变道超车。
自动泊车(APA/AVP)
阶段:感知与定位
解决的问题:地下车库光线昏暗、立柱密集,单摄像头视角极易出现盲区。利用环视鱼眼相机 + BEV 融合,系统能够实时生成车位周边鸟瞰图,并检测出车位框、立柱和来往车辆的三维位置,辅助泊车路径规划。
具体案例:某自动泊车系统在黑暗地库中,通过 4 个环视摄像头获取图像,BEV+Transformer 输出车位角点和障碍物 3D 框;即使一个摄像头被立柱短暂遮挡,融合特征依然能维持车位检测,最终完成一键泊入。
车路协同(V2X)路侧感知
阶段:多源融合感知
解决的问题:交叉路口存在大量视觉盲区,车载感知难以预判闯红灯的行人。路侧单元部署多套杆装摄像头,用 BEV+Transformer 融合出路口俯瞰全景,再通过 V2X 下发到车端,相当于给每辆车配了一位“空中导演”。
具体案例:某智能网联示范区在路口部署 4 套高清摄像头,路侧 BEV+Transformer 实时检测行人、非机动车与车辆,当检测到行人即将闯入冲突区域时,系统向 500 米外驶来的车辆推送预警,为自动驾驶提供超视距感知能力。
Python 演示
import numpy as np class BEVTransformer: """极简 BEV+Transformer:多摄像头 -> BEV 网格 -> 自注意力 -> 3D 框""" def __init__(self, bev_size=64, feat_dim=16, n_cams=3): self.bev_size = bev_size self.feat_dim = feat_dim self.n_cams = n_cams self.rng = np.random.default_rng(42) self.W_q = self.rng.normal(0, 0.02, (feat_dim * n_cams, feat_dim)) self.W_k = self.rng.normal(0, 0.02, (feat_dim * n_cams, feat_dim)) self.W_v = self.rng.normal(0, 0.02, (feat_dim * n_cams, feat_dim)) def build_bev_grid(self): # 以自车为中心,前 60m 后 10m、左右各 30m 的 BEV 网格 xs = np.linspace(-60, 10, self.bev_size) ys = np.linspace(-30, 30, self.bev_size // 2) gx, gy = np.meshgrid(xs, ys) return gx, gy def fuse_cameras(self, cam_feats): # 环视相机特征沿通道拼接,等价于把各视角信息投到 BEV 特征 return np.concatenate(cam_feats, axis=-1) def self_attention(self, x): # 简化单头自注意力:QKV 线性变换 + softmax 加权 q = x @ self.W_q k = x @ self.W_k v = x @ self.W_v scores = q @ k.T / np.sqrt(self.feat_dim) e = np.exp(scores - scores.max(axis=-1, keepdims=True)) w = e / e.sum(axis=-1, keepdims=True) return w @ v def detect_3d(self, feat, gx, gy): # 用特征能量最大的格子作为目标中心,回归一个 3D 框 idx = int(np.argmax(feat.sum(axis=-1))) cx, cy = gx.ravel()[idx], gy.ravel()[idx] return np.array([cx, cy, 1.8, 4.6, 2.0, 0.3]) # x,y,z,l,w,h,yaw def infer(self): gx, gy = self.build_bev_grid() n = gx.size cams = [self.rng.normal(0, 0.1, (n, self.feat_dim)) for _ in range(self.n_cams)] bev_feat = self.fuse_cameras(cams) attn_feat = self.self_attention(bev_feat) return self.detect_3d(attn_feat, gx, gy) def main(): model = BEVTransformer() box = model.infer() print("检测到 3D 框: x=%.2f y=%.2f z=%.2f " "l=%.1f w=%.1f h=%.1f yaw=%.2f" % tuple(box)) if __name__ == "__main__": main()
build_bev_grid生成以自车为中心的 BEV 网格坐标,相当于画出舞台平面图的地砖。fuse_cameras把三个相机的特征沿通道拼接,对应正文中的多摄像头特征融合。self_attention用矩阵乘法实现 QKV 自注意力,核心是scores = q @ k.T / np.sqrt(self.feat_dim)的缩放点积。np.exp(scores - scores.max(...))数值稳定的 softmax 实现,防止指数溢出。detect_3d用特征能量最大的格子定位目标中心,并输出 x,y,z,长,宽,高,朝向角。np.argmax(feat.sum(axis=-1))找出注意力聚合后“最亮”的网格位置,即导演注意力最聚焦的演员。infer串联完整流水线:多相机特征 → BEV 融合 → 自注意力 → 3D 检测框。
常见误区
误区我以为 BEV 就是把前视摄像头拍到的画面做个透视变换,像 PS 里把图片“压扁”成俯视效果,拉伸一下就行。
正解BEV 是在特征层面而非像素层面完成的投影。每个摄像头先提取 2D 特征图,再按外参把特征采样到统一的三维地面网格上。单纯的图像拉伸会丢失深度信息和遮挡关系,而特征级 BEV 融合让多个视角的信息在统一坐标下互补,这才是它“看得全”的根本原因。
为何常见:因为 BEV 这个词听起来像是“视角变换”,初学者容易把它类比成手机全景照片的拼接,忽略了背后坐标变换与特征融合的复杂性。
误区既然 Transformer 的注意力能让每个格子看到全图,那单帧 BEV 就足够感知了,为什么还要缓存历史帧做时序建模?
正解空间注意力解决的是“现在哪里有什么”,时序建模解决的是“目标怎么运动”。单帧无法区分静止与慢速移动的车辆,更无法预测切入轨迹。历史帧缓存 + 时序注意力让模型具备速度与运动趋势的估计能力,这是规划模块做决策的必要输入。
为何常见:注意力机制的“全局感知”光环太强,让人误以为它天然包含时间维度;实际上 QKV 操作的是同一时刻的特征,时间维度需要显式建模。
误区车身装 8 个、10 个摄像头,视野重叠越多,BEV 融合的信息就更丰富,效果当然更好。
正解摄像头增多会带来标定误差累积、算力开销上升、特征对齐困难等问题。重叠视野区域的融合权重需要精心设计,否则可能出现“同一个目标被重复检测”的混乱。实际方案往往在覆盖度与工程成本之间折中,6 个环视摄像头是当前主流选择。
为何常见:直觉上“信息越多越好”,但忽略了传感器融合中“多源不一致”带来的新问题。
误区3D 检测不就是给 2D 框加一个深度值吗?在 BEV 图上画矩形框而已,难度差不多。
正解3D 检测需要同时回归中心点三维坐标、长宽高和朝向角,且要处理深度估计的固有歧义——同一像素可能对应不同距离的物体。朝向角回归还存在角度周期性(0 度和 360 度相同)的问题,普通 L1 损失会在这附近产生巨大误差。两者难度完全不在一个量级。
为何常见:直观上“都叫框”,其实 3D 检测是从 2D 图像反推完整物理空间信息,本质上是逆投影问题。
误区在 GPU 服务器上测试精度达标,直接导出模型放到车载芯片上就能跑,最多慢一点。
正解车载计算平台的算力与功耗远低于训练服务器,且实时性要求苛刻(单帧必须在几十毫秒内完成)。FP32 模型直接部署往往无法达到实时帧率,必须经过量化(INT8)、TensorRT 加速、知识蒸馏等优化手段,并重新进行精度与速度的联合验证。部署是系统工程,不是“导出一份模型”这么简单。
为何常见:实验室环境通常只关注精度指标,而车上还叠加了算力、功耗、延迟、温度等物理约束,这些在开发阶段容易被忽略。
面试题
Q1. BEV 在自动驾驶感知中的含义是什么?
- A.边界视角图
- B.鸟瞰视图← 正确答案
- C.双目视觉
- D.背景视图
答案:B。BEV 全称 Bird's Eye View,指鸟瞰视角。它把多个摄像头画面投影到以自车为中心的俯视平面,如同导演从空中俯瞰舞台。A、D 是望文生义的干扰项,C 是另一种视觉方案,均与“鸟瞰”无关。
Q2. 多摄像头融合前必须先完成哪一步?
- A.特征直接拼接
- B.相机外参标定← 正确答案
- C.计算回归损失
- D.模型剪枝量化
答案:B。外参标定决定了每个摄像头在车上的位置与朝向,是特征对齐到 BEV 网格的前提,相当于先确认每台摄影机的机位。没有标定,多相机特征会投到错误位置,后续融合与检测都无从谈起。
Q3. 注意力公式中除以 √d_k 的主要作用是什么?
- A.加快模型收敛速度
- B.缓解梯度消失问题
- C.稳定注意力分数尺度← 正确答案
- D.增加网络参数数量
答案:C。Q 与 K 的点积随维度 d_k 增大而变大,直接进 softmax 会进入饱和区导致梯度极小。除以 √d_k 把分数拉回到合适范围,梯度更稳定。它不直接“加快收敛”或“增加参数”,而是维持分数分布的数值稳定。
Q4. BEV 感知相比前视感知的核心优势是什么?
- A.完全不需要任何标定
- B.统一坐标下融合感知← 正确答案
- C.算力需求大幅更低
- D.无需标注数据训练
答案:B。BEV 把多摄像头、多帧信息统一到同一坐标系的俯视平面,下游规划模块直接消费这份“共同语言”。它依然需要标定、依然耗算力、依然需要标注数据,因此排除其余三项。
Q5. 3D 检测头通常回归目标的哪些属性?
- A.目标中心点三维坐标← 正确答案
- B.目标的长宽高尺寸← 正确答案
- C.目标朝向角与航向← 正确答案
- D.目标的像素颜色值
答案:ABC。3D 检测需要输出中心点 (x,y,z)、物理尺寸 (l,w,h) 和朝向角 yaw,以便规划模块理解目标的完整空间状态。像素颜色属于 2D 外观信息,不是 3D 检测的回归目标。
Q6. Transformer 时序建模中,历史帧特征如何参与计算?
- A.直接丢弃以节省算力
- B.作为查询与时序注意力← 正确答案
- C.每帧独立推理再合并
- D.拼接输入图像进网络
答案:B。历史帧 BEV 特征被缓存为“记忆状态”,当前帧作为查询,通过时序注意力让模型在历史与当前之间建立关联。直接丢弃就失去记忆能力,独立推理无法建模帧间运动,简单拼接图像也忽略了时间结构。
Q7. 投影公式 p=K[R|t]P 中,K 代表什么?
- A.相机外参转换矩阵
- B.相机内参投影矩阵← 正确答案
- C.旋转平移刚体矩阵
- D.透镜畸变修正系数
答案:B。K 是内参矩阵,包含焦距与主点,描述镜头如何把三维点投影到像素平面。[R|t] 才是外参,负责把世界坐标转成相机坐标。畸变修正是相机标定中的另一个环节,不属于 K 本身。
Q8. 部署 BEV+Transformer 到车载平台时,常用哪些优化手段?
- A.模型权重量化压缩← 正确答案
- B.TensorRT 推理加速← 正确答案
- C.无限增大模型规模
- D.知识蒸馏轻量化← 正确答案
答案:ABD。量化(FP16/INT8)压缩模型体积并加速,TensorRT 等推理引擎做算子融合与内存优化,知识蒸馏让大模型教导小模型以保住精度。增大模型规模与车载实时性需求相悖,属于错误选项。
Q9. BEV 网格的 cell_size 增大时会发生什么?
- A.感知分辨率越高越好
- B.感知分辨率相应降低← 正确答案
- C.检测精度一定提升
- D.对感知结果没影响
答案:B。cell_size 是每个网格格子的物理尺寸,格子越大意味着单位面积上的特征越粗放,分辨率越低,小目标越容易被“抹平”。cell_size 越小分辨率越高,但算力开销也越大,因此需要平衡。
Q10. 下列哪些是 BEV+Transformer 感知的场景局限?
- A.雨雪天气引入大量噪声← 正确答案
- B.障碍物遮挡导致特征缺失← 正确答案
- C.长尾奇观场景样本稀少← 正确答案
- D.多相机视野重叠必能提升鲁棒性
答案:ABC。雨雪降低图像质量、遮挡让目标在 BEV 上消失、长尾场景训练数据不足,都是真实局限。D 说法过于绝对:视野重叠提升融合收益不是必然的,且依赖标定与融合权重设计,并非“必能提升鲁棒性”。