ai杂记=

论文+源码

​​​​​lhttps://github.com/labmlai/annotated_deep_learning_paper_implementationsicon-default.png?t=N7T8https://github.com/labmlai/annotated_deep_learning_paper_implementations

labml.ai Annotated PyTorch Paper Implementations

https://github.com/amusi/awesome-object-detection

1 顶会

1.1 人工智能

第一档:NIPS,ICML, ICLR

第二档:AAAI,IJCAI, COLT

1.2 计算机视觉

CVPR,ECCV,ICCV

1.3 自然语言处理

ACL,EMNLP,NAACL

1.4 数据库及数据挖掘

SIGMOD, SIGKDD,SIGIR

1.5 机器人领域

ICRA,RSS

2 顶刊

- 最好的是JMLR

- MLJ和PAMI次之

- TNN、neural computation、PR再次一些

- PRL、neuralcomputing等等基本纯水

cvpr论文汇总 

https://github.com/extreme-assistant/CVPR2023-Paper-Code-Interpretation

Home | CVPR 2022

自动驾驶

年薪40W自动驾驶算法工程师必学的【自动驾驶五大项目】:多模态3D、深度估计、车道线检测、驾驶轨迹预测、行人重识别全详解!

https://www.bilibili.com/video/BV1Hm4y1i71t/?spm_id_from=333.337.search-card.all.click&vd_source=219cee2f2320011f8c9289b244121bc2

激光雷达

激光雷达:3D物体检测算法 - 知乎

点云相关

点云感知算法面试知识点(一)_ap r40-CSDN博客

【精选】点云感知算法面试知识点(二)_用券买土豆的博客-CSDN博客

pointPillar

点云检测算法之PointPillar深度解读-CSDN博客

目标检测|SSD原理与实现 - 知乎

【论文笔记】FPN —— 特征金字塔 - 知乎

55b364e7465b4deb8f46bde55195df69.png

感知算法

定位算法

预测、决策、规划算法

控制算法

数据资产

知乎:

如何入门学习自动驾驶技术(一) - 知乎

format,png

三、自动驾驶算法类方向

3.1 自动驾驶SLAM算法工程师

首先解释一下这个方向是干什么的,SLAM英文全名叫simultaneous localization and mapping,中文名叫同步定位与建图。可以看一下下面的百度百科的解释

即时定位与地图构建_百度百科

SLAM算法属于感知—规划—控制中的感知类算法。该算法主要用于自动驾驶车辆的根据点云数据对车辆周围环境的地图构建。而其中的点云数据是由两种传感器来进行采集的,包括激光雷达和摄像头,所以SLAM算法其实又分了两大方向:

视觉SLAM算法(VSLAM)激光SLAM算法(Lidar SLAM)。

所以又细分了下面的两个岗位(选择其中之一学习即可)。

3.2 激光SLAM算法工程师

关于激光SLAM的效果,可以看下面的视频,激光SLAM的传感器即为激光雷达,视频中花花绿绿的就是激光雷达的点云数据了,然后对周围环境进行地图构建:

激光SLAM所需要学习的知识

操作系统:Linux

编程:使用c、c++、matlab一种或多种语言(matlab不是很建议)

理论:需要学习很多滤波算法,如:ESKF、EKF、UKF等。同时需要学习G2O、ceres等用来优化非线性误差函数的c++框架。

3.3 视觉SLAM算法工程师

关于视觉SLAM的效果,可以看下面的视频。视觉SLAM中的传感器即为摄像头,摄像头如果使用深度相机,可以直接获取障碍物的距离,生成点云数据。当然也有用单目、双目、鱼眼摄像机的 视觉SLAM ,这些摄像头需要用其他的方法才能间接的获取周围障碍物的距离。

♥视觉SLAM所需要学习的知识:

操作系统:Linux

编程:c、c++

