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

CVPR-2025 | 南洋理工基于图表示的具身导航统一框架!UniGoal:通用零样本目标导航方法

  • 作者:Hang Yin 1 ^{1} 1, Xiuwei Xu 1 ^{1} 1, Linqing Zhao 1 ^{1} 1, Ziwei Wang 2 ^{2} 2, Jie Zhou 1 ^{1} 1, Jiwen Lu 1 ^{1} 1
  • 单位: 1 ^{1} 1南洋理工大学, 2 ^{2} 2清华大学
  • 论文标题:UniGoal: Towards Universal Zero-shot Goal-oriented Navigation
  • 论文链接:https://arxiv.org/abs/2503.10630
  • 项目主页:https://bagh2178.github.io/UniGoal/
  • 代码链接:https://github.com/bagh2178/UniGoal

主要贡献

  • 论文提出了统一的图表示方法来统一不同的目标类型,包括对象类别、实例图像和文本描述,能够在保持结构信息的同时,利用LLM进行显式的基于图的推理。
  • 设计了多阶段的场景探索策略,根据场景图和目标图的匹配状态生成长期探索目标,包括在零匹配时迭代搜索子图,在部分匹配时使用坐标投影和对齐锚点对,并在完美匹配时进行场景图校正和目标验证。
  • 为了实现鲁棒的阶段切换,引入了黑名单机制,用于记录不成功的匹配结果,避免重复探索。这有助于提高探索效率和成功率。
  • 在多个基准数据集上进行了广泛的实验,验证了UniGoal在三种任务上的零样本性能,在所有任务上都达到了SOTA水平,甚至在某些情况下超过了特定任务的零样本方法和需要训练或微调的通用方法。

研究背景

研究问题

  • 论文主要解决的问题是如何实现通用零样本目标导向导航。
  • 现有的零样本方法通常针对特定任务构建推理框架,这些框架在整体流程上存在很大差异,并且无法在不同类型的目标之间进行泛化。

研究难点

该问题的研究难点包括:

  • 如何统一不同类型的任务(如对象类别、实例图像和文本描述),
  • 如何在零样本情况下进行有效的推理和决策,
  • 以及如何在不进行训练或微调的情况下实现强泛化能力。

相关工作

  • 零样本导航

    • 传统监督方法:传统的监督导航方法需要在模拟环境中进行大规模训练,限制了其在实际环境中的泛化能力。
    • 按目标类型的零样本导航:零样本导航可以根据目标类型分为对象导航(ON)、实例图像导航(IIN)和文本导航(TN)。每种类型的零样本导航都有其特定的方法和挑战。
    • 基于CLIP的方法:一些方法利用开放词汇的CLIP模型来构建零样本导航的基线,通过探索前沿区域来进行目标定位。
    • 结合大语言模型的方法:其他方法进一步利用大语言模型(LLM)来提取物体之间的常识关系,以进行目标位置推理。
  • 基于场景图的探索

    • 场景表示方法:为了更好地理解和探索场景,研究者们提出了多种场景表示方法,其中基于场景图表示因其显式图结构而受到关注。
    • 结合LLM和VLM的方法:一些工作尝试将图表示与LLM和视觉语言模型(VLM)结合,以实现高层次的推理和决策。
    • 如SayPlan和OVSG,它们利用图表示进行任务规划和实体定位。
  • 现有方法的局限性

    • 特定任务的局限性:现有的零样本导航方法通常是为特定任务设计的,无法在更广泛的目标类型之间进行转移。
    • 缺乏通用性:尽管有一些通用方法如GOAT和PSL,但它们仍然需要训练资源,并且在真实世界中的应用效果有限。
      在这里插入图片描述

方法

目标导向导航

任务定义
  • 在目标导向导航中,智能体的任务是在未知环境中导航到一个指定的目标 g g g
  • 其中 g g g 可以是对象类别(Object-goal Navigation, ON)、包含可以在场景中找到的对象的图像(Instance-Image-goal Navigation, IIN)或关于某个对象的描述(Text-goal Navigation, TN)。
  • 智能体接收RGB-D视频流,并在每次接收到新的RGB-D观测时执行动作 a ∈ A a \in A aA ,其中 A A A 是动作集合,包括 move_forward, turn_left, turn_rightstop
任务规范

