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

MoManipVLA-北京邮电-2025.3.17-移动操控-未完全开源

将预训练的 VLA 模型从固定基座的操作任务迁移到更具挑战性的移动操控任务中

项目页:https://gary3410.github.io/momanipVLA/

项目页的代码跳转到了另一篇它们写的论文,有代码,可以看看具体是什么。

主要解决“在未知环境中如何理解抽象人类指令并生成可行的高层操作计划”。

0. 摘要

移动操控(Mobile manipulation)是机器人在日常生活中帮助人类完成多样化任务与适应不同环境的根本性挑战。然而,传统的移动操控方法由于缺乏大规模训练数据,往往难以在不同任务与环境中实现良好的泛化。

近期在 VLA 模型方面的进展展示了令人印象深刻的泛化能力,但这些基础模型都是针对固定底座的操控任务而开发的。因此,我们提出了一种高效的策略适配框架——MoManipVLA,用于将预训练的固定底座 VLA 模型转移到移动操控场景,以便在移动操控策略中也能获得对任务与环境的高泛化能力。

策略适配框架是连接固定基座VLA模型与移动操控任务的桥梁。

具体来说,我们利用预训练 VLA 生成具有高泛化性的机械臂末端执行器路径点(waypoints);并为移动底盘和机械臂分别设计运动规划目标,以最大化轨迹的物理可行性;最后,我们提出了一个高效的双层目标优化框架来生成整段轨迹,其中上层优化负责预测移动底盘的路径点以扩展操控空间,下层优化负责在此基础上选择最优的末端执行器轨迹来完成操作任务。

通过这种方式,MoManipVLA 能以 zero-shot 调整机器人底座位置,使得从固定底座 VLA 模型预测的路径点在移动场景中也变得可行。大量在 OVMM 仿真环境及真实世界的实验结果表明,MoManipVLA 的成功率比目前最先进的移动操控方法高出 4.2%,且由于预训练 VLA 模型本身具备强泛化能力,真实部署时仅需 50% 的训练成本。

1. 介绍

移动操控是机器人在空间中执行复杂任务的关键能力,家务服务、制造业和物流等多个领域都迫切需要移动操控能力,因为机器人要能够自主地跨空间完成操作。

草莓采摘机器人不仅要在果园里自由移动(移动底盘),还要精准地伸出机械臂摘取每一颗草莓(机械臂)。

然而在非结构化环境中执行任务是非常困难的,传统的移动操控框架通常将导航固定底座操控模块分开训练,导致误差逐级叠加。近来的端到端方法将导航和操控动作联合优化,但示例数据采集成本高昂,限制了数据集规模和泛化能力。

与此同时,虽然 VLA 在多样化操控任务上展现了强大的泛化能力,但它们专注于固定底座任务,无法生成底盘与机械臂协同的移动操控动作。

在本文中,提出了一种高效的策略迁移框架 MoManipVLA,用于将固定底座 VLA 模型推广到移动操控任务

具体而言,利用预训练的 VLA 模型预测具有高泛化能力的末端执行器路径点,以指导移动操控轨迹的生成。随后,为移动底盘与机械臂设计了包括末端可达性、轨迹平滑性和避障在内的运动规划目标,以最大化轨迹的物理可行性。为了高效规划全身运动,我们提出了一个双层轨迹优化框架:上层优化预测底盘移动的路径点以拓展操控策略空间,下层优化在此基础上选择最优的末端执行器轨迹以完成任务。

类似你先算好“从果园入口到达茂盛草莓区的最优路线”(上层),然后再精细计算“在那儿摘哪一颗、怎么摘最省力”(下层)。

由于预训练 VLA 模型具有强大的泛化能力,MoManipVLA 在真实世界部署时仅需 50 次专家示范

