从零开始学习自动驾驶路径规划实战(包括Apollo,autoware规划算法等,以及一些基础控制算法)

自动驾驶路径规划控制ros1和ros2移植Apollo和autoware规控算法可跑工程(适合入门学习,科研和实战),不仅包括移植Apollo和autoware规划算法,还包括其他规划算法,与carla联合仿真实现规划控制,autoware-carla联合仿真,Lanelet高精度地图构建,强化学习等等,基本涵盖了公司算法的基本要求。从入门到掌握的一系列算法的应用,学会工程代码实战,包括ros1和ros2。具体效果视频请看主页视频:
bibi个人主页
注意,本套优化理论涉及比较浅,主要以丰富实战经验为主!介意者慎拍。作者只测试了ubuntu18.04和ubuntu20.04双系统,工程是源码形式,只有autoware.ai才有docker。虚拟机的carla容易出问题,虽然可以自己用docker系统测试,但也慎拍。没有接触过ros1和ros2,还有Ubuntu基础的,也可以购买,虽然说套餐以学习算法开发为主,但是ros和ubuntu这些基础知识,在群里多多少少也会有交流,也可以同步学习到。

经过和群友的学习测试,通过以下ros版本:
ros1: melodic, noetic
ros2:eloquent, foxy, galactic

共九个套餐,每个套餐包含的内容如下:

(1)整套-涵盖的内容如下:

前言课第一节-ros工程的创建第一节-运行环境和工程目录简介第二节-工程运行和小车模型搭建简介第二节-车辆里程计第三节-地图路线构建方法第三节-参考线平滑函数第三节-参考线平滑原理(一)第三节-参考线平滑原理(二) 第四节-lqr控制器、pid控制器、stanley控制器、pure_pursuit控制器代码简介(已添加mpc控制算法)第五节-局部规划器代码简介第五节-Frenet坐标系和参考线参数计算第六节-模拟障碍物的生成函数介绍第六节-模拟障碍物的生成方法介绍第六节-障碍物函数类的介绍第七节-基于Frenet采样规划原理(一)第七节-基于Frenet采样规划原理(二) 第七节-基于Frenet采样规划原理(三) 第七节-基于Frenet采样规划总结第七节-基于Frenet采样规划的补充-停止模式第八节-Lattice规划算法-函数介绍(第八节-Lattice规划算法原理一)第八节-Lattice规划算法-障碍物的SL图和ST图(一)第八节-Lattice规划算法-障碍物的SL图和ST图(二)第八节-Lattice规划算法-巡航模式的速度采样第八节-Lattice规划算法-超车和跟车速度采样(一)第八节-Lattice规划算法-超车和跟车速度采样(二) 第八节-Lattice规划算法-横向采样与二次规划 第八节-Lattice规划算法-二次规划(一)第八节-Lattice规划算法-二次规划(二) 第八节-Lattice规划算法-二次规划(三)第八节-Lattice规划算法一-代价函数 第八节-Lattice规划算法-合成函数和碰撞检测 第八节-Lattice规划算法效果演示第九节-Em规划算法-函数介绍第九节-Em规划算法-路径规划DP介绍第九节-Em规划算法-路径规划QP函数介绍第九节-Em规划算法-路径规划QP原理和效果显示第九节-Em规划算法-速度规划DP介绍第九节-Em规划算法-速度规划QP介绍第九节-Em规划算法-效果演示(只有静态避障)第十节-混合A星算法(一) 第十节-混合A星算法(二) 第十节-混合A星算法(三) 第十节-混合A星算法(四) 第十节-混合A星算法(五) 第十节-混合A星算法效果演示-泊车场景第十一节-变道规划算法-变道算法介绍第十一节-变道规划算法-Lattice超车和跟车效果演示第十一节-变道规划算法-变道算法决策过程(一)第十一节-变道规划算法-变道算法决策过程(二) 第十一节-变道规划算法-效果演示第十二节-open planner规划算法-介绍第十二节-open planner规划算法-效果演示第十三节-carla-ros联合仿真-carla介绍与版本选择第十三节-carla-ros联合仿真-carla环境配置与运行第十三节-carla-ros联合仿真-PythonAPI例子介绍第十三节-carla-ros联合仿真-PythonAPI应用示例第十三节-carla-ros联合仿真-ros-bridge的介绍第十三节-carla-ros联合仿真-ros-bridge的使用第十三节-carla-ros联合仿真-ros-bridge的代码讲解第十三节-carla-ros联合仿真-ros-bridge的坑第十三节-carla-ros联合仿真-ros-bridge的演示第十三节-carla-ros联合仿真-切回ros单独仿真carla-ros联合仿真-避开静态障碍物carla-ros联合仿真-跟随动态障碍物第十四节-Lanelet教程-JOSM的使用(一)第十四节-Lanelet教程-JOSM的使用(二)第十四节-Lanelet教程-JOSM的使用(三)第十四节-Lanelet教程-Lanelet加载osm地图文件第十四节-Lanelet教程-JOSM画图补充注意点第十四节-Lanelet教程-参考博文学习第十四节-Lanelet教程-Lanelet规划模块第十五节-autoware.ai使用教程-前言课第十五节-autoware.ai使用教程-docker安装第十五节-autoware.ai使用教程-源码安装第十五节-autoware.ai使用教程-demo运行第十五节-autoware.ai使用教程-carla联合仿真实现规划控制(停障)-docker第十五节-autoware.ai使用教程-carla联合仿真open planner 避障 -docker第十六节-carla泊车场景-dl-iaps优化算法流程简介与效果演示第十六节-carla泊车场景搭建第十六节-carla泊车场景-dl-iaps优化算法carla实战第十七节-基础代码的ros2版本第十八节-开放空间算法之DWA planner和teb算法实战第十九节-carla交叉口场景-交叉口规划决策实战第二十节-强化学习交叉口决策入门项目示例-python工程推荐第二十一节-autoware.universe规控carla联合仿真使用教程(待更新)第二十一节-交叉口的轨迹预测(待更新)第二十一节-highway强化学习教程(待更新)