目标是研究通用零样本目标导向导航,具有两个特点:

  • 通用性:设计一个在三个子任务之间切换时不需要修改的通用方法。
  • 零样本:所有三种目标都可以通过自由形式的语言或图像指定。导航方法不需要任何训练或微调。

框架概述

  • 为了实现通用零样本目标导向导航,利用大模型(LLM)进行零样本决策。
  • 通过将场景和目标表示为图(即场景图和目标图),使不同的目标统一表示,并保持一致的场景和目标表示。
  • 基于这种表示,提示LLM进行场景理解、图匹配和探索决策。
图的构建与匹配
  • 图的构建:定义图 G = ( V , E ) \mathcal{G} = (\mathcal{V}, \mathcal{E}) G=(V,E) 为一组节点 V \mathcal{V} V 和连接它们的边 E \mathcal{E} E 。每个节点代表一个对象,每条边代表对象之间的关系。节点和边的内容以文本格式描述。

  • 图的嵌入:节点的嵌入函数为 E m b e d ( v ) = c o n c a t ( C L I P ( v ) , D e g r e e ( v ) ) Embed(v) = concat(CLIP(v), Degree(v)) Embed(v)=concat(CLIP(v),Degree(v)) ,其中 C L I P ( ⋅ ) CLIP(\cdot) CLIP() 是CLIP[28]文本编码器,Degree ( ⋅ ) (\cdot) () 是节点的度。边的嵌入函数为 E m b e d ( e ) = C L I P ( e ) Embed(e) = CLIP(e) Embed(e)=CLIP(e)

  • 图匹配:通过图匹配确定目标或其相关对象是否被观察到。设计了三种匹配度量:节点匹配、边匹配和拓扑匹配。具体来说,对于节点和边,提取它们的嵌入并计算成对相似性,使用二分匹配确定匹配的节点和边对:
    M N = B ( thr ⁡ ( Embed ⁡ ( V t ) ⋅ Embed ⁡ ( V g ) T ) ) \mathcal{M}_{N} = \mathcal{B}\left(\operatorname{thr}\left(\operatorname{Embed}\left(\mathcal{V}_{t}\right) \cdot \operatorname{Embed}\left(\mathcal{V}_{g}\right)^{T}\right)\right) MN=B(thr(Embed(Vt)Embed(Vg)T))
    M E = B ( thr ⁡ ( Embed ⁡ ( E t ) ⋅ Embed ⁡ ( E g ) T ) ) \mathcal{M}_{E} = \mathcal{B}\left(\operatorname{thr}\left(\operatorname{Embed}\left(\mathcal{E}_{t}\right) \cdot \operatorname{Embed}\left(\mathcal{E}_{g}\right)^{T}\right)\right) ME=B(thr(Embed(Et)Embed(Eg)T))
    其中 Embed ⁡ ( ⋅ ) ∈ R K × C \operatorname{Embed}(\cdot) \in R^{K \times C} Embed()RK×C K K K 是节点或边的数量, C C C 是通道维度。 thr ⁡ ( ⋅ ) \operatorname{thr}(\cdot) thr() 是应用于相似性矩阵的逐元素阈值函数,将小于 τ \tau τ 的值设置为 -1 以禁用对应对的匹配。 B ( ⋅ ) \mathcal{B}(\cdot) B() 是二分匹配,输出所有匹配的节点或边对。

  • 拓扑相似性:基于 M N \mathcal{M}_{N} MN M E \mathcal{M}_{E} ME ,进一步计算 G t \mathcal{G}_{t} Gt G g \mathcal{G}_{g} Gg 之间的拓扑相似性,定义为它们之间的图编辑相似性:

    S T = 1 − D ( S ( F ( G t , M N , M E ) ) , S ( G g ) ) S_{T} = 1 - \mathcal{D}\left(\mathcal{S}\left(\mathcal{F}\left(\mathcal{G}_{t}, \mathcal{M}_{N}, \mathcal{M}_{E}\right)\right), \mathcal{S}\left(\mathcal{G}_{g}\right)\right) ST=1D(S(F(Gt,MN,ME)),S(Gg))

    其中 F ( ⋅ ) \mathcal{F}(\cdot) F() 表示 G t \mathcal{G}_{t} Gt 的最小子图,包含 M N \mathcal{M}_{N} MN 中的节点和 M E \mathcal{M}_{E} ME 中的边。 S ( ⋅ ) \mathcal{S}(\cdot) S() 表示图的拓扑结构,忽略节点和边的内容。 D ( ⋅ ) \mathcal{D}(\cdot) D() 是两个图之间的归一化编辑距离。

  • 最终匹配分数:定义为 S = S N + S E + S T 3 S = \frac{S_{N} + S_{E} + S_{T}}{3} S=3SN+SE+ST