主要贡献包括:

  1. 提出了一种策略适配框架,将预训练 VLA 模型迁移到移动操控
  2. 引入了运动规划目标与双层轨迹优化框架,提高了轨迹的物理可行性和效率
  3. 在 OVMM 仿真环境和真实场景中进行了大量实验,验证了方法的泛化性与高效性。

2. 相关技术和工作

2.1 移动操控框架

现有的移动操控框架可分为两类:端到端(end-to-end)和模块化(modular)。

端到端方法利用模仿学习,根据视觉观测直接预测移动操控动作。然而,使用专家示范轨迹进行模仿学习会导致高昂的训练成本。

要录制上千次“人手遥控机器人走到每棵草莓前并摘下”,费时费力,部署到实地果园更难操作。

因此,提出了模块化的移动操控框架 Home-Robot 和 OK-Robot,它们包含基础模型规划器和基于强化学习的控制器,以高效应对长时序移动操控任务。

拆分导航、感知、控制,灵活可扩展;缺点是各模块预训练不足时,整体仍易出错。

然而,由于缺乏大规模预训练,现有移动操控方法在多样的真实任务和环境中难以实现良好的泛化。

2.2 VLA models

当前最先进的 VLA 模型直接基于 RGB 视觉观测输出机械臂末端 7 自由度动作,而无需依赖预测的物体类别和位姿。

早期的VLA沿用了VLM,自回归离散化来表示动作。ManipLLM 构建了“思维链”(CoT)来激发基础模型的操作推理能力,并引入主动阻抗自适应策略来规划下一个航路点。OpenVLA 探索了不同视觉编码器对 VLA 模型性能的影响,并通过组合基础模型的各个组件来取得令人满意的效果。

近期研究还探索了 VLA 模型在高自由度机体(例如双臂机器人)上的能力。RDT-1B 通过引入物理可解释的统一动作空间,将扩散策略推广到双臂操作,用于处理更复杂的任务。π0 基于VLM提出了一种新颖的流匹配架构,用于学习互联网规模的知识,从而赋能 VLA 模型的跨机体操作规划。

尽管现有 VLA 模型在任务和环境间展现了令人惊叹的泛化能力,但它们无法生成底盘与机械臂协同的移动操控动作。

2.3 轨迹优化

早期研究集中于轨迹优化的多目标和约束特性,旨在满足动态环境中对精度和低时延的需求。

就好比同时追求“摘得又快又准”与“避开果藤和地面坑洼”,还要实时响应突发的风吹草动——这就需要把速度、平稳度和安全性等目标一并考虑。

如果你专门为平地、直线行走和固定高度摘草莓设计了轨迹,当遇到斜坡、弯道或高低不一的植株时,这套规则就可能失效,机器人会摘偏或碰撞。

因此,现在更多采用数据驱动的方法,将轨迹优化针对真实场景的动态挑战进行定制。为了利用示范数据中的经验,一些研究采用模仿学习从专家演示中直接挖掘轨迹策略。

得益于foundation model的发展,VoxPoser 和 ReKep 等最新方法表明,利用foundation model推断场景可行性和约束,能显著增强轨迹优化的泛化能力。

比如利用预训练的大模型直接从视觉图像中预测“哪些位置能安全行走”“哪种角度摘草莓最省力”

受到 ReKep 在操作任务中成功的启发,我们设计了一个运动规划目标,能够高效地将预训练的固定底座 VLA 模型适配到移动操控场景。

3. 方法

本节首先介绍将固定底座 VLA 模型策略迁移到移动操控任务的整体框架。然后我们给出运动规划目标,用于评估底盘和机械臂轨迹,以最大化物理可行性。最后,我们提出一个高效的双层目标优化框架来生成轨迹。

3.1 问题描述

移动操控任务要求机器人在不同位置与物体交互,通过协同控制底盘和机械臂,以物理可行的轨迹完成交互动作。

在第 t 步,机器人观测包括视觉输入和本体感知状态。

