从零开始学习自动驾驶路径规划实战(包括Apollo,autoware规划算法等,以及一些基础控制算法)
四轮机器人,自动驾驶路径规划控制ros1和ros2移植Apollo和autoware规控算法可跑工程(适合入门学习,科研和实战),不仅包括移植Apollo和autoware规划算法,还包括其他规划算法,与carla联合仿真实现规划控制,autoware-carla联合仿真,Lanelet高精度地图构建,强化学习等等,基本涵盖了公司算法的基本要求。从入门到掌握的一系列算法的应用,学会工程代码实战,包括ros1和ros2。具体效果视频请看主页视频:
bibi个人主页
注意:
1.本套理论涉及比较浅,主要以丰富实战经验为主!介意者慎拍。不过不影响入门学习和实践。
2.作者只测试了ubuntu18.04和ubuntu20.04双系统,注意虚拟机的carla容易出问题。
3.工程是源码形式,只有autoware.ai才有docker。
4.没有接触过ros1和ros2,还有Ubuntu基础的,也可以购买,虽然说套餐以学习算法开发为主,但是ros和ubuntu这些基础知识,还有一些工程改bug经验,在群里多多少少也会有交流,也可以同步学习到。
5.经过和群友的学习测试,通过以下ros版本:
ros1: melodic, noetic
ros2: eloquent, foxy, galactic
6.没有测试Apollo的控制代码!但是代码已经移植到整套工程里面。也就是现在使用的控制代码不是Apollo的源码。
7.本代码涉及的lattice,em,混合A等算法,并不是大家网上看到的其他人做的简单版本的,是移植百度公司Apollo的算法,跑不起Apollo的可以来。
共九个套餐,每个套餐包含的内容如下:
(1)整套-涵盖的内容如下:
前言课
第一节-环境配置+编译运行整体思路讲解
第二节-工程运行和小车模型搭建简介
第二节-车辆里程计
第三节-地图路线构建方法
第三节-参考线平滑函数
第三节-参考线平滑原理(一)
第三节-参考线平滑原理(二)
第四节-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规划算法-效果演示
(以下是ros1)
第十三节-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工程推荐
交叉口的轨迹预测
混合A*的png地图识别版本(没有二次优化和速度规划,但是代码也已经给速度赋值)
autoware.universe规控carla联合仿真使用教程(待更新)
highway强化学习教程(待更新)
注意整套只包括ros2基础代码,不包括ros2-carla联合仿真-lattcie算法(另外一个套餐)!!!
(2)基础代码ros1版本-涵盖的内容如下:
前言课
第一节-环境配置+编译运行整体思路讲解
第二节-工程运行和小车模型搭建简介
第二节-车辆里程计
第三节-地图路线构建方法
第三节-参考线平滑函数
第三节-参考线平滑原理(一)
第三节-参考线平滑原理(二)
第四节-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星算法(五)
第十节-混合A星算法效果演示-泊车场景
第十一节-变道规划算法-变道算法介绍
第十一节-变道规划算法-Lattice超车和跟车效果演示
第十一节-变道规划算法-变道算法决策过程(一)
第十一节-变道规划算法-变道算法决策过程(二)
第十一节-变道规划算法-效果演示
第十二节-open planner规划算法-介绍
第十二节-open planner规划算法-效果演示
(3)基础代码ros2版本-涵盖的内容如下:
前言课
第一节-环境配置+编译运行整体思路讲解
第二节-工程运行和小车模型搭建简介
第二节-车辆里程计
第三节-地图路线构建方法
第三节-参考线平滑函数
第三节-参考线平滑原理(一)
第三节-参考线平滑原理(二)
第四节-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星算法(五)
第十节-混合A星算法效果演示-泊车场景
第十一节-变道规划算法-变道算法介绍
第十一节-变道规划算法-Lattice超车和跟车效果演示
第十一节-变道规划算法-变道算法决策过程(一)
第十一节-变道规划算法-变道算法决策过程(二)
第十一节-变道规划算法-效果演示
第十二节-open planner规划算法-介绍
第十二节-open planner规划算法-效果演示
(4)交叉口的lattcie仿真-涵盖的内容如下:
前言课
第一节-环境配置+编译运行整体思路讲解
第二节-工程运行和小车模型搭建简介
第二节-车辆里程计
第三节-地图路线构建方法
第三节-参考线平滑函数
第三节-参考线平滑原理(一)
第三节-参考线平滑原理(二)
第四节-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算法-涵盖的内容如下:
前言课
第一节-环境配置+编译运行整体思路讲解
第二节-工程运行和小车模型搭建简介
第二节-车辆里程计
第三节-地图路线构建方法
第三节-参考线平滑函数
第三节-参考线平滑原理(一)
第三节-参考线平滑原理(二)
第四节-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,ros2版本的联合仿真实现思路和ros1一致)
第十三节-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停车场场景研究案例-涵盖的内容如下:
前言课
第一节-环境配置+编译运行整体思路讲解
第二节-工程运行和小车模型搭建简介
第二节-车辆里程计
第四节-lqr控制器
第五节-局部规划器代码简介
第六节-模拟障碍物的生成函数介绍
第六节-模拟障碍物的生成方法介绍
第六节-障碍物函数类的介绍
(有速度规划的混合A星)
第十节-混合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相关套餐的朋友,最好是有ros2的基础,因为不同版本之间要改一点内容。另外,代码逻辑没有单独的ros2录制,之前的视频都是ros1,因为ros版本只影响通信,不影响算法的架构。
11.本工程具有计算机软件著作权,请尊重作者的知识产权,仅供个人使用。若不再使用请删除!!!
个人建议:
1.想学习相关方向的同学尽早加入,本科或者研一,不然后面会感叹当初觉悟不够。
2.没有完美无缺的算法,代码在不断完善。急需待更新内容不建议购买,因为本人也在修炼,更新比较慢。
3.学生购买可分期。
4.适合人群:科研学生,刚入职规控的工作人员,需要丰富面试简历的求职学生,入门规控的人。
5.围绕ros1版本进行算法的学习应用,ros1还是比较好入门的。ros2版本主要是帮助大家了解ros2的C++开发基础。
一经购买进群后不得退款,因为是源码性质的内容,请考虑清楚再下单。希望可以集合各位学习研究自动驾驶的小伙伴们一起交流,欢迎加入社区!
购买途径
本工程全网独一无二,只在以下常见平台进行宣传售卖,其他都是假的,大家注意下单正版
1.咸鱼
2.咸鱼
3.b站
4西瓜
5博客