多阶段场景探索策略

  • 阶段1:零匹配:如果匹配分数 S S S 小于阈值 σ 1 \sigma_1 σ1 ,则进入零匹配阶段。智能体扩展其探索区域以找到目标元素。目标可能是一个复杂的图,将其分解为多个内部相关的子图,并使用LLM指导的分解策略进行处理。
  • 阶段2:部分匹配:随着智能体的探索,目标的元素逐渐被观察到,匹配分数 S S S 增加。当 S S S 超过 σ 1 \sigma_1 σ1 但小于 σ 2 \sigma_2 σ2 时,进入部分匹配阶段。使用坐标投影和锚点对齐来推断目标位置。假设锚点是 v t 1 , v t 2 ∈ G t v_{t}^{1}, v_{t}^{2} \in \mathcal{G}_{t} vt1,vt2Gt v g 1 , v g 2 ∈ G g v_{g}^{1}, v_{g}^{2} \in \mathcal{G}_{g} vg1,vg2Gg ,建立坐标转移矩阵 P P P
    P = S ⋅ R ⋅ T = [ s cos ⁡ ( θ ) − s sin ⁡ ( θ ) t x s sin ⁡ ( θ ) s cos ⁡ ( θ ) t y 0 0 1 ] P = S \cdot R \cdot T = \begin{bmatrix} s \cos(\theta) & -s \sin(\theta) & t_{x} \\ s \sin(\theta) & s \cos(\theta) & t_{y} \\ 0 & 0 & 1 \end{bmatrix} P=SRT= scos(θ)ssin(θ)0ssin(θ)scos(θ)0txty1
    基于锚点关系,建立方程 v t 1 = P ⋅ v g 1 v_{t}^{1} = P \cdot v_{g}^{1} vt1=Pvg1 v t 2 = P ⋅ v g 2 v_{t}^{2} = P \cdot v_{g}^{2} vt2=Pvg2 ,求解参数 t x , t y , θ , s t_{x}, t_{y}, \theta, s tx,ty,θ,s 。使用坐标转移矩阵 P P P G g \mathcal{G}_{g} Gg 的其余节点投影到 G t \mathcal{G}_{t} Gt 的坐标中。
  • 阶段3:完美匹配
    • S S S 超过 σ 2 \sigma_2 σ2 且目标中心对象 o o o 被匹配时,进入完美匹配阶段。
    • 智能体移动到匹配的对象并进行进一步验证。提出一个图校正和目标验证管道流程来修正场景图中的不合理结构,并在接近 o o o 的过程中判断目标的置信度。
黑名单机制
  • 为了避免重复探索,提出了黑名单机制来记录不成功的匹配结果。
  • 黑名单初始化为空,匹配失败时扩展黑名单。

实验

实验设置

  • 数据集

    • UniGoal在对象导航(ON)、实例图像导航(IIN)和文本导航(TN)上进行评估。
    • 对于ON,实验在广泛使用的Matterport3D(MP3D)、Habitat-Matterport 3D(HM3D)和RoboTHOR上进行,遵循SG-Nav的设置。
    • 对于IIN和TN,与其他方法在HM3D上进行比较,分别遵循Mod-IIN和InstanceNav的设置。
  • 评估指标

    • 使用成功率(SR)和路径长度加权的成功率(SPL)。
    • SR表示成功导航的比例,而SPL衡量路径与最优路径的接近程度。
  • 对比方法

    • 与研究的三项任务中的最新方法进行比较。
    • 对于ON,与监督方法SemEXP、ZSON、OVRL-v2和零样本方法ESC、OpenFMNav、VLFM、SG-Nav进行比较。
    • 对于IIN,与监督方法Krantz等、OVRL-v2(来自IEVE的实现)、IEVE和零样本方法Mod-IIN进行比较。
    • 对于TN,由于目前没有零样本方法可用,与监督方法PSL和GOAT进行比较。
    • PSL和GOAT也是通用方法,也与其他两项任务进行比较。
  • 实现细节

    • 在Habitat Simulator中设置智能体。
    • 部署LLaMA-2-7B作为LLM,通过文本部署LLaVA-v1.6-Mistral-7B作为视觉语言模型(VLM)。
    • 在图匹配期间使用CLIP文本编码器提取节点和边的嵌入。超参数在附录中详细说明。

