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

51c自动驾驶~合集39

我自己的原文哦~   https://blog.51cto.com/whaosoft/12707676

#DiffusionDrive

大幅超越所有SOTA!地平线DiffusionDrive:生成式方案或将重塑端到端格局?

近年来,由于感知模型的性能持续进步,端到端自动驾驶受到了来自工业界和学术界的广泛关注,端到端自动驾驶算法直接从原始传感器采集到的信息输入中学习驾驶策略。这种基于数据驱动的方法为传统的基于规则的运动规划提供了一种可扩展且强大的替代方案,而传统的基于规则的运动规划通常难以推广到复杂的现实世界驾驶环境。为了有效地从数据中学习驾驶过程,主流的端到端规划器通常从自车查询中回归出单模轨迹,如下图所示。

图片

然而,这种回归单模轨迹的框架模式并没有考虑到驾驶行为中固有的不确定性和多模式的性质。最近,提出的端到端自动驾驶算法VADv2引入了大量固定的锚点轨迹vocabulary。然后,根据预测的评分从这些锚点中进行采样。然而,这种大型固定vocabulary范式从根本上受到锚点轨迹数量和质量的限制,在vocabulary不足的情况下经常会失败。此外,管理大量锚点对实时的自动驾驶应用来说带来了巨大的计算挑战。

与离散化动作空间不同,扩散模型已被证明是机器人领域一种强大的生成决策策略,它可以通过迭代去噪过程的方式直接从高斯分布中采样多模式物理上合理的动作。这激励我们将机器人领域的扩散模型的成功经验复制到端到端自动驾驶领域当中。

我们将原始机器人扩散策略应用于单模回归方法Transfuser。与普通扩散策略不同,人类驾驶员遵循既定的驾驶模式,并根据实时交通状况进行动态调整。这一认识促使我们将这些先前的驾驶模式嵌入到扩散策略中,具体方法是将高斯分布划分为以先前锚点为中心的多个子高斯分布,称为anchored Gaussian分布。它是通过截断diffusion schedule来实现的,从而在先前的锚点周围引入一小部分高斯噪声,如下图所示。

图片

为了增强与条件场景上下文的交互,我们提出了一种基于Transformer的扩散解码器,它不仅与感知模块的结构化查询交互,还通过稀疏可变形注意机制与鸟瞰图 和透视图特征交互。此外,我们引入了一种级联机制,在每个去噪步骤中迭代细化扩散解码器内的轨迹重建。

最终,我们提出了一种实时端到端自动驾驶的扩散模型,称之为DiffusionDrive。我们在NAVSIM数据集上对我们的方法进行闭环评估的基准测试。相关的实验结果表明,DiffusionDrive实现了88.1的PDMS,显著超过了之前的SOTA算法。此外,我们通过开环评估进一步验证了DiffusionDrive在nuScenes数据集上的性能, 相关的实验结果表明提出的DiffusionDrive实现了SOTA的表现结果。

论文链接:https://arxiv.org/pdf/2411.15139​

算法模型网络结构&技术细节梳理

调研工作

如前文所述,我们先从非常具有代表性的端到端规划算法Transfuser开始,通过简单地将回归MLP层替换为遵循扩散策略的条件扩散模型 UNet,将其转变为生成模型。在评估过程中,我们采样随机噪声并通过20个step逐步对其进行细化,相关的实验结果如下表所示。

图片

为了进一步研究扩散策略在驾驶中的多模式特性,我们从高斯分布中采样了20个随机噪声,并使用20个step对其进行去噪。如下图所示。

图片

不同的随机噪声在去噪后会收敛到相似的轨迹。为了定量分析模式坍塌现象,我们定义了一个模式多样性得分,根据每条去噪轨迹与所有去噪轨迹的并集之间的平均交并比计算得到:

图片

相关的实验结果如下表所示。通过表格中的结果可以看出,mIoU 越高,表示去噪轨迹的多样性越低。通过可视化的结果可以看出类似的效果。此外,通过下表的实验结果还可以看出,DDIM扩散策略需要20个去噪step才能将随机噪声转换为可行轨迹,这会带来大量计算开销。这使得它对于实时在线驾驶应用来说不切实际。

图片

截断扩散

人类的驾驶行为遵循着固定模式,不同于普通扩散策略中的随机噪声去噪。受此启发,我们提出了一种截断扩散策略,该策略从锚定高斯分布而不是从标准高斯分布开始进行去噪过程。为了使模型能够学习从锚定高斯分布到所需的驾驶策略进行去噪,我们在训练期间进一步截断扩散计划,只向锚点添加少量高斯噪声。

训练过程:我们首先通过向训练集上由K-Means 聚类的锚点添加高斯噪声来构建扩散过程。我们通过截断扩散噪声方案来将锚点扩散到锚定高斯分布,相关的计算公式如下。

图片

在训练期间,扩散解码器将噪声轨迹作为输入,并预测分类分数和去噪轨迹,相关公式如下。

图片

我们将最接近真实轨迹的锚点周围的噪声轨迹指定为正样本,其他轨迹指定为负样本。训练目标结合了轨迹重建和分类,计算公式如下所示。

图片

推理过程:我们使用截断去噪过程,从锚定高斯分布中采样的噪声轨迹开始,并逐步对其进行去噪,直至完成最终预测。在每个去噪时间戳中,上一步估计的轨迹被传递给扩散解码器,该解码器预测分类分数和坐标。在获得当前时间戳的预测后,我们将 DDIM 更新规则应用于下一个时间戳的样本轨迹。

推理灵活性:我们提出的自动驾驶DiffusionDrive算法的一个关键优势在于其推理的灵活性。虽然模型是用轨迹进行训练的,但其推理过程可以容纳任意数量的轨迹样本,并可以根据计算资源或应用要求进行动态的调整。

DiffusionDrive算法整体框架图

如下图所示,展示了我们提出的算法模型DiffusionDrive的网络结构。

图片

DiffusionDrive算法模型可以集成之前端到端规划器中使用的各种现有感知的模块,并接受不同的传感器信息作为输入。设计的扩散解码器专为复杂且具有挑战性的驾驶应用而量身定制,增强了与条件场景环境的交互。

Diffusion Decoder:给定一组从锚定高斯分布中采样的噪声轨迹,我们首先应用可变形空间交叉注意力来与基于轨迹坐标的鸟瞰图 (BEV) 或透视图 (PV) 特征进行交互。随后,在轨迹特征和从感知模块派生的代理/地图查询之间执行交叉注意力,然后接一个FFN网络。为了对扩散时间戳信息进行编码,我们使用Timestep Modulation Layer,然后是多层感知机网络,用于预测置信度得分和相对于初始噪声轨迹坐标的偏移量。该Timestep Modulation Layer的输出用作后续级联扩散解码器层的输入。DiffusionDrive 进一步重用级联扩散解码器在推理过程中迭代地对轨迹进行去噪,并在不同的去噪时间步长之间共享参数。选择置信度得分最高的最终轨迹作为输出。​

实验结果&评价指标

整体性能比较

下表展现了将DiffusionDrive与NAVSIM数据集上最先进的算法模型进行比较的实验结果汇总。

图片

使用相同的 ResNet-34主干网络,DiffusionDrive 获得了 88.1 PDMS 分数,与之前基于学习的方法相比,其性能有显著的提高。与 VADv2自动驾驶算法相比, DiffusionDrive 超越了它 7.2 PDMS,同时将锚点数量从 8192 个减少到 20 个,减少了 400 倍。DiffusionDrive 还优于遵循 VADv2 的vocabulary采样范式的 HydraMDP算法模型,PDMS相比于提高了 5.1。即使与性能更强的算法模型相比,DiffusionDrive 仍然比它高出 3.5 个 EP 和 1.6 个整体 PDMS,完全依赖于直接向人类学习的方法,没有任何的后处理操作步骤。与 Transfuser算法模型的基线相比,我们仅在规划模块上有所不同,DiffusionDrive 实现了显着的 4.1 PDMS 改进,在所有子分数中均优于它。

此外,如下表所示,使用扩散策略将Transfuser算法模型转换为生成式,可将PDMS 得分提高 0.6,并提高模式多样性得分11%。然而,它也显著增加了规划模块的开销,需要 20 倍以上的去噪step和 32 倍的时间,导致运行时开销总共增加了 650 倍。

图片

通过采用所提出的截断扩散策略,将去噪step的数量从 20 减少到 2,同时实现了 PDMS 增加 1.1,模式多样性提高 59%。通过进一步结合所提出的扩散解码器,最终 DiffusionDrive 模型达到了 88.1 PDMS 和 74% 的模式多样性得分。相比于,DiffusionDrive实现了3.5 PDMS 和 64% 模式多样性的改进, 以及去噪step减少了10倍,从而使 FPS 速度提高了 6 倍。这可以实现实时、高质量的多模式规划。

消融实验分析

下表显示了我们在扩散解码器中的设计选择的有效性。通过比较 ID-6 和 ID-1,我们可以看到所提出的扩散解码器减少了 39% 的参数,并将规划质量显著提高了 2.4 PDMS。由于缺乏与环境的丰富和层次化交互,ID-2 表现出严重的性能下降。通过比较 ID-2 和 ID-3,我们可以看到空间交叉注意对于准确规划至关重要。ID-5 表明所提出的级联机制是有效的,并且可以进一步提高性能。

图片

下表的实验结果表明,由于起始点的选择比较合理,DiffusionDrive仅需1步即可达到良好的规划质量。进一步增加去噪步长可以提高规划质量,并使其在复杂的环境下具有灵活的推理能力。

图片

