Carla 仿真器坐标系与智能体控制详解

自动驾驶仿真器 Carla 是一款基于 Unreal Engine 开发的开源仿真平台,广泛应用于自动驾驶算法的训练与测试。然而,许多初学者在使用 Carla 时会遇到一个令人困惑的问题:Carla 的坐标系与常见的车辆动力学标准不一致。本文将深入剖析 Carla 的坐标系统、智能体控制方式,以及与官方标准的差异。 一、为什么会有不同的坐标系? 在深入 Carla 之前,有必要先理解一个根本性问题:为什么计算机图形学和传统工程学使用不同的坐标系? 左手系 vs 右手系 坐标系的"手性"(chirality)由三个坐标轴的相对方向决定: 右手坐标系: X → Y → Z 顺时针排列 (右手拇指指向 X,食指指向 Y,中指指向 Z) 左手坐标系: X → Y → Z 逆时针排列 传统工程领域的统一选择:数学、物理学、机械工程等领域普遍采用右手坐标系。国际标准 ISO 8855:2011(道路车辆动力学术语)明确规定使用右手坐标系,Z 轴向上。ASAM OpenDRIVE、OpenSCENARIO 等交通仿真标准也都遵循这一约定。 计算机图形学的混乱局面:计算机图形学领域没有形成统一标准。 DirectX(Microsoft):传统上使用左手坐标系 OpenGL:传统上使用右手坐标系 Unreal Engine:采用左手坐标系,Z 轴向上 这种差异源于历史原因:不同图形 API 在设计时做出了不同的选择,而现代图形管道实际上支持两种坐标系,关键在于投影矩阵的设置。但作为后果,整个计算机图形学领域形成了一个"各种坐标系混杂"的局面。 二、Carla 的坐标系统详解 Carla 完全继承了 Unreal Engine 的左手坐标系约定。 全局坐标系 Z (Up) ↑ | | |------→ Y (Right) / / ↙ X (Forward) 对于站在原点、面向正 X 方向的观察者: ...

March 11, 2026 · 3 min · Yunqing