与最新方法的比较

  • UniGoal与不同设置的目标导向导航方法的最新方法进行比较,包括监督、零样本和通用方法。
  • 在零样本ON和IIN上,UniGoal分别超越了最新的方法SG-Nav和Mod-IIN,分别提高了0.8%和4.1%。
  • 即使在与其他通用方法比较时,UniGoal也表现出色,甚至在某些情况下超过了需要训练或微调的监督方法。

消融研究

在HM3D上进行消融实验,验证UniGoal各部分的有效性。报告消融版本在代表性IIN任务上的表现。

  • 管道流程设计
    • 消融图匹配方法和多阶段探索策略。首先简化图匹配方法,通过移除分数计算来简化。
    • 类似地,一旦中央对象 o o o 被匹配,智能体将直接进入阶段3。
    • 结果显示,如果没有匹配程度的判断,智能体无法在最佳时机切换探索策略,导致更多失败案例。

  • 每个探索阶段的效果
    对每个探索阶段进行消融研究。
    • 对于阶段1,首先用简单的FBE策略替换整个阶段。然后移除目标图分解,并提示LLM使用整个图。还通过让LLM预测目标的位置而不是为每个前沿打分来移除前沿选择。结果显示,阶段1的每个组件都是有效的。
    • 对于阶段2,首先简化LLM基于的坐标投影方法,随机猜测2D坐标。然后移除锚点对对齐方法,直接让LLM基于BEV图预测目标位置。实验结果验证了利用图之间的结构重叠来推断目标位置的有效性。
    • 对于阶段3,依次移除场景图校正和目标验证,并报告结果。结果显示,这两种方法都能很好地提高最终性能,这意味着校正场景图以及验证目标图对于稳健导航至关重要。

定性分析

  • 决策过程

    • UniGoal通过基于图的探索方法逐步增加匹配分数,展示了其决策过程的逐步进展。
    • 这表明UniGoal能够有效地识别和接近目标。
  • 导航路径

    • 通过可视化展示了UniGoal在不同任务上的导航路径。
    • UniGoal能够在多种任务中生成高效的导航轨迹,显示出其在处理多样化目标类型时的能力。
  • 通用性

    • UniGoal的设计使其能够在不同任务和环境中共享相同的框架,无需针对特定任务进行修改或重新训练,显示出其强大的适应性和泛化能力。

总结

  • 论文提出了UniGoal,一种无需训练或微调的通用零样本目标导向导航框架。
  • 通过统一的图表示和多阶段探索策略,UniGoal能够在不同任务之间进行有效的推理和决策。
  • 实验结果表明,UniGoal在三个广泛使用的数据集上均取得了最先进的零样本性能,甚至在某些情况下超过了为特定任务设计的零样本方法和需要训练或微调的通用方法。
  • UniGoal在真实世界机器人平台上的部署也展示了其强大的泛化能力和应用价值。

相关文章:

CVPR-2025 | 南洋理工基于图表示的具身导航统一框架!UniGoal:通用零样本目标导航方法

作者:Hang Yin 1 ^{1} 1, Xiuwei Xu 1 ^{1} 1, Linqing Zhao 1 ^{1} 1, Ziwei Wang 2 ^{2} 2, Jie Zhou 1 ^{1} 1, Jiwen Lu 1 ^{1} 1单位: 1 ^{1} 1南洋理工大学, 2 ^{2} 2清华大学论文标题:UniGoal: Towards Universal Zero-sho…...

Banner区域

div下 justify-content:space-between 左侧测导航left 在这里插入图片描述 在这里插入图片描述...

【C++】C++11介绍列表初始化右值引用和移动语义

个人主页 : zxctscl 如有转载请先通知 文章目录 1. C11简介2. 统一的列表初始化2.1{}初始化2.2 std::initializer_list 3. 声明3.1 auto3.2 decltype3.3 nullptr 4. 范围for循环4.1 范围for的语法4.2 范围for的使用条件 5. STL中一些变化6. 右…...

基于Spring Boot的高校普法系统的设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...

算法为舟 思想为楫:AI时代,创作何为?