通过下表的实验结果可以看出,消除了级联阶段数的影响。增加阶段数可以提高规划质量,但在 4 个阶段就会饱和,并且每一步都会花费更多的参数和推理时间。

图片

由于在上文中已经有所提到,DiffusionDrive 只需从锚定高斯分布中采样可变数量的噪声即可生成不同的轨迹。下表的相关实验结果可以看出,10 个采样噪声已经可以实现不错的规划质量。通过采样更多噪声,DiffusionDrive 可以覆盖潜在的规划动作空间并提高规划质量。

图片

由于 PDMS 规划指标基于得分最高的轨迹进行计算,而我们提出的分数评估模式多样性,因此仅凭这些指标无法完全捕捉多样化轨迹的质量。为了进一步验证多模式轨迹的质量,我们在 NAVSIM数据集上的具有挑战性的场景中可视化了 Transfuser、和 DiffusionDrive 的规划结果,如下图所示。

图片

通过可视化的结果可以看出,DiffusionDrive 生成的多模式轨迹不仅多样性,而且质量较高。在上图的a图展示的结果可以看出,DiffusionDrive 算法模型生成的得分最高的前 10 条轨迹与真实轨迹非常相似,而突出显示的前 10 条得分轨迹出人意料地试图执行高质量的车道变换。上图的b图展示的结果可以看出,突出显示的前 10 条得分轨迹也执行车道变换,相邻的低得分轨迹进一步与周围的代理交互以有效避免了碰撞的发生。

nuScenes 数据集是之前流行的端到端规划基准。由于 nuScenes 的主要场景都是简单而琐碎的情况,因此我们仅进行相关结果的比较,如下表所示。

图片

我们根据 SparseDrive 的训练和推理方案,使用 ST-P3中提出的开环指标,在 SparseDrive之上实现了 DiffusionDrive算法模型。我们堆叠了 2 个级联扩散解码器层,并应用了具有 18 个聚类锚点的截断扩散策略。通过上表的实验结果可以看出,DiffusionDrive 将 SparseDrive 的平均 L2 误差降低了 0.04m,与之前最先进的方法相比,实现了最低的 L2 误差和平均碰撞率。同时 DiffusionDrive 算法模型也非常高效,运行速度比 VAD 快 1.8 倍,L2 误差降低了 20.8%,碰撞率降低了 63.6%。​

结论

在本文中,我们提出了一种新颖的生成式驾驶决策模型 DiffusionDrive,该模型结合了所提出的截断扩散策略和高效的级联扩散解码器,用于端到端自动驾驶。全面的实验和定性比较验证了 DiffusionDrive 在规划质量、运行效率和模式多样性方面的优越性。

#机器人甚至可以在火锅店中无痛部署!

Data Scaling Law

想象一下,你正在火锅店涮肉,一位“人美声靓”的服务员悄然从你身边走过,不仅及时地为你把菜送到身边,还帮你把菜端到桌子上并摆放整齐。正在酣畅淋漓涮肉的你正想夸一下这家店的服务真不错,猛一抬头发现,居然是个机器人!

咨询了店长才知道,这是昨天刚到的一批“服务员”。内心更加震惊:居然这么快就上岗工作了!都不用培训?即插即用?!

这大概就是Scaling law的魔力了吧。

现如今大模型已发展得如火如荼,然而为什么还没有实现真正的落地?也就是说,为了让AI渗透到生活的每个角落,实现边缘化部署,还需要做什么?有一点亟需研究清楚,即模型性如何能随数据集、模型大小和训练计算量的增加而提升?这就是Data Scaling Law,也可称为数据缩放定律。如何在保留数据集关键信息的同时,尽可能减少数据量,而不牺牲模型的性能?如何在不增加计算资源的情况下,尽量降低模型的错误率?