视觉输入包括 RGB 图像、深度图像和相机位姿;本体感知状态包含在世界坐标系下底盘的位置 pᵗᵇ 与朝向 rᵗᵇ,以及在底盘坐标系下末端执行器的位置 pᵗᵉ、朝向 rᵗᵉ 及爪子开合度 gᵗᵉ。

我们应用变换函数 Γ,将末端执行器在底盘坐标系下的状态转换到世界坐标系下,得到 ṗᵗᵉ 和 ṝᵗᵉ。

就是把“机械臂爪子离底盘 0.5m、抬高 0.3m、旋转 30°”这样的相对描述,变成“爪子在果园绝对坐标 (3.0m, 2.0m, 0.8m, …)”方便规划整体路径。

基于观测和语言指令,智能体需生成最优动作,以使底盘和机械臂进入下一个最优的本体感知状态,完成任务。

模仿专家示范来学习数据采集成本高昂,我们的目标是高效地将预训练 VLA 模型策略迁移到移动操控场景,联合生成底盘和机械臂的轨迹,以实现高泛化能力。

3.2 策略迁移框架

VLA很牛,但是大都是固定底座的,为此,我们提出通过物理可行的全身运动规划来迁移预训练 VLA 模型所预测的固定底座操控策略。图2展示了 MoManipVLA 的整体流程。
在这里插入图片描述

  1. 首先利用预训练的 VLA 模型,根据观测和人类指令生成最优的末端执行器路径点。
    为使末端执行器能够到达目标航路点,我们联合生成底盘与机械臂的高物理可行性轨迹。我们设计了安全性、平滑性和可达性等运动规划目标,以最大化轨迹的物理可行性。
  2. 为了高效求解轨迹,我们提出了双层目标优化框架:上层优化预测底盘移动的路径点;下层优化则选择最优的末端执行器轨迹,以抵达 VLA 模型生成的路径点。

上层:算出“在哪几个点停车最有利于摘取”;下层:在每个停车点处“手臂怎么动最合理”

因此,该运动规划框架使得预训练的固定底座策略能够以几乎无需额外训练的方式高效适配至移动操控。

3.3 移动运动规划目标

在机器人路径规划领域中,标题这一术语用于描述在移动机器人执行任务时,其路径规划所需满足的目标或优化准则。

运动规划的目标是在给定末端执行器连续路径点之间生成对移动底盘和机械臂都可行的轨迹,并在整个移动操控过程中保证可达性、轨迹平滑性和安全性。

为了增强跨任务和环境的泛化能力,在整个移动操控过程中,第 i 个末端执行器路径点 Qᵢ(以底盘坐标系表示)可预训练的固定底座 VLA 模型生成,模型会同时考虑当前场景的 RGB 图像和机械臂的本体感知状态。

对于轨迹规划,我们首先将路径点 Qᵢ 从底盘坐标系变换到世界坐标系.。
在这里插入图片描述
其中 Pᵢ⁰ 表示在使用 VLA 模型预测路径点 Qᵢ 时的本体感知状态。

因此,在给定连续路径点 ˆQᵢ 和 ˆQᵢ₊₁ 的情况下,轨迹生成的优化目标可表示为:
在这里插入图片描述
其中,Tᵢ 是规划轨迹在两路径点间的步数;O 是评估轨迹物理可行性的目标函数。xᵢ,bₜ 表示在第 t 步底盘在世界坐标系下的位置与朝向 ;xᵢ,eₜ 表示机械臂末端在底盘坐标系下的位置、朝向和爪子开合度。

我们的目标是最小化代价函数,以提高整个轨迹在 VLA 路径点指引下的物理可行性;约束则保证轨迹的起止姿态与路径点一致,以实现平滑过渡。

得到在轨迹上的底盘和机械臂的姿态后,机械臂的关节角通过逆向运动学求解,底盘则通过平移和旋转驱动。下面介绍具体的目标函数。

可到达性cost