在科技浪潮汹涌澎湃的当下,AI技术以前所未有的态势席卷各个领域,创作领域亦未能幸免。当生成式AI展现出在剧本撰写、诗歌创作、图像设计等方面的惊人能力时,人类创作者仿佛置身于文明演化的十字路口,迷茫与困惑交织,兴奋与担忧并存。在AI时代,创作究竟该何去何从?这不仅…...

GPT-4o 原生图像生成技术解析:从模型架构到吉卜力梦境的实现

最近不少 AI 爱好者、设计师、Vlogger 在社交平台晒出了 GPT-4o 生成的梦幻图像,尤其是吉卜力风格的作品——柔和光影、日系构图、治愈色彩、富有情感的角色表达,一下子击中了无数人的“童年回忆 审美舒适区”。 🎨 下面是一些 GPT-4o 实际生…...

无线通信技术(二):ITU、3GPP及传统波段对无线频谱的划分

本文介绍国际标准组织ITU、3GPP和传统波段对无线频谱的划分 。 一.ITU波段划分 国际电信联盟(ITU)将无线电频谱划分为多个频段,并根据频率范围和业务需求分配用途。 ITU对无线频谱的划分 带号频带名称频率范围波长范围波段名称典型应用…...

[Python学习日记-88] 并发编程之多进程 —— 队列与生产者消费者模型

[Python学习日记-88] 并发编程之多进程 —— 队列与生产者消费者模型 简介 队列 一、队列的介绍 二、队列的使用 生产者消费者模型 一、为什么要使用生产者消费者模型 二、什么是生产者消费者模型 三、生产者消费者模型的优势 四、生产者消费者模型的实现 JoinableQ…...

Vue学习笔记集--computed