理论:学习常用的vSLAM算法,如ORB-SLAM、SVO、DSO、MonoSLAM,VINS以及RGB-D等;ROS机器人操作系统;还需要学习很多滤波算法,如:ESKF、EKF、UKF等。同时需要学习G2O、ceres等用来优化非线性误差函数的c++框架。

♥视觉SLAM学习资料推荐

入门级神书《视觉SLAM十四讲》,书的作者大佬也在知乎 

@半闲居士

 ,要学习的快去关注一波吧,同时大佬在B站上直播过相关SLAM十四讲的课程,可以去搜索一下,如果想要B站直播课云盘的,在这链接里:https://pan.baidu.com/s/1hH3LN_Hox2kATqqLKYFoFA 提取码:ftik 。本书作者也有过培训课程,根据自己的需求可以去看看他的付费课程。

目前激光 SLAM 是比较成熟的定位导航方案,但其传感器价格昂贵,我们知道汽车是一个量产的东西,如果成本降不下来,其也会有很大的阻力,目前特斯拉等公司已经放弃了激光雷达的方案,采用纯视觉的自动驾驶方案。

在实际的自动驾驶车辆上,SLAM 其实是需要多个传感器进行融合的,取长补短,比如GPS、IMU(惯性导航)等传感器融合的方案,所以自动驾驶算法方向又出现了下面的一个新的岗位。

3.4 自动驾驶多传感器融合算法工程师

看一下该方向的行业要求:

掌握camera、毫米波雷达、激光雷达、惯性导航等相关数据解析融合算法;熟悉感知融合算法发展趋势,有神经网络等人工智能开发背景者优先。(来源:华为技术有限公司招聘信息

很明显,数据融合要求更高,既包括前面激光SLAM和视觉SLAM,同时还需要掌握其他传感器的用法,所以这个方向难度不小,所涉及的知识非常多。

3.5 自动驾驶决策算法工程师

自动驾驶的决策是指给将知模块传递的信息,如何决策汽车的行为达到驾驶的目标。例如,汽车加速、减速、左转、右转、换道、超车都是决策模块的输出。决策需要考虑到汽车的安全性和舒适性,保证尽快到达目标地点,还需要在旁边的车辆恶意的情况下保证乘客的安全。

♥决策算法需要学习的知识:

操作系统:Linux

编程:c/c++/python

理论:学习常用的决策算法,如决策状态机、决策树、马尔可夫决策过程,POMDP等;如果往深里学的话,还需要学习深度学习,学习深度学习框架等。

其实决策和规划是经常要一起做的,我们继续往下看,看看规划方向的知识要求。

3.6 自动驾驶规划算法工程师

规划包括路径规划和速度规划,一般都是做路径规划的比较多。即自动驾驶路径规划工程师。

规划算法中,自动驾驶车辆首先通过路径规划确定车辆可行驶的路径,然后选择该路径确定可行驶的速度,路径规划视频视频如下。

♥路径规划算法需要学习的知识:

操作系统:Linux

编程:c/c++/python

理论:学习常见路径规划算法,例如A*、D*、RRT等;如果往深里学的话;学习轨迹预测算法,如MDP、POMDP、Came Theory等;学习ROS机器人操作系统;学习深度学习和强化学习技术也是加分项,例如RNN、LSTM、Deep Q-Learning等。

前面提到决策和规划其实要经常一起做的,所以经常会出现两者结合的方向:

3.7 自动驾驶决策规划算法工程师

看一下该方向的行业要求:

在上述熟悉如MDP、POMDP、Game Theory等轨迹预测算法;熟悉常见路径规划算法,例如A*、D*、RRT等;具备Linux环境下的C++开发;熟悉ROS开发环境;参加过机器人领域相关研发及竞赛;熟练掌握CarSim、CarMaker等汽车仿真软件使用方法;有强数学理论基础和背景。(来源:百度自动驾驶部招聘信息

3.8 自动驾驶控制算法工程师

控制算法方向偏向于传统方向,一般是对车辆横纵向动力学建模,然后开发控制算法,实现车辆运动控制等。

♥控制算法需要学习的知识:

操作系统:Windows

编程: C/C++、Matlab/Simulink

理论:学习自动控制理论基础;学习车辆动力学模型;学习CarSim等仿真软件;学习ACC、AEB、APA、LKA、LCC等辅助驾驶功能开发的是加分项。

以下是基于Carsim、Matlab/simulink开发的车辆控制演示:

在实际的工作中,有的时候规划和控制其实不是强烈的分开的,而是相互结合,所以也会见到这样的方向:自动驾驶控制规划算法工程师

3.9 自动驾驶感知算法工程师

自动驾驶感知部分是自动驾驶目前最有挑战的部分,其目前的岗位包括:机器学习算法工程师、计算机视觉算法工程师和自然语言处理算法工程师。这三个方向也属于人工智能的三大方向。在自动驾驶车辆中,主要包括:车道线检测、车辆等障碍物检测、可行驶区域检测、红绿灯等交通信息检测、车内语音识别等等,前面讲的SLAM算法也属于感知部分。

3.10 机器学习算法工程师

该方向主要负责车辆行驶过程中产生的数据在工程上的应用,偏向于数据分析方向,如车辆行驶里程的影响分析、大数据分析建模等等。

♥机器学习算法需要学习的知识:

操作系统:Windows、Linux

编程: Python(主要) 、C/C++、

理论:学习机器学习的基础理论算法,如 LR、GBDT、SVM、DNN等等;学习scikit-learn 等传统机器学习框架的模型训练;熟悉 PyTorch、TensorFlow等深度学习框架(偏神经网络部分)等等。

3.11 计算机视觉算法工程师

该方向主要基于摄像头传感器,主要包括:车道线检测、车辆等障碍物检测、可行驶区域检测、红绿灯等交通信息检测等等。如下如下面视频演示所示(均来源于腾讯视频)。

♥视觉算法需要学习的知识:

操作系统:Linux

编程:C/C++,Python,opencv

理论:需要机器学习的基本算法 ( 降维、分类、回归等 );需要学习深度学习,深度学习框架;学习计算机视觉和图像处理的常用方法 ( 物体检测、跟踪、分割、分类识别等 ) 。

3.12 自然语言处理算法工程师

该方向主要负责车载场景下的语音识别,语音交互设计等等,下面为车载语音识别系统的演示视频。

♥语音算法需要学习的知识:

操作系统:Linux

编程:C/C++,Python

理论:学习机器学习算法、深度学习算法(RNN),自然语言处理基本任务(分词、词性标注、句法分析、关键字抽取),需要使用机器学习方法聚类、分类、回归、排序等模型解决文本业务问题;熟悉 PyTorch、TensorFlow等深度学习框架(偏RNN部分)等等。

四、自动驾驶仿真方向

该方向需要参与自动驾驶相关仿真系统的搭建,包括车辆动力学相关仿真,各类虚拟传感器模型和虚拟场景的建模与仿真,根据测试案例搭建测试场景,执行自动驾驶算法仿真测试等等。以下为基于Carla仿真平台的自动驾驶仿真演示视频。

♥仿真方向需要学习的知识:

操作系统:Linux

编程:MATLAB/simulink、Python/C++

理论知识:熟练操作一种常用车辆动力学或无人车相关仿真软件,比如Perscan、Carsim、Carmaker等。熟悉机器人操作系统ROS等。有的仿真岗位纯属于做仿真,但有的岗位需要做仿真环境的开发,这样的岗位对编程要求会更高一些。

五、自动驾驶测试方向

该方向主要负责自动驾驶车辆的相关测试工作,测试自动驾驶系统功能各项指标的性能,评估其边界条件和失效模式; 根据研发人员对数据的需求,制作采集文档,完成数据采集等操作。其中包括软件、硬件等测试,也需要熟悉如Linux编程测试环境等等。

百度apollo感知架构

百度Apollo感知代码架构 - 知乎

感知算法面试

自动驾驶感知算法工程师面试准备汇总 - 知乎




 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值