- 博客(83)
- 资源 (1)
- 收藏
- 关注
原创 【自动驾驶BEV感知之Transformer】
然后以Hi为例,他的query和别人的key点积得到Attention,再乘上别人的value得到在自己的value基础上可以更新的内容,然后Hi要和其他三个以及他自己都做这个操作。Transformer可以看作我们有自己感兴趣的方向,然后去图书馆里找,怎么找呢,肯定是看书的名字,翻一下目录来确定和你的兴趣是否匹配,如果匹配就翻开书挑里面感兴趣的东西进行学习。以Hihowareyou为例子,对这四个词进行编码,每个都得到一个256维的向量,可以理解为在256个维度对这个词的一些描述来表征这个词。
2025-01-19 20:43:06
2217
原创 【自动驾驶BEV感知之tesla发展历程】
用空间注意力强化图像特征在vectorspace特征(可能是BEV+vector?因此一个top-downpixel的统一视角是一个更直观、一致性更好的方式。这是特斯拉感知系统的发展流程,图片都来自于TeslaAIDay。空间统一后时序叠加就能保留完整时序信息。最终演变成了下面的pipeline。成熟的backbone去特征提取。跨相机会带来各种难以解决的问题。
2025-01-19 20:17:10
1569
原创 【自主代客泊车之课程简介】
秦通老师为华为第一批天才少年,作为感知与SLAM算法专家带领团队开发ADS1.0/ADS2.0,并应用于问界M7等主流车型。
2025-01-19 17:41:44
1826
原创 自主代客泊车之课程简介
秦通老师为华为第一批天才少年,作为感知与SLAM算法专家带领团队开发ADS1.0/ADS2.0,并应用于问界M7等主流车型。
2025-01-19 14:42:31
1375
原创 端到端自动驾驶的基础概念
端到端自动驾驶也就是end-to-end autonomous driving(下面用端到端代替)的早期定义是“从传感器输入到控制输出的单一神经网络模型”,现阶段端到端的定义是“感知信息无损传递,自动驾驶系统的全局优化。
2024-06-20 21:52:58
5854
原创 【自动驾驶轨迹规划之大模型】
本文的架构是利用LLM来分析和推理各种场景,提高high-level的决策,并通过调整参数矩阵转换为low-level的底层控制信息输送给MPC。由于情况是预定义的,因此可以直接调整到相应的权重矩阵,从而来提供加速减速或转向的指导。因此LLM系统通过辨别车辆的意图与优先路权,并判断是否与自车有冲突的可能,最终有可能冲突的车辆则是我们需要注意的,从而形成。LLM处理复杂和广泛的数据通过一个思维链的框架,思维链通过一系列的工具来串联,工具让LLM在决策过程中遵循每次只获取。总之,LLM拥有推理能力,
2024-03-27 21:55:08
4233
1
原创 【自动驾驶轨迹规划之时空语义走廊】
城市道路轨迹规划的难点在于有很多语义元素。不同的语义元素有不同的数学表征形式,提出了一种新的统一的时空语义走廊来为不同类别的语义元素来提供abstraction,可以推广到任何语义元素组合的场景。SSC由一系列互相连接的无碰撞cubes组成,其中包含了动态约束,并且轨迹生成问题可以归结于一个QP问题,并且通过贝塞尔曲线来保证轨迹安全性和可行性。
2024-03-23 19:20:14
5495
原创 【自动驾驶轨迹规划之碰撞检测(四)】
圆的性质是圆心到圆周各点等距,这非常适合碰撞检测,如果两个物体能近似为圆,那么两个物体之间是否碰撞,则可以利用两个圆心之间的距离是否大于半径之和就可以判断,但是大部分物体若用圆去近似将产生较大的冗余部分,因此针对汽车,一篇2010年的IEEE IV提出通过多个圆去覆盖车辆,这个方法极大地提高了自动驾驶汽车碰撞检测的计算速度,也是现在广泛使用的方法
2024-03-05 17:14:39
5733
3
原创 自动驾驶预测与决策规划(基于运动模型的预测)
Constant Velocity 模型:假设目标做匀速直线运动,再恒定速度的基础上加上高斯分布的噪声这是CV模型的连续表达形式与离散表达形式对于二维来说,CV模型比之前的一维模型复杂一些,可以看作两个方向的合成(矩阵的拼接)在代码中一般通过离散形式去simulate,这是一个CV模型的Python示例由右图可知,CV模型在遇到时效果较差、
2024-03-05 17:06:41
4996
原创 【自动驾驶轨迹规划之nuplan数据集】
nuPlan是。虽然基于机器学习的运动规划算法越来越多,但由于缺乏成熟的数据集、模拟框架和指标,限制了这一领域的进展。现有的自动驾驶汽车运动预测基准()侧重于其他智能体的。这导致以前的工作使用,这不适合公平地评估长期规划。nuPlan提供了一个训练框架来开发一个、一个轻量级的,、一个运动规划的和一个可视化结果的。
2024-03-05 16:47:37
7813
1
原创 【自动驾驶轨迹规划之kinodynamic planning】
kinodynamic是一个合成词,由运动学与动力学组成这样的一个规划问题是受限于运动学约束:如避障、高阶微分模型。受限于动力学约束:如状态量控制量有界。
2024-02-12 15:54:08
4716
原创 【自动驾驶轨迹规划之碰撞检测(三)】
inflation_layer:膨胀层,用于在障碍物外标记一层危险区域,在路径规划时需要避开该危险区域当你选用了footprint,那么膨胀层就没有意义了,因为只有你是圆形的,障碍物才能进行有意义的闵可夫斯基和运算同时footprint是利用多边形计算代价,在耗算力,如果为了节省算力,可以用圆,冗余的部分当做缓冲就行如果你发现怎么调膨胀距离都会碰,因为膨胀层仅在圆形时有效,因此为了使用有安全距离的footprint,必须直接扩大footprint通过下图来认识下为何要设置膨胀层以及意义:
2024-01-17 00:42:43
5345
原创 【自动驾驶轨迹规划之碰撞检测(二)】
而具身足迹的意思则是在两个离散点之间自动驾驶汽车自身所覆盖的足迹,这并不是一个新的概念,计算机图形学中的扫掠体与这个具身足迹的意义相同。李柏老师用矩形框去近似具身足迹,也就实现了连续碰撞检测,但是有些保守,不适合狭窄空间,但是安全性较好,具体结合曲率去分析这个具身足迹的性质可以参考原文
2024-01-16 23:43:42
5925
原创 【自动驾驶轨迹规划之碰撞检测(一)】
这种方法是游戏中或物理引擎中常用的,AABB是指一个东西的包围盒,但是它横平竖直的,而OBB是会随着这个东西而旋转,包围盒始终不变,显然AABB相对保守但是后续计算简单,OBB更精确但是后续计算复杂。当对于两个凸边形是否相交,又可以转换为是否凸边形的每个顶点都在另一个凸边形之外,那么判断一个点是否在凸边形之外的计算几何算法就有很多,比如。对于自动驾驶汽车或机器人的路径规划,碰撞检测是其中非常重要的一个模块,因为碰撞检测不仅仍然是路径规划中的。受益于多边形的性质,对于两个都是多边形的物体,
2024-01-16 22:56:33
7227
1
原创 机器人中的数值优化之罚函数法
由于L1-罚函数非光滑,因此无约束优化问题P的收敛速度无法保证,这实际上就相当于用牺牲收敛速度的方式来换取优化问题P的精确最优解。,如在1e-2~1e-3之间可接受。约束违背量不要求特别小时可采用。除了直接一步到位,还可以。
2023-12-29 22:42:52
4747
原创 机器人中的数值优化之无约束优化
欢迎大家关注我的B站:偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com)本文ppt来自深蓝学院《机器人中的数值优化》
2023-12-28 21:24:14
4302
原创 机器人中的数值优化之牛顿共轭梯度法
如何解决Hessian矩阵非正定的情况求解线性系统需要很精确么引入截断的机制,如果Hessian矩阵不是正定的,而且是初始位置,说明刚开始用共轭梯度的效果很差,所以直接把搜索方向改为负梯度方向,到达一个相对较好的初始位置否则直接break,因为如果此时用共轭法可能会让函数上升
2023-12-28 21:11:20
4277
原创 机器人中的数值优化之线性共轭梯度法
hessian矩阵需要n方的复杂度,逆需要n三次方的复杂度,我们求解d需要hessian矩阵的逆hessian与向量的乘积经过泰勒展开的简化可以变为只需求两次梯度
2023-12-28 20:42:11
4869
原创 机器人中的数值优化之L-BFGS
对于strong wolfe conditions来说,非凸函数会导致条件失败,因为非凸。通过右侧框图中的算法流程可以把复杂度从n方降到n,具体细节可以阅读论文。想要实现应用于非凸非光滑函数的BFGS,需要在BFGS的基础上加上。对于非凸光滑的函数,L-BFGS是最优的,对于非凸非光滑函数,L-BFGS也可以应用。这也就是所谓limited-memory。来实现每次迭代只利用m+1对。当迭代点之间相隔很远,不是很有用,同时为了。
2023-12-28 17:19:03
4749
原创 《密集环境下编队飞行的分布式集群轨迹优化》论文解读二
参数映射通过线性时间复杂度与空间复杂度将轨迹转化,使代价函数可以二阶连续为了解决时间积分约束,如避障和动态可行性,通过采样将其转化为有限维度约束
2023-12-18 16:39:36
4523
原创 《密集环境下编队飞行的分布式集群轨迹优化》论文解读一
一个机器人编队可以被建模为一个无向图,每个机器人可以与其他机器人通信,因此图是完备的,图中edge的值是两个机器人之间的距离的平方A是邻接矩阵,D是度矩阵,L是拉普拉斯矩阵,同时对其进行。
2023-12-15 00:47:21
3018
原创 汽车底盘构造之离合器
(4)操纵机构:分离杠杆、分离杠杆支承柱、摆动销、分离套筒、分离轴承、离合器踏板。分离间隙:离合器彻底分离后,从动盘工作端面与飞轮及压盘表面间的间隙。按螺旋弹簧布置方式分类:周布螺旋弹簧离合器、中央弹簧离合器。自由间隙:离合器接合时,分离轴承端面与分离杠杆端头间的间隙。自由行程:从踩下离合器踏板到自由间隙消除所对应的踏板行程。(2)从动部分:从动盘、从动轴(即变速器第一轴)按压紧弹簧分类:膜片弹簧离合器、螺旋弹簧离合器。分离过程:首先消除自由间隙,然后产生分离间隙。(1)主动部分:飞轮、压盘、离合器盖。
2023-12-04 01:25:17
3240
原创 自动驾驶控制算法之PID调参
为实现PID控制,我们可以利用离散的PID控制来实现,当采样时间足够短时,也能保持较好的性能,公式如下。同时项目中还要求写一个 reset 的函数,我们需要更新下面这四个参数来保证从头开始。需要注意的点就是积分初始值为0、微分初始值为0。
2023-02-02 20:10:24
4717
1
原创 Apollo planning之参考线平滑算法
输入raw_reference_line,设置中间点(GetAnchorPoints),然后smooth,最后输出。lateral_bound、longitudinal_bound代表裕度,enforced代表是否是强约束。离散点平滑算法也是基于评价函数来做的,分别衡量。这里是对参考线平滑算法进行配置,对于平滑度的衡量有两种方式。参考线平滑算法主要有三种。同时还需要满足约束条件。这是中间点的配置文件。
2023-02-02 20:00:47
9496
原创 Apollo planning之交规决策技术
modules/planning/conf/scenario/traffic_light_protected_ config.pb.txt中进行定义。有Routing、Prediction、Location、Perception等等module,这作为决策模块的输入。前面遍历配置的信息都存储到ReferenceLineInfo中,A p o l l o 对 交 通 规 则 的 处 理 是。中设置的交通规则,处理后相关信息存入。路径上过近的车辆,较为拥挤的道路。的情况进入不同的Scenario。
2023-02-02 18:52:49
4163
2
原创 机器人中的数值优化之BFGS(nonconvex and smooth)
这是cautious update,一般在。当我们需要搜索方向是下降方向时,一定要让。,这就需要满足wolfe条件。首先需要满足充分下降条件,,当离最优解很近时没必要。
2023-01-31 17:43:10
1044
3
原创 机器人中的数值优化之修正阻尼牛顿法
当函数是二次型时,近似没有起到效果,迭代的过程就是求解原函数最优解的过程,因此当然。当遇到hessian矩阵不是正定时,我们需要。将牛顿法与最速下降法相比,,否则会出现上述两种情况,,具体的数学推导请参考。,具体的数学推导请参考。
2023-01-28 18:02:46
1391
原创 机器人中的数值优化之最速下降法
梯度方向是函数上升最快的方向,而负梯度方向则是函数下降最快的方向,因此。如果采用衰减步长迭代,可以保证收敛,但是随着步长越来越短,收敛越来越慢。如果采用恒定步长迭代,将导致不停的震荡,始终无法收敛。非精确线搜索:我们不希望再求解子优化问题,也就是。前面我们讨论了迭代方向如何选择,现在讨论。,对于条件数,不清楚的读者可以参考。而这里也采用了一种二分的方法,当。这里我们还需要考虑条件数的问题,对于次梯度的介绍,读者请参考。时,就可以停止二分,取此步长。,但实际上这导致我们又。
2023-01-28 16:48:55
1439
2
原创 自动驾驶控制算法之车辆横向控制(project)
在理解算法时可能没有关注到上述两个量的正负,但是用代码实现时,这是非常重要的问题。横向误差:因为当一辆车在参考轨迹的右侧和左侧,转向角必须做出相反的反应,这里通过向量叉乘判断车在参考轨迹的哪一侧。航向误差:会涉及到的问题就是需要把两角之差限制到-pi~pi,因为原始角度会出现差2*k*pi是代表一样的角度,导致把多出来的2*k*pi附加到转向角中
2023-01-19 11:28:36
3625
4
原创 自动驾驶控制算法之车辆纵向控制(project)
本文为深蓝学院-自动驾驶控制与规划-第二章作业。本项目希望大家根据PID控制方法实现一个巡航控制系统。我们已经为大家开发了ROS1.0的系统框架,仅需要大家实现.cpp文件中的todo部分,即 control 实现以及 reset PID参数。
2023-01-17 20:56:52
3185
1
原创 机器人中的数值优化之凸函数
条件数:存在hessian矩阵的函数,作奇异值分解,最大的奇异值除最小的奇异值就是条件数,可导但没有二阶信息的函数,通过利普希茨常数与强凸函数的常数的比值得到条件数,对于一般的不可微的函数,构造等高线,长轴与短轴之比为条件数。条件数决定了我们需不需要在优化算法中利用函数的高阶信息
2023-01-01 23:07:33
1627
原创 机器人中的数值优化之函数高阶信息
hessian矩阵是对称矩阵,最后一个公式是函数关于0的泰勒展开 负梯度是函数下降的最快方向注意区分Hessian矩阵与Jacobian矩阵,Hessian矩阵对应的函数是向量映射到标量,矩阵元素是二阶信息,而Jacobian矩阵对应的函数是向量映射到向量,矩阵元素是一阶信息。 上述几种不同的高阶信息是由于函数映射中X、Y的不同类型导致导数的形式不同Matrix calculus - HandWiki用两种方法计算梯度,一种是元素法,一种是向量法
2023-01-01 21:23:30
452
原创 机器人中的数值优化之凸集
集合中任意两点连线形成的线段属于这个集合,这个集合是凸集。注意:是否是凸集,集合的边界是否属于这个集合很重要这涉及到构造最小凸包的问题。上面列出的超平面、半空间等等都是凸集的典型代表锥不一定是凸集,比如锥的横截面是非凸集合,那么锥也是非凸的。上面的二阶锥是通过增加一个维度产生的。半正定的锥为何是凸集可以利用在集合中取A,B,证明他们的凸组合仍然在这个集合里。2 凸集的运算凸集的并集不一定是凸或非凸,凸集的交集一定是凸集。凸集的sum与product一定是凸集。
2023-01-01 20:09:49
1419
原创 机器人中的数值优化之基本概念
目标函数不能存在负无穷的值,这样会使得最小值无法在计算机中用浮点数表示,最小值可以很小但必须有界,也就是上述的 lower bounded。sub-level sets就是下水平集,此时要求目标函数不能存在当x趋于无穷时函数趋于某个值即下水平集无界,这同样会导致最小值无法用浮点数表示
2023-01-01 19:33:18
1109
2
原创 rosdep update遇到ERROR: error loading sources list: The read operation timed out问题
添加到脚本中的download_rosdep_data()函数中,以应用ghproxy代理服务(可能不在311行,要找到对应函数名)里面DEFAULT_INDEX_URL的参数,将网址改为。
2022-12-29 16:08:36
1417
原创 Ubuntu安装python解析器遇到问题: 软件包 python没有可安装候选
说明Ubuntu的版本相对较高,应该下载python3的解析器。会出现如下情况,软件包python没有可安装候选。古月居老师给的安装指令为。在终端输入,就可以成功。
2022-12-28 23:32:32
6242
4
原创 路径规划算法之刚体变换
1 一般概念假设刚体机器人a被定义为R2或R3的一个子集。刚体变换是一个函数,它将A的每一点映射到W,有两个要求:1)A的任意两点之间的距离必须保持,2)A的方向必须保持(没有“镜像”)。对于某a∈A, h(a)表示W中被a“占据”的点。这是h的像,表示变换后的机器人占据W中的所有点。1.1 基元的变换上述是一整个刚体进行变换,但是对于一个复杂的机器人,我们通常用多个基元的组合来定义,如因此变换的函数如下如果利用逆映射,则变换的函数如下1.2 一个参数化的变换族。
2022-11-30 13:56:33
2175
1
原创 路径规划算法之几何建模
对于运动规划,如何对机器人和环境进行几何建模是非常重要的内容。几何建模的方法和技术多种多样,具体的选择通常取决于应用和问题的难度。在大多数情况下,通常有两种选择:边界表示与实心表示。首先介绍凸集,当且仅当,对于X中的任何一对点,连接它们的线段上的所有点都包含在X中。因此,x1和x2之间的插值总是在X中产生点。直观地说,X不包含口袋或缩进。不仅可以用多项式来定义f ,一个流行的基元是超二次元,它概括了二次曲面。一个例子是超椭球体广义圆柱是普通圆柱的推广。
2022-11-28 13:10:02
4367
原创 《移动机器人运动规划与集群协同》直播要点总结
在移动机器人领域往往进行模块化的开发,自主导航系统的功能分为感知、规划、控制,明确他们之间的输入输出关系。在信息共享的基础上就能进行协同导航,从而单机系统延伸为集群系统。研究现状:目前的无人机单机系统运行速度慢,只能应对比较稀疏的简单环境。对本身系统的建模,需要对物理系统的动力学系统精准描述,同时又需要对环境进行建模,从感知中得到的数据怎么处理成规划模块读得懂的数据结构是一个非常重要的问题。规划等于开环的控制,控制等于闭环的规划。这是对于初学者值得思考的一个问题。
2022-11-13 01:47:34
1638
2
docker pull 有一个部分卡在pull fs player
2023-01-13
docker: Error response from daemon: failed to create shim task: OCI runtime create failed
2023-01-07
没有libnvidia-ml.so.1这个文件
2023-01-07
安装 nvidia-docker2 出现问题/ docker pull太慢
2023-01-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人