数据模型
MetaCar 库使用了丰富的数据模型来表示场景中的各种元素,包括道路、车辆、交通灯等。这些数据模型都是使用 pydantic 的 BaseModel 实现的,提供了类型提示、自动生成的初始化方法以及更好的代码可读性,使得开发者能够更清晰地理解和使用这些数据结构。
单位说明
除特别说明外,文档中涉及的物理量默认使用以下单位:
长度(Length):米 (m)
时间(Time):秒 (s)
速度(Speed):米每秒 (m/s)
场景和道路相关
子场景信息
道路线类型
边界信息
车道信息
- pydantic model metacar.LaneInfo[源代码]
车道信息
- field id: str [Required]
车道 ID
- field left_border: BorderInfo [Required]
左侧边界
- field left_lane_id: str [Required]
左侧车道 ID
- field right_border: BorderInfo [Required]
右侧边界
- field right_lane_id: str [Required]
右侧车道 ID
- field width: float [Required]
车道宽度
道路驾驶类型
交通标志类型
道路信息
- pydantic model metacar.RoadInfo[源代码]
道路信息,一条道路(Road)由一个或多个车道(Lane)组成
- field driving_type: DrivingType [Required]
行驶类型
- field id: str [Required]
道路 ID
- field predecessor_ids: list[str] [Required]
前驱道路 ID
- field successor_ids: list[str] [Required]
后继道路 ID
- field traffic_sign_type: TrafficSignType [Required]
交通标志
场景静态数据
- pydantic model metacar.SceneStaticData[源代码]
场景静态信息
- field sub_scenes: list[SubSceneInfo] [Required]
子场景信息
- field vla_extension: VLAExtension | None [Required]
VLA 扩展信息,该字段不为 None 时表示是 VLA 场景
车辆和位置相关
位姿信息
- pydantic model metacar.PoseGnss[源代码]
车辆位姿信息
- field ori_x: float [Required]
欧拉角 X(单位:角度)
- field ori_y: float [Required]
欧拉角 Y(单位:角度)
- field ori_z: float [Required]
欧拉角 Z(单位:角度)
- field pos_x: float [Required]
位置 X
- field pos_y: float [Required]
位置 Y
- field pos_z: float [Required]
位置 Z
- field vel_x: float [Required]
速度 X
- field vel_y: float [Required]
速度 Y
- field vel_z: float [Required]
速度 Z
档位模式
主车信息
- pydantic model metacar.MainVehicleInfo[源代码]
主车信息
- field brake: float [Required]
刹车
- field brake_lights_on: bool [Required]
刹车灯
- field hazard_lights_on: bool [Required]
双闪
- field headlights_on: bool [Required]
前灯
- field height: float [Required]
高度
- field id: int [Required]
主车 ID
- field left_blinker_on: bool [Required]
左转向灯
- field length: float [Required]
长度
- field right_blinker_on: bool [Required]
右转向灯
- field speed: float [Required]
车速
- field steering: float [Required]
方向盘
- field throttle: float [Required]
油门
- field width: float [Required]
宽度
传感器相关
欧拉角
摄像头信息
传感器信息
- pydantic model metacar.SensorInfo[源代码]
传感器信息
- field ego_rgb_cams: list[CameraInfo] [Required]
主车摄像头
- field v2x_cams: list[CameraInfo] [Required]
V2X 摄像头
障碍物相关
障碍物类型
- class metacar.ObstacleType(*values)[源代码]
基类:
Enum障碍物类型
- UNKNOWN = 0
未知障碍物
- PEDESTRIAN = 4
行人
- CAR = 6
小汽车
- STATIC = 7
静态障碍物
- BICYCLE = 8
自行车
- ROAD_MARK = 12
道路标记
- TRAFFIC_SIGN = 13
交通标志
- TRAFFIC_LIGHT = 15
交通信号灯
- RIDER = 17
骑手
- TRUCK = 18
卡车
- BUS = 19
公交车
- SPECIAL_VEHICLE = 20
特种车辆
- MOTORCYCLE = 21
摩托车
- DYNAMIC = 22
动态障碍物
- SPEED_LIMIT_SIGN = 26
限速标志(限速值以 "SpeedLimit|30"(单位:km/h) 的格式在
ObstacleInfo.extra_info中给出)
- BICYCLE_STATIC = 27
静止自行车
- ROAD_OBSTACLE = 29
道路障碍物
- PARKING_SLOT = 30
停车位
障碍物信息
- pydantic model metacar.ObstacleInfo[源代码]
障碍物信息
- field extra_info: str | None [Required]
额外信息
- field height: float [Required]
高度
- field id: int [Required]
障碍物 ID
- field length: float [Required]
长度
- field ori_x: float [Required]
欧拉角 X(单位:角度)
- field ori_y: float [Required]
欧拉角 Y(单位:角度)
- field ori_z: float [Required]
欧拉角 Z(单位:角度)
- field pos_x: float [Required]
位置 X
- field pos_y: float [Required]
位置 Y
- field pos_z: float [Required]
位置 Z
- field type: ObstacleType [Required]
障碍物类型
- field vel_x: float [Required]
速度 X
- field vel_y: float [Required]
速度 Y
- field vel_z: float [Required]
速度 Z
- field width: float [Required]
宽度
交通灯相关
交通灯状态
交通灯信息
- pydantic model metacar.TrafficLightInfo[源代码]
一排交通灯的信息
- field id: str [Required]
交通灯 ID
- field left_remaining_time: float [Required]
左转剩余时间
- field left_state: TrafficLightState [Required]
左转状态
- field right_remaining_time: float [Required]
右转剩余时间
- field right_state: TrafficLightState [Required]
右转状态
- field road_id: str [Required]
道路 ID
- field straight_remaining_time: float [Required]
直行剩余时间
- field straight_state: TrafficLightState [Required]
直行状态
交通灯组信息
- pydantic model metacar.TrafficLightGroupInfo[源代码]
交通灯组信息,一组交通灯共同表示一个路口的信号灯信息。
- field id: str [Required]
交通灯组 ID
- field traffic_lights: list[TrafficLightInfo] [Required]
交通灯信息
场景状态与控制
场景状态
仿真动态信息
- pydantic model metacar.SimCarMsg[源代码]
仿真动态信息
- field main_vehicle: MainVehicleInfo [Required]
主车信息
- field obstacles: list[ObstacleInfo] [Required]
障碍物信息
- field scene_status: SceneStatus [Required]
场景状态信息
- field sensor: SensorInfo [Required]
传感器信息
- field traffic_light_groups: list[TrafficLightGroupInfo] [Required]
交通灯组信息
车辆控制信息
- pydantic model metacar.VehicleControl[源代码]
车辆控制信息
- field brake: float = 0.0
刹车(0~1)
- field hazard_lights_on: bool = False
双闪
- field headlights_on: bool = False
前灯
- field left_blinker_on: bool = False
左转向灯
- field right_blinker_on: bool = False
右转向灯
- field steering: float = 0.0
方向盘(-1~1)
- field throttle: float = 0.0
油门(0~1)
摄像头图像数据
VLA 场景相关
VLA场景是一类特殊场景,详细说明和使用方法请参见 VLA 场景指南。
VLA 建筑物信息
- pydantic model metacar.BuildingInfo[源代码]
建筑物信息
- field height: float [Required]
高度
- field id: str [Required]
建筑物 ID
- field length: float [Required]
长度
- field name: str [Required]
建筑物名称
- field ori_x: float [Required]
欧拉角 X(单位:角度)
- field ori_y: float [Required]
欧拉角 Y(单位:角度)
- field ori_z: float [Required]
欧拉角 Z(单位:角度)
- field pos_x: float [Required]
位置 X
- field pos_y: float [Required]
位置 Y
- field pos_z: float [Required]
位置 Z
- field width: float [Required]
宽度
VLA 区域类型
VLA 区域信息
- pydantic model metacar.RegionInfo[源代码]
区域信息
- field id: str [Required]
区域 ID
- field length: float [Required]
长度
- field ori_x: float [Required]
欧拉角 X(单位:角度)
- field ori_y: float [Required]
欧拉角 Y(单位:角度)
- field ori_z: float [Required]
欧拉角 Z(单位:角度)
- field pos_x: float [Required]
位置 X
- field pos_y: float [Required]
位置 Y
- field pos_z: float [Required]
位置 Z
- field type: RegionType [Required]
区域类型
- field width: float [Required]
宽度
VLA 场景扩展信息
- pydantic model metacar.VLAExtension[源代码]
VLA 扩展信息
- field buildings: list[BuildingInfo] [Required]
建筑物信息
- field regions: list[RegionInfo] [Required]
区域信息
VLA 场景文本输出
VLA 功能区违规信息
VLA 功能区检测结果
- pydantic model metacar.FunctionZoneResult[源代码]
功能区检测结果
- field violations: list[FunctionZoneViolation] [Required]
违规列表
VLA 停车区检测结果
VLA 场景扩展输出
- pydantic model metacar.VLAExtensionOutput[源代码]
VLA 场景的扩展输出
- field function_zone_result: FunctionZoneResult | None = None
功能区检测结果
- field parking_result: ParkingResult | None = None
停车区检测结果
- field text_info: VLATextOutput | None = None
文本相关输出