由于移动操控要求机器人在大范围内与物体交互,底盘姿态不合适会导致机械臂无法到达目标姿态。因此,我们评估每条候选轨迹的可达性。假设通过 Nₘₐₓ 次迭代可获得关节角解,则可达性代价 Fᵣ 定义为:
在这里插入图片描述
其中 Nₘₐₓ 是 IK 求解器允许的最大迭代次数超参数,C₀ 是一个很大的常数。

如果机器人在位置 A 尝试摘草莓,IK 求解只需少量迭代就能算出合理的臂关节角,说明该位置“臂爪够得着”,可达性好,代价值低。
如果迭代次数超过 Nₘₐₓ,说明在该位置无法找到可行关节配置,机械臂根本伸不到草莓,这条轨迹就被判为“不可达”,代价值设置为很大的 C₀,最终被优化器舍弃。

平滑性cost

平滑性约束保持机械臂关节角度以及底盘平移和旋转的连续平滑变化,避免突变以保障电机和机器人本体的安全。我们将轨迹平滑性定义为候选轨迹中相邻姿态间机械臂关节角 θₜ 与底盘本体感知状态 xₜᵇ 变化的****平方差之和
在这里插入图片描述

碰撞cost

为了在移动操控过程中保障安全,机器人需避免机械臂、底盘与环境中物体的任何碰撞。我们利用 nvblox 根据 RGB-D 图像计算环境中物体表面的 ESDF(欧氏距离场),并在机器人表面随机采样 N q N_q Nq 个查询点来评估碰撞代价:
在这里插入图片描述
其中 qₜʲ 表示轨迹第 t 步的第 j 个查询点,ε₀ 是控制安全距离的超参数,D(qₜʲ, Ω) 是查询点 qₜʲ 到环境表面 Ω 的最小距离(由 ESDF 模型预测)。当距离小于安全阈值 ε₀ 时,产生正代价;若距离大于等于 ε₀,则视为无碰撞,不计入代价。

ε₀ 可根据果园中不同区域的拥挤程度动态调整;在果架下作业时 ε₀ 设小些,提高灵活性;在通道转弯处 ε₀ 设大些,防止碰撞。

总体目标函数

我们通过超参数 {λ₁, λ₂, λ₃} 将可达性代价 F r Fᵣ Fr、平滑性代价 F s Fₛ Fs 和碰撞代价 F c F_c Fc 线性组合,得到总体目标函数:
在这里插入图片描述
通过生成满足物理可行性的轨迹,合理调节这三者的权重,该框架能让智能体充分利用预训练 VLA 模型在多任务、多环境上的泛化能力,解决具有挑战性的移动操控任务。

3.4 双层轨迹优化

直接在总体目标函数上搜索最优解非常复杂,因为移动底盘和机械臂的姿态搜索空间自由度极高,范围巨大

为了应对该问题,我们提出了一个双层轨迹优化框架,以提高轨迹生成效率:上层优化底盘的路径点,拓展机械臂的策略空间;下层在此基础上优化末端执行器的路径点,使其遵循预训练 VLA 模型的指导来完成操作任务。

虽然双层优化框架属于贪心策略,但移动操控需要在 10 自由度空间(机械臂 7 自由度,底盘 3 自由度)中搜索,空间庞大且不可证实凸性,直接搜索极易陷入局部最优

值得注意的是,分解贪心搜索在其他机器人领域也很常见,例如人形机器人控制中,39 自由度的人体动作被拆分为 27 自由度的上半身和 12 自由度的下半身动作。

我们采用双退火(Dual Annealing)搜索算法来优化目标,并结合基于梯度的局部优化器 SLSQP 对解进行精调。

双层轨迹优化的具体流程见算法 1。
在这里插入图片描述

初始化

根据约束,轨迹的首尾姿态分别设置为当前路径点VLA 模型预测的下一个路径点;中间姿态按等间距插值初始化。

上层优化

