apollo_localization_msf_lidar

/apollo/localization/msf_lidar 数据通道(channel)是 Apollo 系统的定位模块输出的包含定位数据消息的通道。 本文档介绍 /apollo/localization/msf_lidar 通道里各数据字段的含义。

前提条件

您需要提前了解:

通道数据解释

/apollo/localization/msf_lidar 通道示例

参考快速上手播放 demo_3.5.record 的数据包后,您可以通过 Cyber Monitor 工具查看数据包里的全部的通道信息。 其中,/apollo/localization/msf_lidar 通道内的数据如下所示。

ChannelName: /apollo/localization/msf_lidar
MessageType: apollo.localization.LocalizationEstimate
FrameRatio: 4.89
RawMessage Size: 155 Bytes
header:
  timestamp_sec: 1620887178.688733578
pose:
  position:
    x: 427391.824443607
    y: 4438691.758315713
    z: 35.141680406
  orientation:
    qx: 0.006320360
    qy: 0.003169230
    qz: 0.996087748
    qw: -0.088086363
uncertainty:
  position_std_dev:
    x: 0.000481373
    y: 0.007871382
    z: 0.000000000
  orientation_std_dev:
    x: 0.000000000
    y: 0.000000000
    z: 0.000006854
measurement_time: 1620887178.688733578
msf_status:
  local_lidar_status: MSF_LOCAL_LIDAR_NORMAL
  local_lidar_quality: MSF_LOCAL_LIDAR_GOOD

整个数据通道内的数据可以分为两部分:CyberRT 框架定义的元数据和通道对应的消息格式(Message)所定义的消息数据。

CyberRT 框架定义的元数据

该部分包括 ChannelName、MessageType、FrameRatio、RawMessage Size 数据字段,参见 数据通道。

ChannelName: /apollo/localization/msf_lidar
MessageType: apollo.localization.LocalizationEstimate
FrameRatio: 4.89
RawMessage Size: 155 Bytes

其中,MessageType 定义了当前通道对应的消息格式(Message)为apollo.localization.LocalizationEstimate。

消息格式(Message)所定义的消息数据

该部分数据字段由 apollo.localization.LocalizationEstimate 消息格式(Message)定义。

header:
  timestamp_sec: 1620887178.688733578
pose:
  position:
    x: 427391.824443607
    y: 4438691.758315713
    z: 35.141680406
  orientation:
    qx: 0.006320360
    qy: 0.003169230
    qz: 0.996087748
    qw: -0.088086363
uncertainty:
  position_std_dev:
    x: 0.000481373
    y: 0.007871382
    z: 0.000000000
  orientation_std_dev:
    x: 0.000000000
    y: 0.000000000
    z: 0.000006854
measurement_time: 1620887178.688733578
msf_status:
  local_lidar_status: MSF_LOCAL_LIDAR_NORMAL
  local_lidar_quality: MSF_LOCAL_LIDAR_GOOD

下一小节,将逐一详细介绍这部分消息的数据字段含义。

apollo.localization.LocalizationEstimate 等消息格式(Message)定义的数据字段

apollo.localization.LocalizationEstimate 消息格式(Message)

msf_lidar Channel 中使用了如下几个重要数据字段。

数据名称 数据解释 Protobuf Message 定义
header 头信息 由 apollo.common.Header 定义
pose 位置姿态 由 apollo.localization.Pose 定义
uncertainty 不确定度 由 apollo.localization.Uncertainty 定义
measurement_time 测量时间 双精度浮点 double
msf_status 融合定位状态 apollo.localization.MsfStatus 定义

apollo.localization.Pose 消息格式(Message)

在 Cyber Monitor 工具中查看 /apollo/localization/pose 可以看到第一部分 pose 字段的具体数据,该字段数据是由 apollo.localization.Pose 消息格式(Message)定义的。

pose 示例如下:

pose:
  position:
    x: 427391.824443607
    y: 4438691.758315713
    z: 35.141680406
  orientation:
    qx: 0.006320360
    qy: 0.003169230
    qz: 0.996087748
    qw: -0.088086363

msf_lidar Channle 中使用了 apollo.localization.Pose 消息格式(Message)的以下数据字段。

数据名称 数据解释 取值范围 单位/字段类型
position ENU坐标系下的位置坐标 - apollo.common.PointENU
position-x ENU坐标系下的x轴位置坐标 -∞,+∞ m
poxition-y ENU坐标系下的y轴位置坐标 -∞,+∞ m
position-z ENU坐标系下的z轴位置坐标 -∞,+∞ m
orientation ENU坐标系下的姿态值(四元数) - apollo.common.Quaternion
orientation-x ENU坐标系下的x轴姿态值(四元数) -1.0, 1.0 1
orientation-y ENU坐标系下的y轴姿态值(四元数) -1.0, 1.0 1
orientation-z ENU坐标系下的z轴姿态值(四元数) -1.0, 1.0 1
orientation-w ENU坐标系下的w轴姿态值(四元数) -1.0, 1.0 1

apollo.localization.Uncertainty 消息格式(Message)

uncertainty 示例如下:

uncertainty:
  position_std_dev:
    x: 0.000481373
    y: 0.007871382
    z: 0.000000000
  orientation_std_dev:
    x: 0.000000000
    y: 0.000000000
    z: 0.000006854

msf_lidar Channel 中使用了 apollo.localization.Uncertainty 消息格式(Message)的以下字段:

数据名称 数据解释 取值范围 单位/字段类型
position_std_dev 位置标准差 - apollo.common.Point3D
position_std_dev-x x轴位置标准差 0,+∞ m
position_std_dev-y y轴位置标准差 0,+∞ m
position_std_dev-z z轴位置标准差 0,+∞ m
orientation_std_dev 姿态标准差 - apollo.common.Point3D
orientation_std_dev-x x轴姿态标准差 0,+∞ rad
orientation_std_dev-y y轴姿态标准差 0,+∞ rad
orientation_std_dev-z z轴姿态标准差 0,+∞ rad

apollo.localization.MsfStatus 消息格式(Message)

msf_status 示例如下:

msf_status:
  local_lidar_status: MSF_LOCAL_LIDAR_NORMAL
  local_lidar_quality: MSF_LOCAL_LIDAR_GOOD

msf_lidar Channel 中使用了 apollo.localization.MsfStatus 消息格式(Message)的以下字段:

数据名称 数据解释 单位/字段类型
local_lidar_status LiDAR 定位状态 apollo.localization.LocalLidarStatus
local_lidar_quality LiDAR 定位质量 apollo.localization.LocalLidarQuality

深入了解 LocalizationEstimate 数据类型

深入了解apollo.localization.LocalizationEstimate 等消息格式(Message)定义,参见 localization.proto 文件。关于 protobuf 与消息格式(Message)的关系,参见 消息格式。

文档意见反馈

如果您在使用文档时遇到任何问题,请到我们在【开发者社区】建立的 反馈意见收集问答页面,反馈相关的问题。我们会根据反馈意见对文档进行迭代优化。

apollo_localization_msf_status预测模块