6 Star 53 Fork 24

leox24 / perception_learn

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

AUTOPILOT LEARN 更新中

记录一些自动驾驶开源代码的学习,内容原创不易,禁止直接搬运。

我的博客GoodluckTian

我的知乎GoodluckTian

1 Apollo perception

想必Apollo就不用多做介绍了

  • Apollo perception注释代码,主要是fusion、radar和lidar三部分,lidar深度学习部分不做阐述

  • CyberRT和ROS:Apollo最初用的是ROS,但因为时延问题开发了CyberRT

  • 通常 4 个步骤进行组件开发:设置组件文件结构--实现组件类--设置配置文件--启动组件

  • 建议阅读参考文章后对Apollo有一定了解后阅读注释代码

1.1 参考文章

1.2 源码剖析文章

顺序阅读更佳

2 Autoware core_perception

2.1 参考文档

2.2 Autoware简介

官网的话来说:Autoware是世界领先的自动驾驶开源软件项目。 Autoware建立在机器人操作系统(ROS)之上,能够在广泛的车辆和应用中实现自动驾驶的商业部署。

架构如下图,主要包含感知、规划、决策、地图、定位、自车和传感器等。

Autoware同样也有自己的开发套件(软硬件解决方案)。单要说Apollo和Autoware孰高孰低,水平太低不能多做评价,感兴趣可以参考这篇文章的对比:浅析Apollo和Autoware的异同

Autoware-GFX_edited.png

1.1 core_perception

Github里的Autoware主页中,主要包括core_perceptioncore_planningcommonsimulationvisualization等。

本文主要阅读core_perception。对比tag1.14和master,master最近有更新。故本文阅读的是的master分支。不过大部分代码都是两年前的版本,并无太大变化。

  • 基础知识

    cmake、ros、pcl、opencv等(如果ros和pcl都没有使用过,建议先从基础学习)

  • 代码准备

    如下:

    ├── Autoware
    │   └── src
    │       ├── core_perception
    │       └── messages
    
  • 说明

    因为messages里有自定义的各种消息结构体,建议安装环境后catkin_make编译,这样阅读时IDE(eg. vscode)才能找到对应的头文件。

    比如在各个障碍物模块内都会#include "autoware_msgs/DetectedObject.h",这个消息的定义就在./Autoware/src/messages/autoware_msgs/msg/DetectedObject.msg里。

    不编译也行,只要能知道结构体的定义并能读懂代码即可。

    建议别编译了,浪费时间,直接看代码吧...

2 模块目录

先列一下TODO List,有更新的话会更新跳转的链接。

收藏这一篇就够了~

  • ekf_localizer
  • gnss_localizer
  • image_processor
  • imm_ukf_pda_track
  • lidar_apollo_cnn_seg_detect
  • lidar_euclidean_cluster_detect
  • lidar_fake_perception
  • lidar_imm_ukf_pda_track
  • lidar_kf_contour_track
  • lidar_localizer
  • lidar_naive_l_shape_detect
  • lidar_point_pillars
  • lidar_shape_estimation
  • naive_motion_predict
  • ndt_cpu
  • ndt_gpu
  • ndt_tku
  • obj_db
  • pcl_omp_registration
  • pixel_cloud_fusion
  • points_downsampler
  • points_preprocessor
  • pos_db
  • range_vision_fusion
  • road_occupancy_processor
  • roi_object_filter
  • trafficlight_recognizer
  • twist_generator
  • vel_pose_diff_checker
  • vision_beyond_track
  • vision_darknet_detect
  • vision_lane_detect
  • vision_segment_enet_detect
  • vision_ssd_detect

3 标定开源工具箱

深蓝学院开源标定代码

  • 看了一下lidar2lidar的标定,是比较简单的demo代码,总之先mark一下吧,有空写一写

空文件

简介

感知融合注释代码,Apollo部分已注释 TODO:Autoware 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C++
1
https://gitee.com/leox24/perception_learn.git
git@gitee.com:leox24/perception_learn.git
leox24
perception_learn
perception_learn
master

搜索帮助