在上层,搜索最优的底盘姿态,以构建机械臂姿态的搜索空间。在双退火算法的迭代阶段,仅更新底盘姿态以生成新的全身候选姿态。对于轨迹中的第 j 个姿态,我们在固定底盘姿态下随机采样多种臂部姿态,并用期望代价和顶级代价评估该搜索空间的质量:
在这里插入图片描述
其中 xₑ 表示候选臂部姿态;M 为所有采样候选集,N 为期望代价最低的前 k 个候选集。

若在整个采样集合中平均代价低,说明该底盘位置性能稳定;若前 k 名候选中的代价也低,则说明该位置的效果更好。
对于某个停车位置,机器人先固定底盘,再在模拟中试若干臂部摘取方式,若平均和最佳几种方式的代价都低,说明这个停车点下“走+摘”组合效果好,被上层优化采纳。

下层优化

底盘姿态达到最优后,下层优化在该搜索空间中寻找最佳的臂部姿态。对于每个候选臂部姿态,用总体目标函数评估其质量,并选取最优者作为该时刻的全身姿态。

借助高效的策略迁移,这个智能体在预训练 VLA 模型的指导下,实现了跨任务和环境的高泛化能力。

4. 实验

本节中,在 OVMM 仿真基准和真实世界中进行了全面实验,以验证所提方法的有效性。

首先介绍实现细节,并与最先进的方法进行对比。然后,我们通过消融实验验证运动规划目标中各代价项的作用。最后,在真实果园中测试方法性能,以验证其泛化能力。

4.1 数据集和实现细节

开放词汇移动操控(OVMM)基准包含 60 个近似真实房屋布局的场景模型,以及超过 1.8 万个日常物体的 3D 模型。

有没有虚拟草莓园场景库啊,60 种果园布局+1.8 万种植株与杂物模型,用于全面测试机器人移动与操作。

OVMM 基准中的移动操控任务被形式化为“将目标物体从容器 A 移动到容器 B”,目标物体是可抓取的小型物体。

机器人在未知环境中初始化,需要依次执行“导航至接收区 A、观察、抓取物体、导航至接收区 B、放置”五个阶段才能完成任务,其中任一阶段出错即判定失败。

导航到A棵前–观察–摘果–放置–导航至B棵前

利用 OVMM 提供的启发式基线,收集移动操控专家示范轨迹,用于微调现成的 VLA 模型,以弥合跨机体差异。

使用 OpenVLA-7B 生成细粒度交互轨迹。具体而言,每条专家示范轨迹由一系列包含视觉感知、机器人状态和执行动作的元组组成。

我们收集了 200 次抓放示范序列,并在 4 块 RTX 3090 GPU 上使用 LoRA 高效微调 10K 个 epoch。

对于轨迹优化框架,采用双退火算法在路径点之间搜索物理可行轨迹。中间步骤数量根据相邻路径点间的位置与旋转变化,并参照指定步长(0.05)自动计算。场景的 ESDF(欧氏距离场)通过 3D 物体模型构建。沿用 OVMM 基准设置,采用开放词汇的实例分割模型作为视觉感知模块。

优化目标中代价函数的超参数 λ₁、λ₂ 和 λ₃ 分别设为 10.0、1.0 和 0.6。碰撞代价中的安全阈值 ε₀ 设为 0.1(m)

4.2 与最先进方法做对比

因为提出的 MoManipVLA 框架在导航阶段借助预训练的 VLA 模型给出路径点,来指引机器人去大致位置,所以只有在“粗导航”结束、机器人已经到达目标附近后,才开始用 MoManipVLA 生成那种“精细到每一步”——既包括底盘(base)移动也包括机械臂(arm)伸缩——的完整轨迹。

表 1 比较了 MoManipVLA 与当前最先进方法在 OVMM 上的表现。
表1
MoManipVLA 分别在总体成功率上提升了 4.2%,在部分成功率上提升了 11.2%。证明了该方法能够协调底盘与机械臂的运动,使末端执行器始终与目标物体保持合理的空间关系。

