Apollo2.0自动驾驶howto文件夹之how_to_run_perception_module_on_your_local_computer.md

/****************Apollo源码分析****************************

Copyright 2018 The File Authors & zouyu. All Rights Reserved.
Contact with: 1746430162@qq.com 181663309504

源码主要是c++实现的,也有少量python,git下载几百兆,其实代码不太多,主要是地图和数据了大量空间,主要程序
在apollo/modules目录中,
我们把它分成以下几部分(具体说明见各目录下的modules):
感知:感知当前位置,速度,障碍物等等
Apollo/modules/perception
预测:对场景下一步的变化做出预测
Apollo/modules/prediction
规划:
(1) 全局路径规划:通过起点终点计算行驶路径
Apollo/modules/routing
(2) 规划当前轨道:通过感知,预测,路径规划等信息计算轨道
Apollo/modules/planning
(3) 规划转换成命令:将轨道转换成控制汽车的命令(加速,制动,转向等)
Apollo/modules/control
其它
(1) 输入输出
i. Apollo/modules/drivers 设备驱动
ii. Apollo/modules/localization 位置信息
iii. Apollo/modules/monitor 监控模块
iv. Apollo/modules/canbus 与汽车硬件交互
v. Apollo/modules/map 地图数据
vi. Apollo/modules/third_party_perception 三方感知器支持
(2) 交互
i. Apollo/modules/dreamview 可视化模块
ii. Apollo/modules/hmi 把汽车当前状态显示给用户
(3) 工具
i. Apollo/modules/calibration 标注工具
ii. Apollo/modules/common 支持其它模块的公共工具
iii. Apollo/modules/data 数据工具
iv. Apollo/modules/tools 一些Python工具
(4) 其它
i. Apollo/modules/elo 高精度定位系统,无源码,但有文档
ii. Apollo/modules/e2e 收集传感器数据给PX2,ROS

自动驾驶系统先通过起点终点规划出整体路径(routing);然后在行驶过程中感知(perception)当前环境
(识别车辆行人路况标志等),并预测下一步发展;然后把已知信息都传入规划模块(planning),规划出之后的轨道;
控制模块(control)将轨道数据转换成对车辆的控制信号,通过汽车交互模块(canbus)控制汽车.
我觉得这里面算法技术含量最高的是感知perception和规划planning,具体请见本博客中各模块的分析代码。
/****************************************************************************************


#如何在本地计算机上运行感知模块
       感知模块需要安装Nvidia GPU和CUDA以与Caffe一起运行感知算法。我们已经在发布的docker中安装了CUDA和Caffe库。但是,Nvidia GPU驱动程序未安装在发布的dev docker镜像中。要使用CUDA加速运行感知模块,我们建议在Docker中安装与您的主机中安装的完全相同版本的Nvidia驱动程序,并使用GPU选项构建Apollo。

我们提供有关使用Nvidia GPU运行感知模块的分步说明,如下所示:
1.修改脚本`./ docker / scripts / dev_start.sh`,通过在命令`docker run -it`中添加两个选项行,从主机上挂载linux内核的库和源代码:
```
-v / usr / src:/ usr / src
-v / lib / modules:/ lib / modules
```
2.启动发布的Docker镜像,并使用root权限进入docker:
```
./docker/scripts/dev_start.sh
docker exec -it apollo_dev / bin / bash
```
3.下载正式的Nvidia驱动程序安装文件,该文件应与主机中安装的文件完全相同。我们推荐375.39的版本:
```
wget http://us.download.nvidia.com/XFree86/Linux-x86_64/375.39/NVIDIA-Linux-x86_64-375.39.run
```

4.在Docker中安装Nvidia驱动程序(以Linux-x86-375.39版本为例):
```
源/apollo/scripts/install_gcc.sh
ln -s / usr / bin / cc / usr / bin / cc1
chmod + x ./NVIDIA-Linux-x86_64-375.39.run
./NVIDIA-Linux-x86_64-375.39.run --no-opengl-files -a -s
源/apollo/scripts/recover_gcc.sh
rm / usr / bin / cc1
```

5.提交一个新的docker映像(在主机中):
```
docker commit CONTAINER_ID apolloauto / apollo:NEW_DOCKER_IMAGE_TAG
```

6.启动新的docker映像(在主机中)并进入docker:
```
./docker/scripts/dev_start.sh NEW_DOCKER_IMAGE_TAG
./docker/scripts/dev_into.sh
```

7.使用GPU选项构建Apollo(在docker中):
```
./apollo.sh build_gpu
```
要么
```
./apollo.sh build_opt_gpu
```

       现在感知模块可以用命令`./scripts/perception.sh start`在GPU模式下运行。请注意,即使知觉模块在Caffe CPU_ONLY模式下运行,也应如上所示正确安装Nvidia驱动程序(即使用./apollo.sh build或./apollo.sh build_opt来构建感知模块)。请参阅感知自述文件(https://github.com/ApolloAuto/apollo/blob/master/modules/perception/README.md)中知觉模块的详细说明。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值