当前位置: 首页 > news >正文

【全栈自动驾驶与异构加速】系统学习计划

在这里插入图片描述

设计的《无人车系统+异构加速学习计划(GPU & NPU)》,融合了:

  • 自动驾驶技术的系统知识结构
  • 底层硬件与计算系统集成与仿真的知识递进
  • NVIDIA GPU(CUDA / TensorRT)瑞芯微 NPU(RKNN) 推理加速的技能
  • 并按从理论到实践从通用到平台,合理分布学习阶段

文章目录

  • 🧠【全栈自动驾驶与异构加速】系统学习计划(适合 4–6 个月)
    • 🧭 **总览阶段路径图(由浅入深,层层递进)**
    • 🚧 阶段1:通用基础与编程环境(底层支撑)
      • 📘 学习内容
      • 📌 推荐资源
    • 📡 阶段2:感知系统(图像/点云处理 + 传感器融合)
      • 📘 学习内容
      • 📌 推荐资源
    • 🧭 阶段3:定位与建图(SLAM)
      • 📘 学习内容
      • 📌 实践任务
    • 🧠 阶段4:路径规划与决策(中层)
      • 📘 学习内容
      • 📌 实践任务
    • 🎯 阶段5:运动控制与车辆建模
      • 📘 学习内容
      • 📌 实践任务
    • ⚙️ 阶段6:仿真平台 + 项目集成实践
      • 📘 学习内容
      • 📌 项目任务
    • 🔥 阶段7:GPU & NPU 推理加速实践(高级)
      • 📘 统一加速流程
      • 📌 任务安排(共 8 周)
    • 🧰 推荐工具 & 平台清单
    • 📌 总结能力图谱(完成后你将具备)
      • ✅ 可选扩展方向(完成本计划后)
    • 🎓 附带推荐书籍与课程资源
    • 🧰 附加建议

🧠【全栈自动驾驶与异构加速】系统学习计划(适合 4–6 个月)

  • 适合人群:具备 Python 编程基础、希望系统学习自动驾驶与模型部署者

  • 最终目标

    • 独立构建一个完整的自动驾驶系统仿真项目(感知–定位–规划–控制)
    • 掌握模型训练 + GPU 加速(TensorRT)+ NPU 部署(RKNN Toolkit)
    • 有能力阅读和修改主流平台(Apollo、Autoware)源码或项目

🧭 总览阶段路径图(由浅入深,层层递进)

阶段模块学习目标推荐时长
🚧 阶段1通用基础与编程环境搭建开发环境、掌握必要的数学与编程技能3–4 周
📡 阶段2感知系统(摄像头+雷达)理解并实现图像和点云处理、传感器融合4–5 周
🧭 阶段3定位与建图(SLAM + HD Map)掌握自主定位、SLAM、地图处理3–4 周
🧠 阶段4决策与路径规划算法理解路径规划算法与决策模块的接口设计3–4 周
🎯 阶段5运动控制与车辆动力学学会使用 PID/MPC 进行低速/高速控制2–3 周
⚙️ 阶段6仿真平台与项目实战在 CARLA 或 Apollo 中部署整套系统3–4 周
🔥 阶段7GPU/NPU 模型加速部署熟悉 ONNX → TensorRT / RKNN 的流程4–6 周

🚧 阶段1:通用基础与编程环境(底层支撑)

📘 学习内容

  • 编程语言:Python + C++
  • 数学基础:线性代数、概率统计、微积分、优化理论
  • 系统基础:Linux + Git + Docker
  • 开发框架:ROS2(话题、节点、消息通信)

📌 推荐资源

  • 《线性代数及其应用》+ 3Blue1Brown 视频
  • ROS2 官方教程 + B 站 ROS 入门系列
  • Git + Docker 入门教程(Codecademy / 菜鸟教程)

📡 阶段2:感知系统(图像/点云处理 + 传感器融合)

📘 学习内容

模块内容要点工具或技术
摄像头感知图像处理、YOLOv5/Mask-RCNN 等检测算法OpenCV, PyTorch
激光雷达感知点云滤波、聚类、分割、建图PCL, Open3D, KITTI 数据集
多传感器融合EKF/UKF 融合 IMU + GPS + 雷达Python + Kalman Filter 仿真

📌 推荐资源

  • Ultralytics YOLOv5 GitHub 项目
  • KITTI / nuScenes 数据集
  • 优达学城自动驾驶感知课程(可找公开资料)

🧭 阶段3:定位与建图(SLAM)

📘 学习内容

  • SLAM 原理:粒子滤波、扩展卡尔曼滤波、图优化
  • ORB-SLAM2、Cartographer、LOAM 使用
  • HD Map(高精地图)构建与定位方法

📌 实践任务

  • 使用 ROS + ORB-SLAM2 实现 VSLAM
  • 分析 Apollo 地图模块源码

🧠 阶段4:路径规划与决策(中层)

📘 学习内容

模块算法应用平台
路径规划A*、Dijkstra、RRT、Bezier 曲线等Python / ROS Navigation Stack
行为决策FSM、行为树、条件状态切换Apollo Planning 模块
路径优化MPC、DP、采样优化等ROS + Python仿真

📌 实践任务

  • 用 Python 实现经典路径规划算法并可视化
  • 学习 Apollo 决策模块架构

🎯 阶段5:运动控制与车辆建模

📘 学习内容

  • 控制算法:PID、纯追踪、MPC 控制器原理与调试
  • 车辆模型:单轨/双轨模型、动态约束建模
  • 控制器接口设计与输出指令调试

📌 实践任务

  • 用 Python 实现 PID、纯追踪算法
  • 将控制器接入 Carla 模拟器进行路径跟踪测试

⚙️ 阶段6:仿真平台 + 项目集成实践