值得一提的是,得益于预训练 VLA 模型的泛化能力,在“pick”成功率上比最先进方法高出 12.4%

我们还统计了移动操控的失败类型(见表 3)。“Find recep” 表示未能找到抓取容器,“Nav to place” 表示未能找到放置容器,“Orient to place” 表示导航未对齐目标,进一步验证了底盘路径点在移动操控中的关键作用。
在这里插入图片描述

4.3 消融实验

为了全面验证轨迹优化中各代价项的重要性,我们在基准方法上进行了消融实验。分别去掉可达性、平滑性和碰撞代价,并评估成功率与效率变化。

消融实验结果见表 2,其中 “Base Method” 表示我们的方法,“w/o GT” 表示使用实例分割模型替代真实标注(ground truth)。
表2
每个代价项都对总体成功率有显著提升。其中,可达性代价对成功率的提升最大,因为移动操控需要在大范围内与目标交互,底盘位置不合适时很难让机械臂够到目标。

在移动操控任务中,底盘与机械臂的协同控制以保证末端可达性是性能的关键瓶颈,同时也是预训练 VLA 模型成功迁移到移动操控的核心。除了我们的方法中的双层目标优化,我们还使用了不拆分搜索空间的普通双退火算法。

虽然普通双退火也能达到较高成功率,但我们的双层优化方法在此基础上显著降低了延迟(Latency),说明我们的分层策略能够有效避免搜索效率不足的问题。

由于家庭环境(或果园)中物体通常高度杂乱,视觉感知质量显著下降,因此在使用自动分割掩码时的总体成功率远低于使用真实标注的情况。

4.4 真实世界实验

表 4 展示了我们方法在真实机器人系统上的性能表现。
在这里插入图片描述
我们使用 Hexman Echo Plus 底盘与 RM65 机械臂组成的离线移动平台,借助 nvblox 重建场景的 ESDF,并通过 Grounding SAM 获得机械臂和目标物体的掩码;在 ESDF 构建时,将机械臂掩码作为查询点,并排除目标物体掩码。

比如在草莓田中,用深度重建生成“田间立体障碍地图”,再用视觉模型分割出机械臂和目标草莓,保证障碍距离计算时不把草莓本身算作障碍。

沿用 ORB-SLAM 框架,并使用 Intel Realsense T265 跟踪摄像头实时获取相机位姿和底盘位姿。由于预训练 VLA 模型的泛化能力,我们的方法仅需 50 个样本就能完成微调,并在移动操控任务上达到 40% 的成功率。

抽屉开启任务作为带铰链的物体交互挑战,需要机器人轨迹满足物理约束并避免与铰链部件碰撞,因此在该任务上的成功率仅为 10%。我们在图 3 中展示了定性结果,该图展示了移动操控中抓取与放置任务的执行序列。
图3
当机器人通过导航到达目标物体位置后,底盘和机械臂的运动根据预训练 VLA 模型生成的路径点进行规划,确保末端执行器遵循 VLA 模型的指导。在初始阶段,目标物体位于机械臂的原生工作空间内,此时可通过直接执行 VLA 模型预测的路径点并生成臂部轨迹来完成任务。

当智能体需要移动去放置红色盒子时,此时的运动规划代价较高,需要移动底盘以扩展机械臂的运动空间,才能真正到达路径点。

先用启发式导航初始化底盘优化,然后通过双层优化精调底盘路径点,使红色盒子重新进入机械臂的工作空间以完成放置。

MoManipVLA 紧密融合了导航与操控,确保了移动操控任务的高效执行,并充分利用了预训练 VLA 模型的泛化能力。

5.结论

1.目标与挑战:
移动操控(Mobile Manipulation):让机器人既能“走”又能“摘/放”,需全身(底盘+机械臂)协同控制。
难点:传统方法要么“走”与“摘”分开训练,误差叠加;要么端到端数据成本高、泛化差;VLA 大模型虽懂“摘”,却不会“走”。