(2)基础代码ros1版本-涵盖的内容如下:

前言课第一节-ros工程的创建第一节-运行环境和工程目录简介第二节-工程运行和小车模型搭建简介第二节-车辆里程计第三节-地图路线构建方法第三节-参考线平滑函数第三节-参考线平滑原理(一)第三节-参考线平滑原理(二) 第四节-lqr控制器、pid控制器、stanley控制器、pure_pursuit控制器代码简介第五节-局部规划器代码简介第五节-Frenet坐标系和参考线参数计算第六节-模拟障碍物的生成函数介绍第六节-模拟障碍物的生成方法介绍第六节-障碍物函数类的介绍第七节-基于Frenet采样规划原理(一)第七节-基于Frenet采样规划原理(二) 第七节-基于Frenet采样规划原理(三) 第七节-基于Frenet采样规划总结第七节-基于Frenet采样规划的补充-停止模式第八节-Lattice规划算法-函数介绍(第八节-Lattice规划算法原理一)第八节-Lattice规划算法-障碍物的SL图和ST图(一)第八节-Lattice规划算法-障碍物的SL图和ST图(二)第八节-Lattice规划算法-巡航模式的速度采样第八节-Lattice规划算法-超车和跟车速度采样(一)第八节-Lattice规划算法-超车和跟车速度采样(二) 第八节-Lattice规划算法-横向采样与二次规划 第八节-Lattice规划算法-二次规划(一)第八节-Lattice规划算法-二次规划(二) 第八节-Lattice规划算法-二次规划(三)第八节-Lattice规划算法一-代价函数 第八节-Lattice规划算法-合成函数和碰撞检测 第八节-Lattice规划算法效果演示第九节-Em规划算法-函数介绍第九节-Em规划算法-路径规划DP介绍第九节-Em规划算法-路径规划QP函数介绍第九节-Em规划算法-路径规划QP原理和效果显示第九节-Em规划算法-速度规划DP介绍第九节-Em规划算法-速度规划QP介绍第九节-Em规划算法-效果演示(只有静态避障)第十节-混合A星算法(一) 第十节-混合A星算法(二) 第十节-混合A星算法(三) 第十节-混合A星算法(四) 第十节-混合A星算法(五) 第十节-混合A星算法效果演示-泊车场景第十一节-变道规划算法-变道算法介绍第十一节-变道规划算法-Lattice超车和跟车效果演示第十一节-变道规划算法-变道算法决策过程(一)第十一节-变道规划算法-变道算法决策过程(二) 第十一节-变道规划算法-效果演示第十二节-open planner规划算法-介绍第十二节-open planner规划算法-效果演示

(3)基础代码ros2版本-涵盖的内容如下:

前言课第一节-ros工程的创建第一节-运行环境和工程目录简介第二节-工程运行和小车模型搭建简介第二节-车辆里程计第三节-地图路线构建方法第三节-参考线平滑函数第三节-参考线平滑原理(一)第三节-参考线平滑原理(二) 第四节-lqr控制器、pid控制器、stanley控制器、pure_pursuit控制器代码简介第五节-局部规划器代码简介第五节-Frenet坐标系和参考线参数计算第六节-模拟障碍物的生成函数介绍第六节-模拟障碍物的生成方法介绍第六节-障碍物函数类的介绍第七节-基于Frenet采样规划原理(一)第七节-基于Frenet采样规划原理(二) 第七节-基于Frenet采样规划原理(三) 第七节-基于Frenet采样规划总结第七节-基于Frenet采样规划的补充-停止模式第八节-Lattice规划算法-函数介绍(第八节-Lattice规划算法原理一)第八节-Lattice规划算法-障碍物的SL图和ST图(一)第八节-Lattice规划算法-障碍物的SL图和ST图(二)第八节-Lattice规划算法-巡航模式的速度采样第八节-Lattice规划算法-超车和跟车速度采样(一)第八节-Lattice规划算法-超车和跟车速度采样(二) 第八节-Lattice规划算法-横向采样与二次规划 第八节-Lattice规划算法-二次规划(一)第八节-Lattice规划算法-二次规划(二) 第八节-Lattice规划算法-二次规划(三)第八节-Lattice规划算法一-代价函数 第八节-Lattice规划算法-合成函数和碰撞检测 第八节-Lattice规划算法效果演示第九节-Em规划算法-函数介绍第九节-Em规划算法-路径规划DP介绍第九节-Em规划算法-路径规划QP函数介绍第九节-Em规划算法-路径规划QP原理和效果显示第九节-Em规划算法-速度规划DP介绍第九节-Em规划算法-速度规划QP介绍第九节-Em规划算法-效果演示(只有静态避障)第十节-混合A星算法(一) 第十节-混合A星算法(二) 第十节-混合A星算法(三) 第十节-混合A星算法(四) 第十节-混合A星算法(五) 第十节-混合A星算法效果演示-泊车场景第十一节-变道规划算法-变道算法介绍第十一节-变道规划算法-Lattice超车和跟车效果演示第十一节-变道规划算法-变道算法决策过程(一)第十一节-变道规划算法-变道算法决策过程(二) 第十一节-变道规划算法-效果演示第十二节-open planner规划算法-介绍第十二节-open planner规划算法-效果演示

(4)交叉口的lattcie仿真-涵盖的内容如下:

前言课第一节-ros工程的创建第一节-运行环境和工程目录简介第二节-工程运行和小车模型搭建简介第二节-车辆里程计第三节-地图路线构建方法第三节-参考线平滑函数第三节-参考线平滑原理(一)第三节-参考线平滑原理(二) 第四节-lqr控制器第五节-局部规划器代码简介第五节-Frenet坐标系和参考线参数计算第六节-模拟障碍物的生成函数介绍第六节-模拟障碍物的生成方法介绍第六节-障碍物函数类的介绍第七节-基于Frenet采样规划原理(一)第七节-基于Frenet采样规划原理(二) 第七节-基于Frenet采样规划原理(三) 第七节-基于Frenet采样规划总结第七节-基于Frenet采样规划的补充-停止模式第八节-Lattice规划算法-函数介绍(第八节-Lattice规划算法原理一)第八节-Lattice规划算法-障碍物的SL图和ST图(一)第八节-Lattice规划算法-障碍物的SL图和ST图(二)第八节-Lattice规划算法-巡航模式的速度采样第八节-Lattice规划算法-超车和跟车速度采样(一)第八节-Lattice规划算法-超车和跟车速度采样(二) 第八节-Lattice规划算法-横向采样与二次规划 第八节-Lattice规划算法-二次规划(一)第八节-Lattice规划算法-二次规划(二) 第八节-Lattice规划算法-二次规划(三)第八节-Lattice规划算法一-代价函数 第八节-Lattice规划算法-合成函数和碰撞检测 第八节-Lattice规划算法效果演示第十三节-carla-ros联合仿真-carla介绍与版本选择第十三节-carla-ros联合仿真-carla环境配置与运行第十三节-carla-ros联合仿真-PythonAPI例子介绍第十三节-carla-ros联合仿真-PythonAPI应用示例第十三节-carla-ros联合仿真-ros-bridge的介绍第十三节-carla-ros联合仿真-ros-bridge的使用第十三节-carla-ros联合仿真-ros-bridge的代码讲解第十三节-carla-ros联合仿真-ros-bridge的坑第十三节-carla-ros联合仿真-ros-bridge的演示第十三节-carla-ros联合仿真-切回ros单独仿真carla-ros联合仿真-交叉口交通流搭建

