Bootstrap

Apollo源码分析:详细捋一遍Lidar 障碍物检测

Apollo源码分析:详细捋一遍Lidar 障碍物检测

附赠自动驾驶最全的学习资料和量产经验:链接

1. 从 Component 出发

因为有了之前红绿灯检测代码分析的经验,我们自然能够知道感知任务先从它的 component 开始。

lidar 检测的 component 是 modules/perception/onboard/component/detection_component.cc

梳理代码可以得到基础的流程框架:

image

1.1 initConfig

initConfig 从本地目录中读取 proto 文件,然后配置变量。 那么,如何知道从哪里读取呢? modules/perception/production/dag/dag_streaming_perception_lidar.dag 在 dag 目录下有配置。

image

我们只需找到 lane_detection_component.config 文件。

/apollo/modules/perception/production/conf/perception/lidar/velodyne128_detection_conf.pb.txt

image

配置文件说明了激活高精度地图,然后检测的结果存放在 DetectionObjects 这个 channel。

1.2 initAlgorithmPlugin

;