2.核心思路:
策略迁移:用预训练的固定底座 VLA 模型预测“臂爪该到哪儿摘”(路径点),再通过双层轨迹优化同时规划“底盘怎么走”和“机械臂怎么动”。
三大代价:可达性(让臂爪够得着)、平滑性(动作稳不抖)、避障性(不撞管道/果枝),线性组合成整体目标。

3.双层优化框架:
上层:搜索“最佳停车点”,构建机械臂动作候选空间;
下层:在该停车点下挑选最优臂部动作,细化执行轨迹。
算法:粗用双退火(Dual Annealing)广搜,再用 SLSQP 局部精调。

4.实验成果
仿真(OVMM):整体成功率提升 4.2%、抓取成功率提升 12.4%,步数接近启发式、延迟接近 RL。
真实场景:仅 50 个示范即微调完成,实现 ~40% 成功率;在更复杂的铰链开门任务中也能「走+推+避障」,尽管成功率约 10%。

5.局限与未来
受制于 VLA 本体:仅能在相对受限的运动空间内部署。
缺少长时序规划:还无法自动衔接“多阶段+多任务”流程。
下一步:设计更高效的轨迹生成架构,并引入大模型级的全局任务规划,让机器人真正从“采摘”升华到“农业管家”。

补充

在项目页中有他们的另一篇论文:Embodied Instruction Following in Unknown Environments (EIF)

可以把 EIF 看作“教机器人在一个完全未知的室内环境里,先探索+规划怎么一步步完成指令”的方法。

MoManipVLA 则在“已知目标大致位置”的前提下,更专注于“如何利用预训练的 VLA 模型同时做导航+精细操控”。

在一个完整系统里,完全可以:

  1. 用 EIF 的高层规划+探索模块,先把机器人带到目标物体附近;
  2. 再切换到 MoManipVLA 的精细轨迹规划模块,让底盘+机械臂协同发力,一步步摘取或操作该物体。
http://www.xdnf.cn/news/571735.html

相关文章:

  • UML 时序图 使用案例
  • PostGIS实现栅格数据导出PNG应用实践【ST_AsPNG 】
  • 乘“4”而上,进取不止|Aloudata 的变与不变
  • 【专四 | 2022年真题】LANGUAGE USAGE逐题总结
  • dedecms织梦全局变量调用方法总结
  • 【OCCT+ImGUI系列】009-Geom2d-Geom2d_AxisPlacement
  • 使用Jenkins部署nodejs前端项目
  • 开源Vue表单设计器FcDesigner中组件联动的配置教程
  • 中国地图上标注颜色的方法
  • 食品饮料行业AI转型趋势分析与智能化解决方案探索​
  • 实战5:个性化数字艺术生成与销售
  • 目标检测 Lite-DETR(2023)详细解读
  • 信息系统项目管理师考前练习3
  • 怎样用 esProc 生成定长时间窗口列表并统计
  • 【Java高阶面经:微服务篇】7. 1秒响应保障:超时控制如何成为高并发系统的“救火队长”?
  • esp32cmini SK6812 2个方式
  • redis--redisJava客户端:Jedis详解
  • WebFuture:在银河麒麟系统中如何无中间件为WebFuture绑定域名、SSL证书
  • 【Linux】借助gcc源码修改,搜索头文件当前进展
  • springboot链接nacos测试
  • 分类预测 | Matlab实现PNN概率神经网络多特征分类预测
  • 数学实验(Matlab绘图基础)
  • 大量程粗糙度轮廓仪适用于哪些材质和表面?
  • 矿物绝缘加热电缆行业2025数据分析报告
  • 使用Gemini, LangChain, Gradio打造一个书籍推荐系统 (第一部分)
  • Dockerfile指令详解
  • 打卡第二十四天
  • Swagger在java的运用
  • PostgreSQL 日常维护
  • Elasticsearch常用命令