computed 在 Vue 3 的 Composition API 中,computed 用于定义响应式计算属性 它的核心特性是自动追踪依赖、缓存计算结果(依赖未变化时不会重新计算) 基本用法 1. 定义只读计算属性 import { ref, computed } from vue;const count ref(…...

python之多线程,多进程理解

目录 一,什么是多线程多进程 1,1 多线程 1.2 多进程 二,多线程 2.1 使用threading模块 三,多进程 3.1 使用multiprocessing模块 3.2 多进程的优势 3.3 进程间的通信 四,如何选择多进程还是多线程 五,异步编程的替代方案(协程) 在开发过程中,提升程序的并…...

3月29日星期六今日早报简报微语报早读

3月29日星期六,农历三月初一,早报#微语早读。 1、全国公立医疗机构自3月31日起全面停止收取门诊预交金; 2、永辉超市“胖东来调改店”已达47家店 一线员工薪酬涨幅50%以上; 3、两孩家庭补10万,三孩家庭补20万&#…...

栈:隐匿于计算机科学长卷的璀璨明珠

目录 🚀前言🌟栈的概念🤔栈的两种实现形式💯数组栈实现💯链表栈实现 ⚙️数组栈与链表栈对比🐧递归与栈💻总结 🚀前言 大家好!我是 EnigmaCoder。 在计算机科学的宏大版图…...

【万字总结】前端全方位性能优化指南(七)——按需加载、虚拟列表、状态管理

现代框架高阶优化——突破复杂场景的性能临界点 当Web应用进入「十万级组件、百万级数据」的复杂场景时,传统优化手段开始触及框架底层瓶颈:Redux的单一Store引发级联渲染风暴、全量加载的首屏资源阻塞关键交互、长列表滚动导致内存飙升直至页面崩溃……这些痛点正在倒逼框架…...

合并石子 | 第十四届蓝桥杯省赛JavaB组

在桌面从左至右横向摆放着 N 堆石子。 每一堆石子都有着相同的颜色,颜色可能是颜色 0,颜色 1 或者颜色 2 中的其中一种。 现在要对石子进行合并,规定每次只能选择位置相邻并且颜色相同的两堆石子进行合并。 合并后新堆的相对位置保持不变&…...

【商城实战(94)】构建高并发的负载均衡与集群架构

【商城实战】专栏重磅来袭!这是一份专为开发者与电商从业者打造的超详细指南。从项目基础搭建,运用 uniapp、Element Plus、SpringBoot 搭建商城框架,到用户、商品、订单等核心模块开发,再到性能优化、安全加固、多端适配&#xf…...

鸿蒙开发:了解Canvas绘制

前言 本文基于Api13 系统的组件无法满足我们的需求,这种情况下就不得不自己自定义组件,除了自定义组合组件,拓展组件,还有一种方式,那就是完全的自绘制组件,这种情况,常见的场景有,比…...

Ubuntu和Windows实现文件互传

1.开启Ubuntu下的FTP服务: (1)终端输入: sudo apt-get install vsftpd(2)安装完成后: 终端输入: /etc 是 Linux 系统的全局配置文件目录,存储系统和应用程序的配置信息…...

dav_pg8_vacuum

一、VACUUM基础概念 1.1 VACUUM的作用 在PostgreSQL中,当数据被更新或删除时,系统并不会立即释放物理空间,而是将其标记为 “可重用”。 随着时间推移,表中的死元组(已删除或已被新版本覆盖的数据)会越来越…...

革新汽车安全通信技术,美格智能全系车载通信模组支持NG-eCall

根据QYR(恒州博智)的统计及预测,2024年全球汽车无线紧急呼叫(eCall)设备市场销售额达到了25.17亿美元,预计2031年将达到44.97亿美元,年复合增长率(CAGR 2025-2031)为8.8%…...

Ubuntu桌面环境下网络设置选项缺失问题解决

一、问题现象 在Ubuntu桌面环境中,网络设置界面中仅显示VPN设置,未显示常规网络配置选项,导致无法通过图形界面修改网络配置。但通过命令行工具可正常设置网络。 二、解决方案 (一)检查网络设备状态 nmcli d 发现…...

GitHub绑定本地计算机以及仓库创建跟推送指南

GitHub绑定到本地计算机 要在本地计算机上连接到你的GitHub账户,可以通过以下步骤实现: 1. 检查和安装Git 确保你的计算机上已经安装了Git。如果还没有安装,可以从Git官网下载并安装。 2. 配置Git 打开终端(macOS或Linux&…...

【数据结构】导航

【数据结构】-CSDN博客 【数据结构】next数组、nextval数组-CSDN博客...

Java内存中的Heap(堆)的作用

Java内存中的Heap(堆)的作用 在 Java 的内存模型中,Heap(堆) 是 JVM(Java Virtual Machine)管理的运行时数据区域之一,主要用于存储程序运行过程中动态分配的对象和数据。它是 Java…...

Python控制结构详解

前言 一、控制结构概述 二、顺序结构 三、选择结构(分支结构) 1. 单分支 if 2. 双分支 if-else 3. 多分支 if-elif-else 4.实际应用: 四、循环结构 1. for循环 2. while循环 3. 循环控制语句 五、异常处理(try-except&#xff09…...

2023第十四届蓝桥杯大赛软件赛国赛C/C++ 大学 B 组(真题题解)(C++/Java题解)

本来想刷省赛题呢,结果一不小心刷成国赛了 真是个小迷糊〒▽〒 但,又如何( •̀ ω •́ )✧ 记录刷题的过程、感悟、题解。 希望能帮到,那些与我一同前行的,来自远方的朋友😉 大纲: 一、子2023-&#xff…...

JVM介绍

JVM类加载器 栈指令重排序 类的JVM内存分配 堆内存GC模型...

HTML输出流

HTML 输出流 JavaScript 中**「直接写入 HTML 输出流」**的核心是通过 document.write() 方法向浏览器渲染过程中的数据流动态插入内容。以下是详细解释&#xff1a; 一、HTML 输出流的概念 1. 动态渲染过程 HTML 文档的加载是自上而下逐行解析的。当浏览器遇到 <script&…...

Kafka 的高可用性

Kafka 的高可用性主要通过副本机制、ISR&#xff08;In-Sync Replicas&#xff09;列表和控制器 Broker 来实现。这些机制共同确保了 Kafka 集群在部分节点故障时仍然可以正常运行&#xff0c;数据不会丢失&#xff0c;并且服务不会中断。 1. 副本机制 Kafka 的副本机制是其高…...

Centos7,tar包方式部署rabbitmq-3.7.6

1. 环境准备 安装编译工具和依赖包 yum -y install make gcc gcc-c glibc-devel m4 perl openssl openssl-devel ncurses-devel ncurses-devel xz xmlto perl 2. Erlang环境搭建 版本对应&#xff1a;https://www.rabbitmq.com/docs/which-erlang 解压到指定目录 tar -xv…...

RISC-V AIA学习3---APLIC 第二部分(APLIC 中断域的内存映射控制区域)

每个中断域都有一个专用的内存映射控制区域&#xff0c;用来处理该中断域的中断。 控制区域的大小是 4KB 的倍数&#xff0c;对齐到 4KB 边界。最小的有效控制区域是 16KB。 1. 控制区域的基本结构&#xff1a;部门文件柜 每个中断域就像公司的一个部门&#xff0c;有自己的 …...

顶刊【遥感目标检测】【TGRS】FFCA-YOLO遥感图像小目标检测

FFCA-YOLO for Small Object Detection in Remote Sensing Images FFCA-YOLO遥感图像小目标检测 0.论文摘要 摘要——特征表征不足、背景干扰等问题使得遥感图像中的小目标检测任务极具挑战性。尤其在算法需部署于星载设备进行实时处理时&#xff0c;需在有限计算资源下对精度…...

【人工智能】从 Llama 到 DeepSeek:开源大模型的演进与技术对比

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 随着人工智能的迅猛发展,开源大语言模型(LLM)在自然语言处理领域扮演着越来越重要的角色。本文从 Meta 的 Llama 系列开始,追溯开源大模…...

【PCB工艺】时序图(Timing Diagram)

时序图&#xff08;Timing Diagram&#xff09;是描述数字电路信号随时间变化的图示&#xff0c;广泛用于分析和设计时序逻辑电路&#xff0c;如锁存器&#xff08;Latch&#xff09;、触发器&#xff08;Flip-Flop&#xff09;、计数器、状态机等。这篇文章从时序图的原理、构…...

MATLAB 中,并行池(Parallel Pool)自动关闭的情况

在 MATLAB 中&#xff0c;并行池&#xff08;Parallel Pool&#xff09;的行为可以通过设置进行控制&#xff0c;但默认情况下&#xff0c;并行池不会自动关闭&#xff0c;除非满足某些条件或显式调用关闭命令。以下是关于并行池自动关闭机制的详细说明&#xff1a; 自动关闭的…...

[网安工具] SQL 注入自动探测工具 —— SQLMAP 使用手册

&#x1f31f;想了解其它网安工具&#xff1f;看看这个&#xff1a;[网安工具] 网安工具库 —— 工具管理手册 https://github.com/sqlmapproject/sqlmaphttps://github.com/sqlmapproject/sqlmap用法 | sqlmap 用户手册https://sqlmap.highlight.ink/usage 0x01&#xff1a;S…...

Python数据结构与算法-基础预热篇

目录 语言基础 1.内置函数 1.1math库 1.2collections 1.2.1Counter&#xff1a;计数器 1.2.2deque双端对列 1.2.3defaultdict有默认值的字典 1.3heapq堆&#xff08;完全二叉树&#xff09; 1.4functool 1.5itertools 1.5.1无限迭代器 1.5.2有限迭代器 1.5.3排列组合迭代器 2.序…...

构建可扩展、可靠的网络抓取、监控和自动化应用程序的终极指南

大家好&#xff0c;这里是架构资源栈&#xff01;点击上方关注&#xff0c;添加“星标”&#xff0c;一起学习大厂前沿架构&#xff01; 无论您是企业主、营销人员还是软件开发人员&#xff0c;您都很有可能在某个时候使用过 Web 自动化工具。每个人都希望更聪明地工作&#xf…...

【蓝桥杯】重点冲刺

【最高优先级】必考核心算法(占分60%以上) 动态规划(DP) 🌟🌟🌟 背包问题:01背包、完全背包(必须掌握空间优化的一维写法) 线性DP:最长上升子序列(LIS)、最长公共子序列(LCS) 路径问题:网格路径计数(含障碍物)、最小路径和 经典模型:打家劫舍、股票买卖问…...

质量工程师的2025:从“找bug“到“造质量“的职业进化

想象一下&#xff0c;2025年的某天&#xff1a;阅读原文 早晨&#xff0c;AI测试助手已经自动运行了夜间回归测试&#xff0c;并将可疑问题标记出来 你喝着咖啡&#xff0c;通过质量数据看板分析系统健康度 下午的会议上&#xff0c;你正用业务语言向产品经理解释&#xff1a…...

2025年CNG 汽车加气站操作工题目分享

CNG 汽车加气站操作工题目分享&#xff1a; 单选题 1、CNG 加气站中&#xff0c;加气机的加气软管应&#xff08; &#xff09;进行检查。 A. 每天 B. 每周 C. 每月 D. 每季度 答案&#xff1a;A 解析&#xff1a;加气软管是加气操作中频繁使用的部件&#xff0c;每天检…...

【QT5 多线程示例】线程池

线程池 【C并发编程】&#xff08;九&#xff09;线程池 QThreadPool 和 QRunnable 是 Qt 提供的线程池管理机制。QRunnable 是一个任务抽象类&#xff1b;定义任务逻辑需要继承QRunnable 并实现 run() 方法。QThreadPool 负责管理线程&#xff0c;并将 QRunnable 任务分配到…...

飞致云荣获“Alibaba Cloud Linux最佳AI镜像服务商”称号

2025年3月24日&#xff0c;阿里云云市场联合龙蜥社区发布“2024年度Alibaba Cloud Linux最佳AI镜像服务商”评选结果。 经过主办方的严格考量&#xff0c;飞致云&#xff08;即杭州飞致云信息科技有限公司&#xff09;凭借旗下MaxKB开源知识库问答系统、1Panel开源面板、Halo开…...

FAST-LIVO2 Fast, Direct LiDAR-Inertial-Visual Odometry论文阅读

FAST-LIVO2 Fast, Direct LiDAR-Inertial-Visual Odometry论文阅读 论文下载论文翻译FAST-LIVO2: 快速、直接的LiDAR-惯性-视觉里程计摘要I 引言II 相关工作_直接方法__LiDAR-视觉&#xff08;-惯性&#xff09;SLAM_ III 系统概述IV 具有顺序状态更新的误差状态迭代卡尔曼滤波…...

kubesphere 终端shell连不上的问题

使用nginx代理kubesphere控制台会出现容器的终端shell连不上的问题 下面是一个样例配置可以解决这个问题&#xff1a; 注意修改为你的ip地址&#xff1a; upstream k8s { ip_hash; server masterip1:30880; server masterip2:30880; server masterip3:30880; } nginx.conf #…...

无人机,雷达定点飞行时,位置发散,位置很飘,原因分析

参考&#xff1a; 无人车传感器 IMU与GPS数据融合进行定位机制_gps imu 组合定位原始数-CSDN博客 我的无人机使用雷达定位&#xff0c;位置模式很飘 雷达的更新频率也是10HZ&#xff0c; 而px飞控的频率是100HZ&#xff0c;没有对两者之间的频率差异做出处理 所以才导致无人…...

外星人入侵(python设计小游戏)

这个游戏简而言之就是操作一个飞机对前方的飞船进行射击&#xff0c;和一款很久之前的游戏很像&#xff0c;这里是超级低配版那个游戏&#xff0c;先来看看效果图&#xff1a; 由于设计的是全屏的&#xff0c;所以电脑不能截图。。。。 下面的就是你操控的飞船&#xff0c;上面…...

Stereolabs ZED Box Mini:NVIDIA Orin™驱动,双GMSL2输入,智能机器视觉AI新选择”

Stereolabs近日推出了ZED Box Mini&#xff0c;这是一款专为视觉AI设计的紧凑型迷你电脑&#xff08;ECU&#xff09;。该产品搭载了NVIDIA Orin™系列处理器&#xff0c;具备强大的AI视觉处理能力&#xff0c;适用于机器人、智能基础设施和工业应用等多种场景。ZED Box Mini以…...

IP协议的介绍

网络层的主要功能是在复杂的网络环境中确定一个合适的路径.网络层的协议主要是IP协议.IP协议头格式如下: 1.4位版本号:指定IP协议的版本,常用的是IPV4,对于IPV4来说,这里的值就是4. 2.4位头部长度,单位也是4个字节,4bit表示的最大数字是15,因此IP头部的最大长度就是60字节 3.…...

【入门初级篇】布局类组件的使用(2)

【入门初级篇】布局类组件的使用&#xff08;2&#xff09; 视频要点 &#xff08;1&#xff09;2分栏场景介绍与实操演示 &#xff08;2&#xff09;3分栏场景介绍与实操演示 点击访问myBuilder产品运营平台 CSDN站内资源下载myBuilder 交流请加微信&#xff1a;MyBuilder8…...

高并发金融系统,“可观测-可追溯-可回滚“的闭环审计体系

一句话总结 在高并发金融系统中&#xff0c;审计方案设计需平衡"观测粒度"与"系统损耗"&#xff0c;通过双AOP实现非侵入式采集&#xff0c;三表机制保障操作原子性&#xff0c;最终形成"可观测-可追溯-可回滚"的闭环体系。 业务痛点与需求 在…...