早在2020年,OpenAI就提出了对Neural Language Models的Scaling law(Kaplan et al.,https://arxiv.org/pdf/2001.08361),说明了模型性能随着模型参数量、数据量和用于训练的计算量的指数级增加而平稳提高。对于计算量(C),模型参数量(P)和数据大小(D),当不受其他两个因素制约时,模型性能与每个因素都呈现幂律关系。2022年DeepMind团队(Hoffmann et al., https://arxiv.org/pdf/2203.15556)发现不应该将大模型训练至最低的可能loss来获得计算最优,模型规模和训练tokens的数量应按相同比例扩展。2023年Hugging Face团队(Colin Raffel et al., https://arxiv.org/pdf/2305.16264)发现在量化在数据受限的情况下,通过增加训练epoch和增加模型参数可以以次优计算利用率为代价提取更多的信息

通过适当的数据缩放,单任务策略可以很好地泛化到任何新环境以及同一类别中的任何新对象。值得注意的是,机器人甚至可以在火锅店中进行零样本部署!

,时长00:38

视频来源:​​https://data-scaling-laws.github.io/​​

文章表明,当前机器人策略缺乏零样本泛化能力,文章旨在研究机器人操作中数据缩放规律,为构建大规模机器人数据集提供指导。文章探讨了机器人操作模仿学习中的数据缩放规律,通过实验揭示了策略泛化性能与训练环境、对象及演示数量的关系,提出了高效的数据收集策略。

DATA SCALING LAWS IN IMITATION LEARNING FOR ROBOTIC MANIPULATION
​​​https://data-scaling-laws.github.io/​​https://data-scaling-laws.github.io/paper.pdf

论文通过 Pour Water(倒水)和 Mouse Arrangement(鼠标放置)两项任务进行大量实验以得出数据缩放规律,并在 Fold Towels(叠毛巾)和 Unplug Charger(拔充电器)等其他任务上进一步验证这些发现。文章的发现如下:

  • 简单幂律:策略对新对象、新环境或两者的泛化能力分别大致与训练对象、训练环境或训练环境 - 对象对的数量呈幂律关系。
  • 多样性就是关键:增加环境和对象的多样性远比增加每个环境或对象的演示绝对数量更有效。
  • 泛化比预期更容易:在尽可能多的环境(例如 32 个环境)中收集数据,每个环境有一个独特的操作对象和 50 次演示,就能够训练出一个对任何新环境和新对象都能很好泛化(90% 成功率)的策略。

相关工作

那么,有哪些已有研究工作与机器人操作数据缩放定律相关呢?

  • 缩放规律:缩放规律最初在神经语言模型中被发现,揭示了数据集大小(或模型大小、计算量)与交叉熵损失之间的幂律关系。
  • 机器人操作中的数据缩放:机器人操作领域也有数据规模扩大的趋势,但部署仍需微调。本文关注训练可直接在新环境和未见对象中部署的策略,同时也有研究探索提高数据缩放效率以增强泛化能力。
  • 机器人操作中的泛化:包括对新对象实例、新环境的泛化以及遵循新任务指令的泛化。本文专注于前两个维度,即创建能在任何环境中操作同一类别内几乎任何对象的单任务策略。

研究方法

  • 概括维度:考虑环境(对未见环境的泛化)和对象(对同一类别新对象的泛化)两个维度,通过收集不同环境和对象的人类演示数据,使用行为克隆(BC)训练单任务策略。
  • 数据缩放规律公式化:在M个环境和N个同一类别的操作对象中收集演示数据,每个环境 - 对象对收集K个演示,评估策略在未见环境和对象上的性能,以揭示泛化能力与变量M、N、K的关系。
  • 评估:通过在未见环境或对象中测试评估策略泛化性能,使用测试者分配的分数作为主要评估指标(计算归一化分数),同时最小化测试者主观偏差,确保结果可靠。

实验结果与分析

实验结果如下。以Pour Water和Mouse Arrangement任务为例,增加训练对象数量可提高策略对未见对象的性能,对象泛化相对容易实现,且训练对象增多时,每个对象所需演示减少

用相同操作对象在不同环境收集数据,增加训练环境数量可提升策略在未见环境的泛化性能,但每个环境中演示数量增加对性能提升的作用会快速减弱,且环境泛化比对象泛化更具挑战性。

在环境和对象同时变化的设置中,增加训练环境 - 对象对数量可增强策略泛化性能,且同时改变环境和对象比单独改变更能增加数据多样性,使策略学习更高效

实验结果遵循幂律缩放规律,策略对新对象、新环境或两者的泛化能力分别与训练对象、环境或环境 - 对象对数量呈幂律关系;当环境和对象数量固定时,演示数量与策略泛化性能无明显幂律关系。

为了实现高效的数据收集策略,文章建议在尽可能多的不同环境中收集数据,每个环境使用一个独特对象;当环境 - 对象对总数达到32时,通常足以训练出在新环境中操作未见对象的策略。

实验表明,超过一定数量的演示收益甚微,对于类似难度任务,建议每个环境 - 对象对收集50个演示,更具挑战性的灵巧操作任务可能需要更多演示。

为了验证上述策略的合理性,将数据收集策略应用于Fold Towels和Unplug Charger新任务,四个任务(包括之前的Pour Water和Mouse Arrangement)的策略成功率约达90%,凸显了数据收集策略的高效性。

模型大小和训练策略:研究Diffusion Policy中视觉编码器的训练策略和参数缩放影响,发现预训练和全量微调对视觉编码器至关重要,增加其大小可提升性能,但缩放动作扩散U - Net未带来性能提升。

文章还强调数据缩放应注重数据质量,本文揭示了环境和对象多样性在模仿学习中的重要价值。但本文仍存在一些局限性,比如当前工作专注于单任务策略的数据缩放,未探索任务级泛化;仅研究了模仿学习中的数据缩放,强化学习或可进一步增强策略能力;UMI收集数据存在小误差且仅用Diffusion Policy算法建模,未来可研究数据质量和算法对数据缩放规律的影响;资源限制下仅在四个任务上探索和验证数据缩放规律,期望未来在更多复杂任务上验证结论。

#生成模型 | 去噪扩散模型 DDPM 半小时理论扫盲

本文希望先跳过很多不熟悉的名词和定理,找出我认为适合初学者理解的部分,下一篇文章 [生成模型 2] 整流流 Rectified Flow 理论简介

有个完整理解后,再看 ewrfcas:由浅入深了解Diffusion Model 就不会觉得害怕

本文大量参考了网上文献和使用 跃问 辅助,如有纰漏求指正

主要参考的是苏神的 生成扩散模型漫谈(一):DDPM = 拆楼 + 建楼 和 生成扩散模型漫谈(二):DDPM = 自回归式VAE,DDPM 论文

假设读者记得一些概率论的基本知识,如果忘了可以移步 Deja vu:一文带你看懂DDPM和DDIM(含原理简易推导,pytorch代码) 看前置知识

核心价值 以能量模型为抓手,将得分匹配下沉到朗之万方程的动态轨迹,打通马尔可夫链底层逻辑,发力变分推断引爆点,形成去噪过程递归闭环,拉通前向-反向全链路,卡位生成模型赛道,造势图像生成风口,布局多模态蓝海,沉淀噪声调度护城河,赋能潜在空间表征,倒逼模型优化,输出高质量样本反馈,升华生成建模格局,重塑数据生成认知矩阵,击穿传统生成模型研究员心智,打出一套组合拳。

生成扩散模型介绍

从 2019 BigGAN 可以生成 ImageNet 某一类别的 128p 图片,2022-2023 的 DALLE-2/3 又是新的里程碑

用卷积神经网络做图像任务,模型性能随着模型参数 / 训练数据量增加,其实经常是边际收益递减的

我理解 transformer 流行的一个原因是在模型放大时能有不错的边际收益,而生成扩散模型则找到了一种可以在推理时使用非常大算力来提升效果的范式,这两者实现它们和卷积神经网络的差异化

分步扩散和生成

我们的目标是一个生成模型,它从随机噪声 z 变成数据样本 x

图片

如果我们能把中间扩散的每一步的逆过程 生成 建模出来,得到一个生成函数:=()(2)

然后从随机噪声 z 开始,生成 T 步就得到了 x

CV+DL 白话:训练的时候,随机采样数据 x 和步数 t,学到的变换模型,推理的时候,从一个随机高斯噪声递归调用 T 步学出来的模型得到生成结果

具体来说,DDPM 的扩散过程是

图片

其一般形式来自 Variational Diffusion ModelsVariational Diffusion Models

图片

之后推导中可以把系数看作是我们选的常数项

图片

图片

图片

图片

这里可以看到可训练参数是噪声项的下标,表示我们实际上是在预测第 t 步添加到数据样本中的噪声(实现上就是一个输入 xt 和 t 的神经网络)

代入损失函数有

推导中把 xt 变成了 x0 的加噪形式 (4)

图片

小结:到这里我们已经了解很多了,我们知道了一个单步的具体优化过程,其中只有一个关键步骤是高斯噪声叠加过程的理解
接下来这个小节是为了把两个通过一些技巧变成一个,使得我们采样时方差变小,优化更简单

损失函数优化(可以跳过)

图片

图片

参数选取

图片

在实践中,DDPM 设置生成步数 T=1000,后续有很多工作讨论加速和优化

图片

图片

另一方面据苏神解释,在图像上用欧式距离时,当两张图片非常接近时才好度量,所以不管是选取大的 T,还是单调递减的,都是希望在靠近图片一侧的扩散过程的每一步都走的不太远,而在靠近噪声一侧走得远一点也无妨

我感觉就算选取了更好的度量,我们仍然会希望把更多的推理开销花在靠近图片的一侧而不是最初叠加噪声的过程

小结:以上其实就是完整推导,后面是从 VAE 的角度再解释一遍,大部分推导技巧是一致的

VAE 角度理解

稍微介绍几句 VAE,做过一段神经网络的朋友应该都知道编解码结构,z = g(x), x' = f(z)

用一张图 x 和 f(g(x)) 计算欧式距离就可以训练这样一对网络

如果我们抛弃掉 g,随便采样一个 z,解码 f(z) 出来会发现基本上是噪声

这是因为 z 的先验分布 q(z) 没有建模,f 对随机的 z 是不鲁棒的

VAE 会将条件分布 p(z|x)(编码)和 q(x|z)(解码)以及 q(z) 建模为高斯分布

但是这种一步到位的做法并不能提供足够强的表达能力

图片

图片

做生成模型的目标是希望生成模型的联合分布 q 尽可能接近真实数据的联合分布 p,可以通过最小化 KL 散度实现

联系到 DDPM

在 DDPM 中,模型每一步的编码过程 p (3),是不含可训练参数的,所以标红的 p 是常数项

所以 (16) 就是

对比一下就是把 log 下面的分母变出前面负号,然后写成求和形式

这里的先验分布q()一般取标准高斯分布, 所以取 log 是常数项

看求和中的第 t 步

(18)

图片

图片

其实就是 (8) 多了权重和常数项,往后推的结果和 (11) 也只是有权重系数区别

这个系列为了督促自己补齐相关知识,希望能持续写一段时间

#VisionPAD

3DGS自监督预训练全新范式!三大感知任务全部暴力涨点(港中文&华为)

虽然近一年端到端的自动驾驶发展火热,但是以多视角图像推导BEV视角和占用空间的感知技术引领的自动驾驶框架,仍然在很多企业中占据主体。比如今天要分享的这篇,就是华为诺亚方舟实验室对BEV+OCC的继续研究。但是不得不说,这些模型在很大程度上依赖于精确的3D标注,而数据标注的高成本使得越来越多的研究人员和工程师开始关注预训练策略

  • 论文链接:https://arxiv.org/pdf/2411.14716

传统意义上的预训练是监督预训练,用于3D目标检测和占用预测等任务,当然这种方式仍然伴随着标注成本过高的问题。再者,有其他方法使用 对比学习 和 掩码自编码器(MAE) 进行自监督预训练。然而,它们依赖于粗监督,这使得同时有效地捕获语义、3D几何和时间动态变得具有挑战性。UniPAD通过重建体素特征的多视图深度图和图像引入了一种预训练范式(见图1(a))。这种方法使用可微分的体积渲染来构建完整的几何表示。在此基础上,ViDAR结合了下一个帧预测和变换器,并渲染出由未来LiDAR帧监督的相应深度图。然而,这两种技术仍然严重依赖于来自LiDAR数据的显式深度监督来学习3D几何。仅依赖于图像监督的结果不令人满意,这限制了它们在基于摄像头的自动驾驶系统中的应用。

在本文中,作者提出了VisionPAD,这是一个针对视觉中心数据的自监督预训练框架(见图1(b))。与之前使用体积渲染进行图像重建的方法不同,作者利用了更高效的基于锚点的3D Gaussian Splatting(3D-GS)。这篇文章的贡献可以总结为一下几点:

  • 能够在相同的计算预算下重建更高分辨率的图像,捕捉更细粒度的颜色细节,而无需射线采样。
  • 为了仅从图像中学习运动线索,作者提出了一种自监督的体素速度估计方法。作者使用辅助头预测每个体素的速度,并使用时间戳近似体素流向相邻帧。随后,作者将当前帧的体素扭曲到相邻帧,并使用相应的图像监督3D-GS重建。这种速度预测使模型能够分离动态和静态体素,有助于下游任务中的运动感知。
  • 作者采用了多帧光度一致性损失进行3D几何预训练,这是一种自监督深度估计技术,其中算法根据渲染的深度和相对姿态将相邻帧投影到当前帧。

相关工作自动驾驶中的预训练

在自动驾驶中,预训练已经被广泛应用,来提高在多样化驾驶环境中的可扩展性和适应性。现有的方法可以分为:

  • 监督学习
  • 对比学习
  • Masked AutoEncoder
  • 基于渲染的方法。

监督学习方法利用标注的驾驶数据来学习针对特定任务的结构化表示。对比学习方法使用正负成对数据来学习在驾驶场景内变化中保持鲁棒的区分性、视角不变的表示。Masked AutoEncoder方法重建被遮挡或掩码的感官信号,促进对场景语义的整体理解。最近基于渲染的预训练进展提出了新的策略,通过将视觉特征整合到统一的体积表示中进行渲染,从而为自动驾驶感知提供新的策略。与先前工作的关键区别在于这些基于渲染的方法使用了神经渲染,有效地强制编码在体积特征中丰富的几何和外观线索。UniPAD引入了一个掩码生成器用于部分输入遮挡,以及一个模态特定的编码器在体素空间中提取多模态特征,然后基于体积的神经渲染用于RGB和深度预测。ViDAR基于历史周围图像观察预测未来的点云。MIM4D以掩码多帧多视图图像为输入,使用体积渲染重建目标RGB和深度。BEVWorld将图像和LiDAR数据编码为BEV标记,并使用NeRF渲染进行重建,结合了一个潜在的BEV序列扩散模型来预测基于相应动作的未来BEV标记。然而,上述方法仍然严重依赖于显式的深度监督,这在仅限相机的场景中限制了它们的应用。

自动驾驶中的3D Gaussian Splatting

最近,基于3D Gaussian Splatting(3D-GS)的方法获得了显著的关注。3D-GS允许使用3D高斯原语表示场景,通过光栅化实现最小内存占用的实时渲染。已经提出了几种使用这种技术重建驾驶场景的方法。PVG引入了周期振动高斯用于大规模动态驾驶场景重建。DrivingGaussian层次化地使用顺序多传感器数据建模复杂的驾驶场景。此外,StreetGaussians结合了跟踪姿态优化策略和4D球谐外观模型来解决移动车辆的动态问题。HUGS引入了一个新颖的流程,利用3D Gaussian Splatting进行整体城市场景理解。这种方法涉及使用静态和动态3D高斯的几何、外观、语义和运动的联合优化。最近也有一些工作利用3D-GS进行占用和BEV感知。

然而,作者表示3D-GS在自动驾驶预训练中的应用尚未被探索。​

方法论

模型概述

VisionPAD的整体框架如图2所示,包含四个关键模块:

  • 首先,VisionPAD采用历史多帧多视图图像,并利用具有显式表示的视觉中心感知网络作为主干。
  • 其次,一个新颖的3D Gaussian Splatting(3D-GS)解码器从体素表示中重建当前帧的多视图图像。
  • 第三,提出了一种体素速度估计策略,预测体素速度,使得当前帧的体素特征可以扭曲到目标帧。这有助于通过3D-GS解码器重建多视图相邻帧图像和深度图。
  • 最后,利用当前帧的目标深度图,通过光度一致性损失纳入3D几何约束。

体积构建

给定M个历史多视图图像作为输入到代表性的视觉中心框架,VisionPAD使用共享图像主干提取2D图像特征,得到体素特征表示,其中N、H和W分别表示图像的视图数、高度和宽度。然后,视图变换将这些2D特征提升到3D自我中心坐标系中,生成体积特征。最后,一个包含多个卷积层的投影层进一步提炼体积表示,记作。

3D Gaussian Splatting解码器

预备知识

3D Gaussian Splatting(3D-GS)将3D场景表示为一组高斯原语,其中每个高斯由其3D位置、协方差、不透明度和球谐系数定义。为了通过梯度下降进行高效优化,协方差矩阵通常被参数化为缩放矩阵和旋转矩阵的乘积:

将3D高斯投影到2D图像平面上涉及视图变换和投影变换的仿射近似的雅可比。得到的2D协方差矩阵为:

从给定视点渲染图像,通过混合个有序高斯体来计算每个像素的特征,其中应用了alpha-blend渲染过程:

为了进一步增强几何表示,作者结合了多视角深度图重建:

与体积渲染不同,3D-GS通过基于splat的光栅化高效渲染,将3D高斯投影到目标2D视图,并使用局部2D高斯渲染图像块。作者观察到,当仅使用RGB监督进行预训练时,NeRF每次迭代只能采样有限数量的射线,限制了其学习详细场景几何的能力。相比之下,3D-GS以其高效的基于splat的光栅化,展现出对图像分辨率不太敏感的计算成本,能够渲染更高分辨率的图像,并促进表示学习。

原语预测

引入基于锚点的3D Gaussian Splatting,作者将体素特征转换为一组3D高斯,如图2所示。每个体素中心作为锚点,从该锚点预测多个高斯原语的属性。具体来说,作者使用MLP来回归每个高斯在锚点上的参数(即锚点MLP),包括其相对于体素中心的偏移、球谐系数、不透明度、尺度和旋转。这种表示通过不同视图图像的可微分渲染,促进了高效的多视图图像合成,利用已知的相机内参和外参通过方程3。最后,3D-GS解码器生成多视图图像,由当前帧的多视图图像进行监督,其中N是视图数,H和W分别是图像的高度和宽度。高斯过滤。为了减少预训练期间的计算开销,作者根据其预测的不透明度过滤低置信度的高斯体。具体来说,不透明度是使用tanh激活函数预测的,预测不透明度小于0的高斯体被丢弃。

自监督体素速度估计

在本文中,作者引入了一种自监督方法来估计每个体素的速度,利用场景中对象的固有时间一致性。这种运动信息丰富了表示,并有助于动态场景的理解。速度引导体素扭曲。如图3所示,附加到体素特征的辅助速度头在世界坐标中回归每个体素的速度向量。之后,作者通过将预测的速度按帧间时间间隔缩放,近似每个体素的流动,使得体素特征从当前帧变换到相邻帧。随后,作者将体素特征扭曲到相邻帧中的估计位置。上述过程可以通过GridSample操作符轻松实现相邻帧渲染。在获得相邻帧的扭曲体素特征后,作者使用3D-GS解码器渲染多视图图像。然后,这些渲染的图像与相邻帧的相应真实图像使用监督损失进行比较。值得注意的是,在反向传播期间,只有速度头的参数被更新。这种针对性的优化策略鼓励网络优先学习区分性运动特征,从而提高性能。

光度一致性

光度一致性是自监督深度估计中提出的一种方法。它利用目标帧的预测深度图将源帧重新投影到源视图中:

其中表示可微分网格采样操作符,表示目标帧的预测深度图,是从帧t到t'的相对姿态变换点,K代表相机内参。proj()计算源帧中对应于投影深度值的2D像素坐标。然后计算光度一致性损失:

其中和分别是目标帧和重新投影的图像。α是一个平衡SSIM和L1项的权重超参数。为了增强几何表示,作者通过利用当前帧的渲染深度图作为在上述方程中纳入光度一致性进行预训练。这个深度图,由3D Gaussian Splatting解码器生成,可以表示为:

其中和分别是体积特征、相机内参和外参。

预训练损失

作者的预训练策略包括三个损失项。首先,作者对当前帧体素特征通过3D-GS解码器渲染的多视图图像施加L1重建损失,并与相应的真实图像进行比较。其次,自监督速度估计通过应用于扭曲体素特征渲染的多视图图像的L1损失进行监督,鼓励模型准确预测速度,以确保运动补偿后的一致性重建。最后,作者加入光度一致性损失,进一步细化模型对场景几何的理解。这些损失的组合可以表示为:

其中ω_1, ω_2 和 ω_3 的权重分别为0.5, 1, 1。​

实验及结果

实验设置

作者在MMDetection3D框架下实现。在nuScenes数据集上评估其方法。使用标准的nuScenes Detection Score (NDS) 和平均精度均值(mAP)来评估3D目标检测任务。语义占用预测和地图分割的性能分别使用平均交并比(mIoU)和交并比(IoU)进行评估。

主要结果

作者在三个具有挑战性的下游感知任务上评估VisionPAD的有效性:3D目标检测、语义占用预测和地图分割。3D目标检测的可视化结果可以在图5中找到。

3D目标检测

如表1所示,作者在nuScenes验证集上将VisionPAD与最先进的视觉中心3D目标检测方法进行基准测试。以UVTR作为基线,作者报告了使用UniPAD预训练所达到的性能。尽管仅使用图像数据进行训练,VisionPAD在基线上显示出显著的改进,在没有多帧输入的情况下,NDS和mAP分别提高了1.7和3.8。值得注意的是,没有测试时增强、模型集成或LiDAR监督,VisionPAD达到了49.7 NDS和41.2 mAP,超过了现有的最先进方法。相比之下,在同一监督信号下,UniPAD预训练仅比基线略有提高,甚至在NDS上从45.0略微下降到44.8。虽然将LiDAR投影的深度图作为额外监督可以提高性能,但这突显了仅依赖于从RGB图像中获得的几何监督的局限性,这限制了泛化能力。VisionPAD以其强大的显式深度监督,一致性地优于UniPAD,展示了作者提出的方法的有效性。

语义占用预测

如表2所示,作者的仅图像模态预训练方法超过了某些3D检测监督预训练方法,达到了35.4%,与TPVFormer的34.2%相比。此外,其性能甚至与利用长时间线索的方法相当。在相同设置下,作者的预训练技术显著提高了mIoU性能,从UVTR的30.1%提高到35.4%。值得注意的是,在预训练期间没有深度监督,UniPAD仅实现了1%的mIoU提升。即使使用更强的基线(即BEVDet),使用七个历史帧作为输入,使用VisionPAD预训练仍然显著提高了性能,从39.3%提高到42.0%。这些结果突出了VisionPAD在密集占用预测中的有效性。

地图分割

表3展示了作者的方法和UniPAD在地图分割任务上的性能提升。作者以UVTR作为基线,并使用UniAD的地图解码器进行地图分割预测。结果表明,UniPAD仅比UVTR提高了1.3%,而VisionPAD大幅提升了5.4%的性能。​

写在最后

本文介绍了VisionPAD,这是一个新颖的自监督预训练框架,用于自动驾驶中的视觉中心算法。利用 Gaussian Splatting、自监督体素速度估计和光度一致性方法,VisionPAD消除了对显式深度监督的依赖。作者的结果表明,与需要深度监督的现有基于神经渲染的方法相比,VisionPAD在性能上有所提高,并且降低了计算开销。这项工作为高效、可扩展的自监督视觉中心预训练建立了一个新的范式。

#2024年自动驾驶热门方向综述汇总

1、端到端自动驾驶

【CARLA中的端到端自动驾驶全面综述】讨论了基于CARLA的最先进实现如何通过各种模型输入、输出、架构和训练范式解决端到端自动驾驶中遇到的各种问题。对这些方法进行了简明总结。最后,对这些方法进行了评估与讨论,并提出了未来应对端到端模型当前挑战的方向。
题目:End-to-End Autonomous Driving in CARLA : A Survey

非机构化道路上的自动驾驶:我们走了多远?

【非机构化道路上的自动驾驶:我们走了多远?】通过250多篇关于非结构化室外环境自动驾驶的论文,涵盖了离线地图构建、位姿估计、环境感知、路径规划、端到端自动驾驶、数据集及相关挑战。
题目:Autonomous Driving in Unstructured Environments: How Far Have We Come?

2、occupancy感知

信息融合视角下的自动驾驶占用感知综述#3D占用感知技术旨在观察和了解自动驾驶车辆的密集3D环境。由于其全面的感知能力,该技术正成为自动驾驶感知系统的一种趋势,并引起了业界和学术界的极大关注。与传统的鸟瞰图(BEV)感知类似,3D占用感知具有多源输入和信息融合的必要性。然而,不同的是,它能够捕捉到被2D BEV忽略的垂直结构。在这项调查中,我们回顾了关于3D占用感知的最新工作,并对各种输入模式的方法进行了深入分析。具体来说,我们总结了通用的网络流程,突出了信息融合技术,并讨论了有效的网络训练。我们在最受欢迎的数据集上评估并分析了最先进的占用感知性能。此外,还讨论了挑战和未来的研究方向。我们希望本文能激发社区的热情,并鼓励开展更多关于3D占用感知的研究工作。
论文:A Survey on Occupancy Perception for Autonomous Driving: The Information Fusion Perspective

【基于视觉的自动驾驶3D Occupancy预测研究综述与展望】从三个方面对基于视觉的3D占据预测的进展进行了全面调查:特征增强、部署友好性和标签效率,并对各类方法的潜力和挑战进行了深入分析。
题目:Vision-based 3D occupancy prediction in autonomous driving: a review and outlook

基于视觉的自动驾驶3D占用预测研究综述与展望仓库:https://github.com/zya3d/Awesome-3D-Occupancy-Prediction

3、目标检测&分割&跟踪

【2024年10月 首篇最新!开放世界目标检测全面综述】涵盖了问题定义、基准数据集、源代码、评估指标以及现有方法的对比研究等重要方面。这是首篇对新兴OWOD领域进行全面综述的论文,引用了超过一百篇参考文献,标志着目标检测技术的重要进展。
题目:Open World Object Detection: A Survey

【2024年9月最新!自动驾驶3D目标检测中的深度学习前沿】本综述探讨了3D目标检测在提高自动驾驶汽车安全性和效率方面的关键作用,强调了其在自动驾驶系统中的重要性。这篇综合性综述旨在为研究人员和从业者提供有价值的见解,指导开发可靠的3D目标检测系统,这对于自动驾驶技术的安全部署至关重要。
题目:Deep Learning Frontiers in 3D Object Detection: A Comprehensive Review for Autonomous Driving

【2024年9月最新自动驾驶中的3D目标检测综述!】总结了传统的3D目标检测方法,重点介绍了基于相机、基于LiDAR以及融合检测技术。对每种方法的优缺点进行了全面分析,强调了在精度和稳健性方面的进展。
题目:A Review of Developments in 3D Object Detection for Autonomous Driving

【2024.8月最新!自动驾驶中3D目标检测的综述:技术进步和未来方向】全面总结了传统的3D目标检测方法,重点关注基于摄像头、基于激光雷达以及融合检测技术。对每种方法的优缺点进行了综合分析,突出展示了在准确性和鲁棒性方面的进展。
题目:A Comprehensive Review of 3D Object Detection in Autonomous Driving: Technological Advances and Future Directions

【自动驾驶的语义分割综述仓库分享】包括:FCN-like Network、Transformer-based Networks、Two-branch Network、Multi Branch Networks。\

  • 仓库链接:https://github.com/mohamedac29/Real-time-Semantic-Segmentation-Survey

YOLOv10的起源: 《You Only Look Once》系列的十年!
YOLOv10 to Its Genesis: A Decadal and Comprehensive Review of The You Only Look Once Series

【2024最新综述!自动驾驶中的单目3D 车道线检测: 最新成就、挑战与展望】本综述定义、分析和审查了3D车道检测研究领域的当前成就,涵盖了3D车道检测流程,调查了最先进算法的性能,分析了尖端建模选择的时间复杂性,并突出了当前研究努力的主要成就和局限性。
题目:Monocular 3D lane detection for Autonomous Driving: Recent Achievements, Challenges, and Outlooks

【2024年7月最新——自动驾驶3D目标检测最新进展综述】全面调查了自动驾驶汽车最先进的3D目标检测技术,强调了多传感器融合技术和先进深度学习模型的重要性。此外还提出了未来研究的关键领域,包括增强传感器融合算法、提高计算效率以及解决伦理、安全和隐私问题。
题目:Recent Advances in 3D Object Detection for Self-Driving Vehicles: A Survey

【3D点云分类和语义分割的深度学习技术综述】分析了最近在点云处理中应用的深度学习方法的进展,并提出了推进该领域的挑战和潜在方向。重点介绍了3D点云处理中的两个主要任务——即3D形状分类和语义分割。
题目:A comprehensive overview of deep learning techniques for 3D point cloud classification and semantic segmentation

【300多种分割方法一网打尽!基础模型时代的图像分割综述】重点关注以基础模型驱动的图像分割研究。还提供了来自CLIP、Stable Diffusion和DINO等基础模型的分割知识的见解。提供了对300多种分割方法的详尽概述,以概括当前研究工作的广度。
题目:Image Segmentation in Foundation Model Era: A Survey

【自动驾驶中的鱼眼感知】探讨了如何在最大限度地减少鱼眼摄像头缺点的同时,充分利用其优点!
题目:An Overview of Multi-View Fisheye for Vision-First Autonomous Driving

【通过深度迁移学习来推进3D点云理解:一项全面调查】全面概述了使用DTL和域适应(DA)理解3DPC的最新技术。各种应用,如3DPC目标检测、语义标注、分割、分类、配准、降采样/升采样和去噪。
题目:Advancing 3D Point Cloud Understanding through Deep Transfer Learning: A Comprehensive Survey

【半监督目标检测:从CNN到Transformer】深入探讨了半监督学习的核心组件及其在目标检测框架中的整合,涵盖数据增强技术、伪标签策略、一致性正则化和对抗训练方法。
题目:Semi-Supervised Object Detection: A Survey on Progress from CNN to Transformer

【自动驾驶全景感知研究综述】本综述回顾了典型的全景感知模型,分析它们的独特输入和架构,并将其与性能、响应速度和资源利用情况进行比较。
题目:Panoptic Perception for Autonomous Driving: A Survey

深度学习在自动驾驶道路分析中的进展综述

​​https://t.zsxq.com/ujefS​​

很棒的多模态目标跟踪综述

​​https://t.zsxq.com/nnkOB​​

不同级别自动驾驶的分层感知增强:最新综述

​​https://t.zsxq.com/195WALh3T​​

计算机视觉与仿真中的环绕视鱼眼光学:综述与挑战

​​https://t.zsxq.com/LWg8F​​

2024最新!自动驾驶中鲁棒的3D目标检测综述

​​https://t.zsxq.com/Xd5wZ​​

2024最新!基于多模态融合的3D目标检测:自动驾驶中的新趋势

​​https://t.zsxq.com/6sBSJ​​

ADAS中的目标检测、识别和跟踪算法——近期趋势研究综述

​​https://t.zsxq.com/dXypK​​

自动泊车系统技术综述

​​https://t.zsxq.com/114Cg​​

4、大模型

【硬件加速大型语言模型的Transformer网络全面综述!】该综述介绍了已提出的框架,然后在技术、处理平台(FPGA、ASIC、内存中、GPU)、加速比、能效、性能(GOPs)和能效(GOPs/W)等方面进行定性和定量比较。
题目:Hardware Acceleration of LLMs: A comprehensive survey and comparison

【基础模型时代的SAM在视频中的应用系统综述】作为首个对SAM在视频领域进展进行综述的工作。重点讨论其在各种任务中的应用,探讨了最近的进展以及在广泛应用中开发基础模型的创新机会。
题目:Segment Anything for Videos

【视觉-语言多模态大模型的全面概述】118页的综述,是我目前看过最全最完整的综述,系统梳理了大模型的整个发展历史和子领域需要重点关注的未来方向!对于刚入门的同学系统性的了解视觉大语言模型很有帮助。本书是一本权威的资源,既提供了理论框架,也提供了实践见解,为研究人员、从业者以及对自然语言处理与计算机视觉交叉领域感兴趣的学生提供了宝贵的参考。
题目:A Comprehensive Survey and Guide to Multimodal Large Language Models in Vision-Language Tasks

自动驾驶中的大模型!全面概述了XLMs在实现自动驾驶方面的潜力

​​https://t.zsxq.com/KdFGu​​

从有效多模态模型到世界模型

​​https://t.zsxq.com/NkhMA​​

Segment Anything Model 综述

​​https://t.zsxq.com/Y3JuE​​

自动驾驶的视觉基础模型最新综述

​​https://t.zsxq.com/764e6​​

5、扩散模型

【扩散模型及其应用全面综述】本综述提供了对扩散模型的全面概述,包括其理论基础和算法创新。突出了其在媒体质量、真实性、合成、图像变换、医疗保健等多个领域的应用。
题目:A Comprehensive Survey on Diffusion Models and Their Applications

【首个围绕低层次视觉任务中去噪扩散模型技术全面综述】介绍了三种通用的扩散模型框架,并探讨了它们与其他常用深度生成模型的关联,从而为后续分析奠定理论基础。此次全面审查旨在促进对低层次视觉任务中去噪扩散模型研究现状的深刻理解。
题目:Diffusion Models in Low-Level Vision: A Survey

扩散模型在3D视觉中的算法及应用全面综述

​​https://t.zsxq.com/GgYqH​​

扩散模型如何在智能交通(自动驾驶、交通仿真、轨迹预测等)领域发挥作用?

​​https://t.zsxq.com/0jwWY​​

6、多模态

【200+文献!多模态对齐和融合最新综述】全面回顾了近年来机器学习中多模态对齐与融合的最新进展,这些进展得益于文本、图像、音频和视频等数据类型的日益多样化。
题目:Multimodal Alignment and Fusion: A Survey

【低质量数据的多模态融合:最新综述】从数据中心的角度看,确定了多模态融合在低质量数据上面临的四个主要挑战。这个新的分类法将使研究人员能够了解该领域的现状,并确定几个潜在的方向。
题目:Multimodal Fusion on Low-quality Data: A Comprehensive Survey

7、强化学习

【机器人中的强化学习最新综述!】对用于机器人的DRL进行了现代综述,特别着重评估了DRL在实现若干关键机器人能力方面的现实成功。
题目:Deep Reinforcement Learning for Robotics: A Survey of Real-World Successes

8、Mamba

【Mamba才是计算机视觉的未来?24年10月最新综述一探究竟】本综述分析了 Mamba 模型的独特贡献、计算优势和应用,同时也指出了挑战和未来潜在的研究方向。
题目:Mamba in Vision: A Comprehensive Survey of Techniques and Applications

【A Survey on Vision Mamba】首篇Mamba在视觉中的应用全面综述。
题目:A Survey on Vision Mamba: Models, Applications and Challenges

【最近与Mamba相关的研究深入调查】全面回顾了相关研究,重点介绍了Mamba模型的架构设计、数据适应性和应用。最后,我们讨论了当前的局限性,并探索了各种有前途的研究方向,以为未来的研究提供更深入的见解
题目:A Survey of Mamba

#HYPERmotion

学习自适应行为规划用于自主运动操作

论文标题:HYPERmotion: Learning Hybrid Behavior Planning for Autonomous Loco-manipulation

论文链接:https://arxiv.org/pdf/2406.14655

项目链接:https://hy-motion.github.io/

作者单位:意大利科技研究院 热那亚大学

使机器人能够在多样的环境中自主执行混合动作,对于长时间跨度的任务(如物料搬运、家务劳动和工作辅助)具有重要意义。这需要充分利用机器人的内在运动能力,从丰富的环境信息中提取可用性,并规划物理交互行为。尽管近期的进展展示了令人印象深刻的人形机器人全身控制能力,但它们在新任务的多样性和适应性方面仍存在挑战。本研究中提出了 HYPERmotion,一个基于不同场景中任务的学习、选择和行为规划框架。我们将强化学习与全身优化结合,生成38个驱动关节的运动,并创建一个运动库来存储已学习的技能。本文将大型语言模型(LLMs)的规划和推理能力应用于复杂的运动操作任务,构建一个层级任务图,其中包含一系列原始行为,旨在桥接低层执行和高层规划。通过利用提炼的空间几何信息和二维观测与视觉语言模型(VLM)之间的交互,将知识与机器人形态选择器结合,以选择单臂或双臂、步态或轮式运动中的合适动作。在仿真和实际环境中的实验表明,学习到的运动能够高效地适应新任务,并且能够在无结构场景中从自由文本命令中展现出较高的自主性。

HYPERmotion方法设计

具备行为自主性的类人机器人一直被视为我们日常生活中的理想合作伙伴,并且有力代表。与固定基座的机器人臂相比,由于类人机器人在结构上的特点,它们提供了更大的操作空间,但同时也大大增加了控制和规划的难度。尽管向通用类人机器人发展的进展迅速,大多数研究仍集中在运动学任务上,较少有研究探讨类人机器人的全身协调学习,这导致了简单的控制设计,难以适应新任务和新环境,从而限制了它们在开放式指令下执行长时间跨度任务的潜力。一个主要的挑战是如何探索类人机器人的可执行性,丰富其行为表现,同时学习推断可用性和空间几何约束,从而像人类一样利用已学技能为各种任务进行规划。

近年来,机器人学习领域的蓬勃发展使其成为操控和运动任务中的一个有前景的方向。基于学习的方法,如强化学习(RL),已经成为任务导向的动作生成的有效工具,同时也有助于在多样化场景中的泛化。然而,将学习算法扩展到类人机器人仍然是一个挑战,原因在于自由度(DoF)的大幅增加导致训练成本呈指数增长,并且在动态约束下将这些算法部署到真实机器人上非常困难。与此同时,大型语言模型(LLMs)的兴起及其在机器人规划中的卓越能力使得执行逻辑推理和构建复杂任务的层次化动作序列成为可能。通过整合来自不同模态的观测数据,这些模型可以用于提取物体和环境的特征,以支持机器人感知和决策。然而,LLM在类人机器人中的应用仍然存在一些局限性,特别是在复杂的全身运动控制和身体各部位之间的精确协调方面。

为了解决这些问题,本文首先认识到,直接通过仿真训练输出现实世界多关节系统的全身轨迹是低效且不切实际的。因此,本文采用了一种分解式训练策略,根据给定任务模块化地选择相关的驱动组件,并通过统一的运动生成器将低维空间轨迹投影到全身空间中。训练后的动作作为技能单元存储在运动库中。本文利用大型语言模型(LLM)分解由多个子任务组成的复杂语义指令的能力,并设计了一个模块化的用户界面作为模型输入。LLM从运动库中选择技能并安排一系列动作,这些动作被称为任务图。此外,从捕获的二维图像和深度数据中提取的三维特征可以与视觉语言模型(VLM)和机器人内在特性结合,充当机器人运动形态选择器。

本文将这项研究称为 HYPERmotion,这是一个利用语言模型解决类人机器人自主运动操作行为规划的框架。通过利用提炼的空间几何信息与二维观测数据与视觉语言模型(VLM)之间的交互,它将知识与机器人可用性结合,引导形态选择,并桥接语义空间、机器人感知与动作之间的鸿沟。本文展示了一种基于学习的全身控制方法,生成适应新任务的类人运动,并使用原始技能执行长时间跨度的任务。通过实验,本文进一步说明了 HYPERmotion 如何在高自由度、混合轮式-步态机器人上进行学习和部署,并在人工指令下进行zero-shot在线规划。

图1:HYPERmotion使类人机器人能够学习、规划和选择行为,以完成长时间跨度的任务。步骤1-5展示了机器人如何在基础模型的指导下,解读口头指令后自主执行运动和操作,并独立选择适用于不同场景的运动模式。

图2:HYPERmotion框架概述。本文将该框架分为四个模块:运动生成用于学习和训练全身运动技能,以应对新任务,并将其存储在运动库中;用户输入包括接收到的任务指令和初始化提示集;任务规划通过LLM的推理和规划功能生成任务图,引导机器人行为,并将动作指令传递给真实机器人;形态选择器用于特定子任务中的动作确定,根据基于空间知识和机器人内在特征的知识,选择适合运动和操作的形态。

图3:全身任务学习示意图,包括训练、仿真和现实环境中的设置。

图4:机器人形态选择器在接收到语言条件任务状态后,从物理环境中提取空间几何数据和二维观测信息,并与结合了机器人可用性的视觉语言模型(VLM)进行交互,从而提供满足特定任务场景要求的最优运动形态,用于操作和运动过程。

图5:在不同环境中执行不同任务时末端执行器位置轨迹。

实验验证:

图6:形态选择器在不同场景下的成功率。“2D”和“SD”分别表示图像和空间数据输入。

图7:长时间跨度任务的整体视图。上方图像展示了机器人运动轨迹的时间推移。A. 使用AprilTag的语义导航。B. 物体检测和姿态估计。C. 操作形态选择。D. 运动形态选择。下方的行为树展示了LLM任务规划的详细信息。

图8:类人机器人成功执行各种LLM规划任务的平均成功率,以及任务过程中由于不同类型错误导致的失败情况。

总结:

本文提出了HYPERmotion,一个使类人机器人能够学习、选择和规划行为的框架,融合知识和机器人可用性来执行具身任务。通过实际环境中的实验和长时间跨度的任务,本文评估了该框架的效率和多样性。尽管取得了预期的结果,但仍存在一些局限性:运动库的规模限制了任务指令的范围,而新技能的学习需要单独的训练优化,阻碍了从现有动作的泛化。此外,系统在处理外部干扰和碰撞时存在困难,任务执行过程中缺乏实时语言交互,且在面对突发任务时缺乏重新规划的能力。未来的工作将集中于丰富机器人的动作技能,增强LLM的动态规划能力,并改善机器人导航和感知,以实现闭环类人运动和安全的人机协作。

#吉利系智驾或再将整合

据知情人士透露,Smart汽车与极斯的智驾团队正在接触,未来双方在智驾上或许有合作的可能性。

Smart汽车与极斯同时作为吉利旗下的整车品牌,随着吉利最近大规模整合旗下各个整车品牌,Smart汽车与极斯在智驾方面合作的可能性非常高。

极斯虽然是一个造车企业,但也做了不少Tier 1的业务,向吉利体系内其他的整车品牌提供智驾方案。极斯为包括领克和远程卡车在内的吉利系车企提供端到端的智驾方案和研发服务。

极斯在其最新的财报中披露,其智驾业务达成的合同价值已累计达1.3亿美元,客户包括远程汽车、一家日本头部Tier 1和一家欧洲头部主机厂。

在极斯的战略计划中,还将努力拓展非吉利体系的客户,将非吉利体系客户的收入占比提升至70%以上。从这也能看出其将智驾Tier 1业务视为一个重要增长点。

据悉,为了端到端的研发,极斯从阿里达摩院挖来一些技术人才,未来还会和某头部造车新势力的端到端项目合作,该新势力还会使用其他Tier 1做后处理。

极斯之前被爆出裁员,而Smart汽车2024年的销量也出现显著下跌,如果双方合作,在降本增效方面会有明显改观。

数据显示,2024年三季度三季度的总营收为2.55亿美元,同比增长36%。极斯在财报中透露,目前高速NOA已经推送,包括欧洲地区也可用,城区NOA“开城”中,正在重点城市开放测试。

Smart汽车在智驾上选择与多个公司合作,Smart曾与亿咖通宣布成立合资公司智马达软件科技有限公司,同时还采用元戎启行提供的无图城区NOA功能。

在当前汽车行业红海血卷的形势下,大型整车企业整合旗下各品牌的资源发挥更大的协同作用是一个大趋势。

#xxx

#xxx
#xxx
#xxx

相关文章:

51c自动驾驶~合集39

我自己的原文哦~ https://blog.51cto.com/whaosoft/12707676 #DiffusionDrive 大幅超越所有SOTA!地平线DiffusionDrive:生成式方案或将重塑端到端格局? 近年来,由于感知模型的性能持续进步,端到端自动驾驶受到了来…...

ThinkPHP场景动态验证

一、缘由 今天在用thinkphp8写东西的时候发现,写验证器规则和场景优点费时间,就算用tinkphp的命令行生成也是生成一个空壳。内容还是要自己填写感觉麻烦。 就突发奇想能不能自动生成验证器,也不能是说自动生成验证器,生成验证其的…...

3D基因组工具(HiC可视化)trackc--bioinfomatics tools 35

01 3D genome data analysis guides 茶树三维基因组-文献精读19 https://trackc.readthedocs.io/en/latest/install.html #官网 https://github.com/seqyuan/trackc #官网https://trackc.readthedocs.io/en/latest/analysis_guide/index.html #HiC可视化案例 …...

Maven进阶

前言 我们这一节讲一下Maven 1. 分模块开发的意义 同一个程序我们按功能划分为不同的模块 同一个模块导成jar之类的,这样就可以共享数据了 2. 分模块开发与设计 我们以原来的ssm整合的模块来考虑 我们来把domain这个模块搞消失,重新制造一个模块 我们…...

【k8s】kubelet 的相关证书

在 Kubernetes 集群中,kubelet 使用的证书通常存放在节点上的特定目录。这些证书用于 kubelet 与 API 服务器之间的安全通信。具体的位置可能会根据你的 Kubernetes 安装方式和配置有所不同,下图是我自己环境【通过 kubeadm 安装的集群】中的kubelet的证…...

我们来学mysql -- 事务并发之脏写(原理篇)

事务并发之脏写 题记脏写防止脏写题记 在《事务之概念》提到事务对应现实世界的状态转换,这个过程要满足4个特性这世界,真理只在大炮射程之类,通往和平的道路,非“常人”可以驾驭一个人生活按部就班,人多起来,难免鸡飞狗跳同理现实世界的状态转换映射到数据库,满足4个特…...

AI×5G 市场前瞻及应用现状

本文为《5GAI时代:生活方式和市场的裂变》一书读后总结及研究。 本书的上架建议是“经营”,内容也更偏向于市场分析。书出版于2021年,现在是2024年,可以收集整理一些例子,看看书里的前瞻性5GAI应用预测,到…...

LLM:模拟o1的思维链实现

本文项目地址:https://github.com/stay-leave/enhance_llm/tree/main/like-o1 运行的流程: 1.输入用户消息,query 2.组装消息列表,包括系统提示词(关键),用户消息,助手消息&#xff…...

vue3+vite 批量引入组件动态使用

import { ref, reactive, toRaw, markRaw, defineAsyncComponent, onMounted } from vue import type { Component } from vue// vue3vite 批量引入组件动态使用 const modules import.meta.glob<Component>(./details/*.vue) // 明确指定导入的模块类型为Component con…...

PyQt 中的无限循环后台任务

在 PyQt 中实现一个后台无限循环任务&#xff0c;需要确保不会阻塞主线程&#xff0c;否则会导致 GUI 无响应。常用的方法是利用 线程&#xff08;QThread&#xff09; 或 任务&#xff08;QRunnable 和 QThreadPool&#xff09; 来运行后台任务。以下是一些实现方式和关键点&a…...

【python使用kazoo连ZooKeeper基础使用】

from kazoo.client import KazooClient, KazooState from kazoo.exceptions import NoNodeError,NodeExistsError,NotEmptyError import json# 创建 KazooClient 实例&#xff0c;连接到 ZooKeeper 服务器 zk KazooClient(hosts127.0.0.1:2181) zk.start()# 定义节点路径 path…...

【MySQL】内置函数

MySQL中的内置函数 一、日期函数1.1 current_date函数1.2 current_time函数1.3 current_timestamp函数1.4 date_add函数1.5 date_sub函数1.6 datediff函数1.7 now函数综合使用1综合使用2 二、字符串函数2.1 charset函数2.2 concat函数2.3 length函数2.4 replace函数2.5 substri…...

机器学习面试八股总结

下面是本人在面试中整理的资料和文字&#xff0c;主要针对机器学习面试八股做浅显的总结&#xff0c;大部分来源于ChatGPT&#xff0c;中间有借鉴一些博主的优质文章&#xff0c;已经在各文中指出原文。有任何问题&#xff0c;欢迎随时不吝指正。 文章系列图像使用动漫 《星游…...

【Android Debug Bridge】adb常用指令(更新中)

adb常用指令 ADB&#xff08;Android Debug Bridge&#xff09;是一个强大的命令行工具&#xff0c;用于与连接的Android设备进行通信。 1&#xff1a;安装软件包&#xff0c;假设app安装包为apk adb install [apk]2&#xff1a;查看当前连接PC的安卓设备编号 adb devices3…...

贵州大学oj平台软工24-11-27第5次小测

题目&#xff1a;阶乘和函数 题目描述 设计一个计算阶乘和的函数&#xff0c;用于求1!2!...n!并返回结果。 其中n是函数的参数。 程序的开始部分及main函数已经写好如下&#xff1a; #include <stdio.h> double factSum(int n); int main(){ int n; scanf("…...

【GPT】代谢概念解读

以下是对代谢中分解代谢和合成代谢两个概念的深入解读&#xff0c;用简单易懂的方式展开说明&#xff1a; 1. 分解代谢&#xff08;Catabolism&#xff09; 什么是分解代谢&#xff1f; 分解代谢是身体把大分子“拆开”的过程。就像把一个三明治分解成面包片、肉片和菜叶&#…...

Flutter如何适配RTL

阿拉伯语和希伯来语等是使用的从右到左书写的文字系统。世界上估计有4.22亿人以阿拉伯语做为母语。使用从右至左的人口可以说是更多了。所以对于出海项目来说&#xff0c;是不能忽视的一部分。 RTL可以说是本地化适配中比较麻烦的一项&#xff0c;并没有多语言适配来的简单。RT…...

Java中的“接口“详解

1.接口的概念 在Java中接口可以看成是:多个类的公共规范,是一种引用数据类型 2.语法规则 接口的定义格式与类的定义格式相同,将"class"关键字换成"interface"关键字,就定义了一个接口. //接口的关键字"interface"定义了一个名称为"USB&…...

Windows 10电脑无声问题的全面解决方案

Windows 10操作系统以其强大的功能和用户友好的界面赢得了广大用户的青睐&#xff0c;但在使用过程中&#xff0c;有时会遇到电脑突然没有声音的问题。这一问题可能由多种原因引起&#xff0c;包括音频驱动程序问题、音频设置错误、系统更新冲突等。本文将详细介绍Windows 10无…...

ElasticSearch学习篇19_《检索技术核心20讲》搜推广系统设计思想

目录 主要是包含搜推广系统的基本模块简单介绍&#xff0c;另有一些流程、设计思想的分析。 搜索引擎 基本模块检索流程 查询分析查询纠错 广告引擎 基于标签倒排索引召回基于向量ANN检索召回打分机制&#xff1a;非精确打分精准深度学习模型打分索引精简&#xff1a;必要的…...

IPv6 NA RTR/SOL/OVR标志位,单播多播选择,ndppd代理和kernel配置

NA消息用单播还是多播的判断理由 单播回复&#xff08;Unicast&#xff09;&#xff1a; 如果客户端发送 RS 消息时&#xff0c;使用的是一个全局地址或链路本地地址作为源地址&#xff0c;则 RA 消息会单播回复到客户端的源地址。这种方式减少了网络中的广播流量&#xff0c;…...

LearnOpenGL 学习(入门--三角形,着色器,纹理)

你好&#xff0c;三角形 下面&#xff0c;你会看到一个图形渲染管线的每个阶段的抽象展示。要注意蓝色部分代表的是我们可以注入自定义的着色器的部分。 图形渲染管线的第一个部分是顶点着色器(Vertex Shader)&#xff0c;它把一个单独的顶点作为输入。顶点着色器主要的目的是…...

前端开发入门指南Day12:ES6进阶:面向对象的编程(Class类、继承、模块化)

今天&#xff0c;让我们探索ES6中面向对象编程的革新。想象一下&#xff0c;如果传统的JavaScript是一个手工作坊&#xff0c;那么ES6的类和模块化就是一个现代化工厂&#xff0c;让代码的组织和复用变得更加规范和高效。 一、为什么需要Class类的革新 &#x1f3af; 在ES6之…...

深入探索进程间通信:System V IPC的机制与应用

目录 1、System V概述 2.共享内存&#xff08;shm&#xff09; 2.1 shmget — 创建共享内存 2.1.2 ftok&#xff08;为shmmat创建key值&#xff09; 2.1.3 为什么一块共享内存的标志信息需要用户来传递 2.2 shmat — 进程挂接共享内存 2.3 shmdt — 断开共享内存连接 2.4…...

跨 CA 签发多个证书的 Nginx mTLS 配置

研究过用同一个 CA 签发的服务端和客户端证书的 Nginx mTLS 配置&#xff0c;本文要试验一番服务端和客户端证书由不同 CA 机构签发的情形。这是常有事&#xff0c;比如与客户间采用 mTLS 加密方式&#xff0c;需要文件交付可能是 客户端证书由甲方生成&#xff0c;发送客户端…...

CentOS7 虚拟机 双网卡绑定

一、网卡绑定模式 模式类型特点mode0round-robin&#xff08;平衡轮询策略&#xff09;基于per packet方式&#xff0c;轮询往每条链路发送报文。提供负载均衡和容错的能力&#xff0c;当有链路出问题&#xff0c;会把流量切换到正常的链路上。交换机端需要配置聚合口。mode1a…...

设计模式——方法链or流式接口

方法链或流式接口是一种编程模式或设计模式。核心思想是通过返回对象自身的应用&#xff0c;使得可以在一个表达式中连续调用多个方法。 c中实现这种模式 1.基本语法规则 &#xff08;1&#xff09;每个可链接的方法都返回对象自身的引用&#xff08;通常是*this&#xff09…...

BioDeepAV:一个多模态基准数据集,包含超过1600个深度伪造视频,用于评估深度伪造检测器在面对未知生成器时的性能。

2024-11-29, 由罗马尼亚布加勒斯特大学创建BioDeepAV数据集&#xff0c;它专门设计来评估最先进的深度伪造检测器在面对未见过的深度伪造生成器时的泛化能力&#xff0c;这对于提高检测器的鲁棒性和适应性具有重要意义。 数据集地址&#xff1a;biodeep 一、研究背景&#xff1…...

winform 程序添加API接口

假定你有这么一个winform程序&#xff0c;现在有需求开放一个接口&#xff0c;供外部调用&#xff0c;则你可以这样实现 安装需要的依赖包 Microsoft.AspNetCore.App 2.1.34 Microsoft.Extensions.Hosting 8.0.1使用线程在主窗体loading时候启动webhost publi…...

vscode 怎么下载 vsix 文件?

参考&#xff1a;https://marketplace.visualstudio.com/items?itemNameMarsCode.marscode-extension 更好的办法&#xff1a;直接去相关插件的 github repo 下载老版本 https://github.com/VSCodeVim/Vim/releases?page5 或者&#xff0c;去 open-vsx.org 下载老版本 点击这…...

jupyter-lab 环境构建

我平时用来调试各种代码的。 创建环境&#xff0c;安装库 conda create --name jupyterlab python3.12 -y conda activate jupyterlab conda install -c conda-forge jupyterlab nodejs之前用的是3.10的&#xff0c;但是最近安装的时候&#xff0c;发现3.10的python里面的jup…...

Mysql事务常见面试题 -- 事务的特性 ,并发事务问题 , undo_log和redo_log , 分布式事务

一. 事务的特性 ACID 原子性 --> 事务操作被视为一个整体 , 要么全部成功 , 要么全部失败一致性 --> 事务操作前后数据的变化是一致的隔离性 --> 事务的执行不受其他事务的影响持久性 --> 事务执行完毕会对数据永久保存 比如我们在转账的过程中 , A给B转账1000元…...

C# 线程--Thread类

目录 什么是线程&#xff1f; Thread类的定义 创建和启动线程 使用 ThreadStart 委托 使用 ParameterizedThreadStart 委托 Lambda简写 使用线程池&#xff08;ThreadPool&#xff09; 使用线程池的优点 使用 ThreadPool 的一般步骤 常用方法 Start() Join() Slee…...

【RK3588 Linux 5.x 内核编程】-内核高分辨率定时器

内核高分辨率定时器 文章目录 内核高分辨率定时器1、高分辨率定时器介绍2、高分辨率定时器API2.1 初始化定时器2.2 启动定时器2.3 停止定时器2.4 改变定时器超时时间2.5 定时器状态检查3、驱动实现4、驱动验证在前面的文章中,我们知道了如果在Linux内核中使用定时器。本文将详…...

论文阅读与源码解析:MogaNet

论文阅读与源码解析&#xff1a;MogaNet: Multi-order Gated Aggregation Network 论文地址&#xff1a;https://arxiv.org/pdf/2211.03295 GitHub项目地址&#xff1a;https://github.com/Westlake-AI/MogaNet 源码&#xff1a;https://github.com/Westlake-AI/MogaNet/blob/…...

长、宽数据表格转换

excel数据读取 使用 readxl 包读取 Excel 文件 library(readxl) 读取 Excel 文件&#xff1a; 使用 read_excel() 函数读取 .xlsx 或 .xls 格式的文件。可以选择指定工作表名或工作表索引。 # 读取 Excel 文件的默认工作表 data <- read_excel("path_to_y…...

华为 Mate 70 系列智能手机将运行不兼容 Android 的鸿蒙

华为宣布其 Mate 70 系列新智能手机将搭载不兼容 Android 的 HarmonyOS Next 操作系统。虽然是基于安卓系统的&#xff0c;但是该分叉树将正式分离。以后将不再兼容安卓系统软件。 HarmonyOS Next 可运行的应用数量仍然远远逊于 Android。华为表示 HarmonyOS Next 获得了逾 1.…...

【Halcon】 derivate_gauss

1、derivate_gauss Halcon中的derivate_gauss算子是一个功能强大的图像处理工具,它通过将图像与高斯函数的导数进行卷积,来计算各种图像特征。这些特征在图像分析、物体识别、图像增强等领域具有广泛的应用。 参数解释 Sigma:高斯函数的标准差,用于控制平滑的程度。Sigma…...

原型模式的理解和实践

引言 在软件开发中&#xff0c;我们经常需要创建具有相同属性或状态的对象。如果采用传统的构造函数或工厂模式来创建对象&#xff0c;那么每次创建对象时都需要重新设置对象的属性&#xff0c;这无疑增加了代码的冗余和复杂性。为了解决这一问题&#xff0c;原型模式&#xff…...

封装loding加载动画的请求

图片 /*** Loading 状态管理类*/ export class Loading {constructor(timer300) {this.value falsethis.timer timer}/*** 执行异步操作并自动管理 loading 状态* param {Promise|Function|any} target - Promise、函数或其他值* returns {Promise} - 返回请求结果*/async r…...

特种设备相关管理A全国通用试题

1.下列&#xff08;&#xff09;类型的起重机械的定期检验每年1次。 A.机械式停车设备 B.施工升降机 C.门式起重机 D.桅杆式起重机 答案:B 2.压力容器安全技术监察规程中所指的容积&#xff0c;应为&#xff08; &#xff09;。 A.应当扣除永久连接在压力容器内部的内件…...

ES语法(一)概括

一、语法 1、请求方式 Elasticsearch&#xff08;ES&#xff09;使用基于 JSON 的查询 DSL&#xff08;领域特定语言&#xff09;来与数据交互。 一个 ElasticSearch 请求和任何 HTTP 请求一样由若干相同的部件组成&#xff1a; curl -X<VERB> <PROTOCOL>://&l…...

反射的作用

只要不是写死在程序里的对象的创建和调用&#xff0c;都可以用反射来实现。 例如&#xff0c;依据注解或配置信息动态生成并注入对象的需求场景&#xff0c;生成动态代理的需求场景。...

KARE:知识图谱社区级检索,增强 LLM 推理能力的医疗预测框架

KARE&#xff1a;知识图谱社区级检索&#xff0c;增强 LLM 推理能力的医疗预测框架 论文大纲理解要点全流程分析核心模式解法拆解知识图谱社区检索和普通检索有什么本质区别&#xff1f;为什么要同时使用专家LLM和本地LLM&#xff1f;动态知识检索中的评分机制是如何平衡多个因…...

LabVIEW氢气纯化控制系统

基于LabVIEW的氢气纯化控制系统满足氢气纯化过程中对精确控制的需求&#xff0c;具备参数设置、过程监控、数据记录和报警功能&#xff0c;体现了LabVIEW在复杂工业控制系统中的应用效能。 项目背景 在众多行业中&#xff0c;尤其是石油化工和航天航空领域&#xff0c;氢气作为…...

数据分析案例-笔记本电脑价格数据可视化分析

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…...

CSS函数

目录 一、背景 二、函数的概念 1. var()函数 2、calc()函数 三、总结 一、背景 今天我们就来说一说&#xff0c;常用的两个css自定义属性&#xff0c;也称为css函数。本文中就成为css函数。先来看一下官方对其的定义。 自定义属性&#xff08;有时候也被称作CSS 变量或者级…...

Linux网络——传输层

目录 1. 再谈端口号 2. UDP ① UDP 协议的报文 ② UDP 协议报头的本质 3. TCP ① TCP 缓冲区的理解 ② TCP 协议的报文 1. 16位源端口号 && 16位目的端口号 && 4位首部长度 2. 16位窗口大小 3. 32位序号 && 32位确认序号 4. 六个标记位 ③…...

2024年认证杯SPSSPRO杯数学建模A题(第一阶段)保暖纤维的保暖能力全过程文档及程序

2024年认证杯SPSSPRO杯数学建模 A题 保暖纤维的保暖能力 原题再现&#xff1a; 冬装最重要的作用是保暖&#xff0c;也就是阻挡温暖的人体与寒冷环境之间的热量传递。人们在不同款式的棉衣中会填充保暖材料&#xff0c;从古已有之的棉花、羽绒到近年来各种各样的人造纤维。不…...

采药 刷题笔记 (动态规划)0/1背包

P1048 [NOIP2005 普及组] 采药 - 洛谷 | 计算机科学教育新生态 动态规划 0/1背包 的本质在于继承 一行一行更新 上一行是考虑前i个物品的最优情况 当前行是考虑第i1个物品的情况 当前行的最优解 来自上一行和前i个物品的最优解进行比较 如果当前装了当前物品&#xff…...