作者 | 哎嗨人生 编辑 | 哎嗨人生
点击下方卡片,关注“自动驾驶之心”公众号
戳我-> 领取自动驾驶近15个方向学习路线
本文只做学术分享,如有侵权,联系删文
网友提问:
“我也了解自驾厂很多都用C++来写代码,我也学习了C++。但如果用C++的话,我应该怎么搭建去搭建仿真的环境呢?比如说要用到哪些软件?(我在一些评论区有看到Linux和ros,但不是很了解)” --普拉斯兔同学
仿真环境的搭建
1.自己搭建仿真环境
可视化主要就是绘制障碍物,绘制机器人本体,绘制轨迹等。上边的三个方法都可以方便的绘制各种图形和各种颜色。
当然,搭建仿真环境的目的,只是为了验证自己的代码,比如我是想开发一个规划算法,那对我来说,核心开发内容是规划模块,剩余其他各个模块,都是辅助模块,即能够提供给规划模块相应的仿真输入即可,比如下图所示的架构图:
仿真环境主要是两个功能,一是提供相应的输入,二是将结果可视化。可视化我常用的有三种方式:
opencv
https://github.com/onlytailei/CppRobotics
python
https://github.com/AtsushiSakai/PythonRobotics
matplotlibcpp
https://github.com/alexliniger/MPCC
2.ros仿真工具
ROS中存在webots、gazebo、stage三种仿真环境。我自己用过的是gazebo和stage。
gazebo:提供一个仿真的物理世界(3D)
stage:提供一个简化的仿真物理世界(2D)
ros navigation导航包:提供感知和导航算法
turtlebot: 提供一个仿真的机器人模型(包含传感器,执行器)
这四个加起来,就可以跑仿真了。
具体如何仿真可以参考:
https://www.ncnynl.com/category/ros1-easy3/
https://www.bilibili.com/video/BV1Ci4y1L7ZZ/?spm_id_from=333.337.search-card.all.click&vd_source=c22e088abc8e5f41edd4d4ebc99ecc48
3.自动驾驶仿真平台
仿真平台的作用是提供模拟的世界和传感器,自动驾驶算法软件则需要如apollo和autoware提供。
CARLA: 开源的自动驾驶仿真平台,提供了丰富的环境和场景来测试自动驾驶系统。CARLA设计了多种传感器模拟和详细的环境设置,支持自定义场景和传感器配置。
LGSVL Simulator: 由LG电子的先进研究院开发的一个高性能仿真平台,支持多种传感器模型和动态环境条件。LGSVL Simulator与多个自动驾驶开发框架(如Apollo和Autoware)集成,支持自动驾驶系统的端到端测试。
投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!
① 全网独家视频课程
BEV感知、BEV模型部署、BEV目标跟踪、毫米波雷达视觉融合、多传感器标定、多传感器融合、多模态3D目标检测、车道线检测、轨迹预测、在线高精地图、世界模型、点云3D目标检测、目标跟踪、Occupancy、cuda与TensorRT模型部署、大模型与自动驾驶、Nerf、语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习)
② 国内首个自动驾驶学习社区
国内最大最专业,近3000人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知(2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、大模型、端到端等,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

③【自动驾驶之心】技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦感知、定位、融合、规控、标定、端到端、仿真、产品经理、自动驾驶开发、自动标注与数据闭环多个方向,目前近60+技术交流群,欢迎加入!扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)
④【自动驾驶之心】全平台矩阵