📘 学习内容

工具说明
CARLA自动驾驶模拟器,适合学习感知、规划、控制整合
Apollo百度开源平台,具备完整模块化设计
Autoware开源自动驾驶平台,适用于多车型仿真

📌 项目任务

  • 使用 Carla 搭建完整感知-决策-控制系统
  • Apollo 跑通城市道路仿真(规划+控制+感知模块可选)

🔥 阶段7:GPU & NPU 推理加速实践(高级)

📘 统一加速流程

步骤工具
模型训练PyTorch / TensorFlow
模型导出ONNX
GPU 加速部署TensorRT (trtexec, API)
NPU 加速部署RKNN Toolkit(瑞芯微)

📌 任务安排(共 8 周)

周数内容工具实践项目
第1周模型训练与 ONNX 导出PyTorchResNet18 on MNIST
第2周CUDA 并行编程入门C++ + CUDA编写 CUDA 向量乘法程序
第3周TensorRT 推理部署基础TensorRT使用 trtexec 跑 ONNX 模型
第4周TensorRT Python API + ProfilingTensorRT + Nsight对模型推理性能做 profiling
第5周RKNN Toolkit 安装 + 模型转换rknn-toolkit2ONNX → RKNN
第6周RKNN 部署推理 + 性能对比RKNN + Python在 RK3588 上部署分类模型
第7周部署 YOLOv5 到 GPU & NPUTensorRT + RKNN对比推理时间与精度
第8周总结报告 + 优化策略Python + 图表输出 GPU vs NPU 对比总结报告

🧰 推荐工具 & 平台清单

类别工具平台名称
IDEVS Code + Jupyter + JetBrains 系列
数据集KITTI、nuScenes、Apollo demo data
可视化工具Netron(模型结构可视化)、RViz(ROS 可视化)、CARLA Simulator
模型框架PyTorch、TensorFlow、ONNX
加速工具CUDA Toolkit、TensorRT、RKNN Toolkit

📌 总结能力图谱(完成后你将具备)

✅ 理论知识方面:

  • 自动驾驶系统完整工作流程(感知 → 决策 → 控制)
  • 传感器融合、SLAM、路径规划等核心算法掌握
  • GPU / NPU 加速推理框架的构建与分析

✅ 实践能力方面:

  • 独立搭建 Carla / Apollo 自动驾驶项目
  • 训练 + 导出 + 优化部署模型到 NVIDIA 和瑞芯微平台
  • 使用 Python/C++ 写出完整感知/控制模块

✅ 可选扩展方向(完成本计划后)

方向推荐内容
强化学习OpenAI Gym + Carla 自动驾驶强化学习
多车辆系统多车编队、车路协同(V2X、边缘计算)
SLAM 深入VINS-Fusion、LIO-SAM(多模态感知)
开源社区深入 Apollo / Autoware 模块源码或二次开发实践

🎓 附带推荐书籍与课程资源

  • 书籍:
  • 《Probabilistic Robotics》——经典的 SLAM 理论书籍
  • 《CUDA by Example》——NVIDIA 官方推荐入门书
  • 《Deep Learning for Self-Driving Cars》
  • 课程:
  • MIT 6.S094: Deep Learning for Self-Driving Cars
  • Udacity 自驾车工程师课程
  • 瑞芯微 RKNN Toolkit2 官方 GitHub
    • Coursera:自动驾驶工程师路径
    • Udacity:Self-Driving Car Engineer
  • https://deeplearning.mit.edu/
  • B站:无人车/ROS/CARLA教程合集
  • GitHub:awesome-autonomous-vehicles 搜索开源项目
  • Bilibili 上中文 Apollo 系列讲解

🧰 附加建议

GitHub 社区如:awesome-autonomous-vehicles

  • 关注开源项目:Apollo、Autoware、Turtlebot3
http://www.dtcms.com/a/320705.html

相关文章:

  • React 状态管理入门:从 useState 到复杂状态逻辑
  • 【MongoDB】查询条件运算符:$expr 和 $regex 详解,以及为什么$where和$expr难以使用索引
  • 使用pybind11封装C++API
  • HTML <picture> 元素:让图片根据设备 “智能切换” 的响应式方案
  • 数据结构(16)排序(上)
  • 时序数据库-涛思数据库
  • 6.Linux 系统上的库文件生成与使用
  • Linux 内核发包流程与路由控制实战
  • 医防融合中心-智慧化慢病全程管理医疗AI系统开发(上)
  • 後端開發技術教學(三) 表單提交、數據處理
  • 排序知识总结
  • 五、mysql8.0在linux中的安装
  • 引领云原生时代,华为云助您构建敏捷未来
  • php防注入和XSS过滤参考代码
  • Orange的运维学习日记--35.DNS拓展与故障排除
  • 31-数据仓库与Apache Hive-Insert插入数据
  • 专利服务系统平台|个人专利服务系统|基于java和小程序的专利服务系统设计与实现(源码+数据库+文档)
  • 代数系统的一般概念与格与布尔代数
  • 云平台运维工具 ——Azure 原生工具
  • 二倍精灵图的做法
  • Jetpack Compose 动画全解析:从基础到高级,让 UI “动” 起来
  • 网络基础——网络层级
  • VSCode 禁用更新检查的方法
  • 并查集算法的一个实战应用详解
  • 基于Flask + Vue3 的新闻数据分析平台源代码+数据库+使用说明,爬取今日头条新闻数据,采集与清洗、数据分析、建立数据模型、数据可视化
  • 认识爬虫 —— 正则表达式提取
  • MySQL数据库操作练习
  • 基于大数据的地铁客流数据分析预测系统 Python+Django+Vue.js
  • css 瀑布流布局
  • 查看泰山派 ov5695研究(1)