(5)ros2-carla联合仿真-lattcie算法-涵盖的内容如下:

前言课第一节-ros工程的创建第一节-运行环境和工程目录简介第二节-工程运行和小车模型搭建简介第二节-车辆里程计第三节-地图路线构建方法第三节-参考线平滑函数第三节-参考线平滑原理(一)第三节-参考线平滑原理(二) 第四节-lqr控制器第五节-局部规划器代码简介第五节-Frenet坐标系和参考线参数计算第六节-模拟障碍物的生成函数介绍第六节-模拟障碍物的生成方法介绍第六节-障碍物函数类的介绍第七节-基于Frenet采样规划原理(一)第七节-基于Frenet采样规划原理(二) 第七节-基于Frenet采样规划原理(三) 第七节-基于Frenet采样规划总结第七节-基于Frenet采样规划的补充-停止模式第八节-Lattice规划算法-函数介绍(第八节-Lattice规划算法原理一)第八节-Lattice规划算法-障碍物的SL图和ST图(一)第八节-Lattice规划算法-障碍物的SL图和ST图(二)第八节-Lattice规划算法-巡航模式的速度采样第八节-Lattice规划算法-超车和跟车速度采样(一)第八节-Lattice规划算法-超车和跟车速度采样(二) 第八节-Lattice规划算法-横向采样与二次规划 第八节-Lattice规划算法-二次规划(一)第八节-Lattice规划算法-二次规划(二) 第八节-Lattice规划算法-二次规划(三)第八节-Lattice规划算法一-代价函数 第八节-Lattice规划算法-合成函数和碰撞检测 第八节-Lattice规划算法效果演示(ros2版本的实现思路一致)第十三节-carla-ros联合仿真-carla介绍与版本选择第十三节-carla-ros联合仿真-carla环境配置与运行第十三节-carla-ros联合仿真-PythonAPI例子介绍第十三节-carla-ros联合仿真-PythonAPI应用示例第十三节-carla-ros联合仿真-ros-bridge的介绍第十三节-carla-ros联合仿真-ros-bridge的使用第十三节-carla-ros联合仿真-ros-bridge的代码讲解第十三节-carla-ros联合仿真-ros-bridge的坑第十三节-carla-ros联合仿真-ros-bridge的演示第十三节-carla-ros联合仿真-切回ros单独仿真carla-ros2联合仿真-避开静态障碍物演示

(6)carla-ros联合仿真教程和demo-涵盖的内容如下:

第十三节-carla-ros联合仿真-carla介绍与版本选择第十三节-carla-ros联合仿真-carla环境配置与运行第十三节-carla-ros联合仿真-PythonAPI例子介绍第十三节-carla-ros联合仿真-PythonAPI应用示例第十三节-carla-ros联合仿真-ros-bridge的介绍第十三节-carla-ros联合仿真-ros-bridge的使用第十三节-carla-ros联合仿真-ros-bridge的代码讲解第十三节-carla-ros联合仿真-ros-bridge的坑第十三节-carla-ros联合仿真-ros-bridge的演示第十三节-carla-ros联合仿真-切回ros单独仿真

(7)Lanelet搭建教程和demo-涵盖的内容如下:

第十四节-Lanelet教程-JOSM的使用(一)第十四节-Lanelet教程-JOSM的使用(二)第十四节-Lanelet教程-JOSM的使用(三)第十四节-Lanelet教程-Lanelet加载osm地图文件第十四节-Lanelet教程-JOSM画图补充注意点第十四节-Lanelet教程-参考博文学习第十四节-Lanelet教程-Lanelet规划模块

(8)autoware.ai使用教程-carla联合仿真open planner-涵盖的内容如下:

第十五节-autoware.ai使用教程-前言课第十五节-autoware.ai使用教程-docker安装第十五节-autoware.ai使用教程-源码安装第十五节-autoware.ai使用教程-demo运行docker-autoware.ai使用教程-carla联合仿真实现规划控制(停障)docker-autoware.ai使用教程-carla联合仿真open planner 避障

(9)carla-ros1停车场场景研究案例-涵盖的内容如下:

前言课第一节-ros工程的创建第一节-运行环境和工程目录简介第二节-工程运行和小车模型搭建简介第二节-车辆里程计第四节-lqr控制器第五节-局部规划器代码简介第六节-模拟障碍物的生成函数介绍第六节-模拟障碍物的生成方法介绍第六节-障碍物函数类的介绍第十节-混合A星算法(一) 第十节-混合A星算法(二) 第十节-混合A星算法(三) 第十节-混合A星算法(四) 第十节-混合A星算法(五) 第十节-混合A星算法效果演示-泊车场景第十三节-carla-ros联合仿真-carla介绍与版本选择第十三节-carla-ros联合仿真-carla环境配置与运行第十三节-carla-ros联合仿真-PythonAPI例子介绍第十三节-carla-ros联合仿真-PythonAPI应用示例第十三节-carla-ros联合仿真-ros-bridge的介绍第十三节-carla-ros联合仿真-ros-bridge的使用第十三节-carla-ros联合仿真-ros-bridge的代码讲解第十三节-carla-ros联合仿真-ros-bridge的坑第十三节-carla-ros联合仿真-ros-bridge的演示第十三节-carla-ros联合仿真-切回ros单独仿真第十六节-carla泊车场景-dl-iaps优化算法流程简介与效果演示第十六节-carla泊车场景搭建第十六节-carla泊车场景-dl-iaps优化算法carla实战



注意:整套包括基础代码部分,整套是ros1版本,基础代码有ros1和ros2部分,但是只有购买整套的才有ros2版本的基础代码。

本工程的特点:

1.课程视频主要是对代码的理解和逻辑讲解,相比Apollo和autoware源码易懂,更加轻量级,对硬件要求不高,再加上实战代码比理论重要很多,本工程可帮助大家从入门到学会应用,也方便大家加入自己的算法idea。要注意,此课程教大家以实战为主,入门自动驾驶软件框架,丰富实战经验为主。

2.有学习交流社区,除了配置报错答疑,大家还志同道合,可以入学开始交流技术,学习几年,毕设,课设,项目,工作,四不误。

3.与市面其他课程代码不同,本工程是一套整体算法,而不是零散的算法工程,这样的好处是方便移植到实车,做科研实验,写入面试简历,丰富自己的项目经验。接实车就是把定位模块的订阅信息替换实车的定位,感知模块的信息替换为接收真实车的障碍物等信息。

4.本工程可以节省大量的代码开发时间,为更多想学习自动驾驶的人避坑引路,学会调试改bug。

5.本工程C++为主,联合仿真也涉及python。

6.购买可得源码+交流答疑群+代码讲解视频+工程经验学习交流。

7.autoware的使用并非系列的重点,所以本人涉及的只是入门的冰山一角,如果专门想学透autoware,谨慎购买。

8.有人可能会问移植了Apollo哪个版本的代码,其实个人觉得每个版本规控算法修改不多,可能有增加一些优化算法,但是旧版的比如lattice或者dl-iaps等会保留,所以这个版本问题不是很重要的,只需要关注算法的变化情况。

9.本人移植的EM planner还不够完善,希望有大佬加入一起交流完善。另外,混合A*倒车目前还没有前进再倒退的准确控制算法。

10.ros2相关的代码在foxy和eloquent测试过,买ros2相关套餐的朋友,最好是有ros2的基础,因为不同版本之间要改一点内容。另外,代码逻辑没有单独的ros2录制,之前的视频都是ros1,因为ros版本只影响通信,不影响算法的架构。

11.本工程具有计算机软件著作权,请尊重作者的知识产权,仅供个人使用。若不再使用请删除。

个人建议:

1.想学习相关方向的同学尽早加入,本科或者研一,不然后面会感叹当初觉悟不够。
2.没有完美无缺的算法,代码在不断完善。急需待更新内容不建议购买,因为本人也在修炼,更新比较慢。
3.学生购买可分期。
4.适合人群:科研学生,刚入职规控的工作人员,需要丰富面试简历的求职学生,入门规控的人。
5.围绕ros1版本进行算法的学习应用,ros1还是比较好入门的。ros2版本主要是帮助大家了解ros2的C++开发基础。
6.一经购买进群后不得退款,因为是源码性质的内容,请考虑清楚再下单。

希望可以集合各位学习研究自动驾驶的小伙伴们一起交流,欢迎加入社区!

购买途径

本工程全网独一无二,只在以下常见平台进行宣传售卖,大家注意下单正版

1.咸鱼

2.咸鱼

3.b站

4西瓜

5博客

如果你不是在以上平台购买的工程,说明是盗版,无法真正地参与知识学习过程,可以向这些平台反馈,举报者有奖。