论文阅读 | CVPRW 2023 |CSSA :基于通道切换和空间注意力的多模态目标检测

  • 1.摘要&&引言
  • 2.方法
    • 2.1 框架概述
    • 2.2 通道切换通道注意力
      • 2.3 空间注意力
  • 3. 实验
    • 3.1 实验设置
      • 3.1.1 数据集
      • 3.1.2 实现细节
      • 3.1.3 评估指标
    • 3.2 对比研究
      • 3.2.1 定量结果
      • 3.2.2 定性结果
      • 3.2.3 计算效率比较
    • 3.3 消融研究
  • 4. 结论与未来工作

在这里插入图片描述

题目:Multimodal Object Detection by Channel Switching and Spatial Attention

会议:IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops(CVPRW)

论文:https://ieeexplore.ieee.org/document/10209020

代码:未公开

年份:2023

1.摘要&&引言

近年来,多模态目标检测备受关注,因为不同模态的特定信息可以相互补充,有效提高检测模型的准确性和稳定性。然而,与处理单模态输入相比,融合多模态信息会显著增加模型的计算复杂度,进而降低其效率。

因此,多模态融合模块需要精心设计,以在保持低计算消耗的同时提升检测模型的性能。

本文提出了一种新颖的轻量级融合模块(CSSA),该模块通过通道切换和空间注意力机制高效融合不同模态的输入。我们使用两个公开的多模态数据集 LLVIP 和 FLIR(均包含配对的红外(IR)和可见光(RGB)图像)测试了该模块的有效性和泛化能力。

实验表明,所提出的 CSSA 模块可在不消耗过多计算资源的情况下,大幅提升多模态目标检测的准确性。

具体而言,通道切换将对检测结果影响较小的模态特征图替换为另一模态的对应特征图,该过程使各模态在保留独特特征的同时,有效融合其他模态的特征。为在不引入额外参数的情况下增强模型的空间注意力,我们使用最大池化和平均池化从通道维度评估特征图中每个位置的重要性。在 FLIR 和 LLVIP 数据集上的实验表明,与近期提出的多模态检测模型相比,CSSA 可在消耗更少计算资源的同时显著提升检测性能。本文的贡献总结如下:

  • 1.据我们所知,首次将通道切换引入多模态目标检测并验证其有效性。此外,将通道切换与空间注意力结合,使检测模型能够从通道和空间层面分析输入模态,从而实现先进性能。

  • 2.提出无参数空间注意力模块,可在不增加检测模型复杂度的情况下高效为不同输入分配权重,适用于时间敏感任务。

  • 3.在两个公开多模态数据集上进行广泛实验,验证了所提模型的泛化能力。

2.方法

在这里插入图片描述

图2. 所提出模型的概述。(a)展示了检测模型的整体架构,(b)阐明了CSSA的详细结构。σ符号表示 sigmoid 函数,“⊗”代表逐元素乘法,而“⊕”意味着求和操作。

2.1 框架概述

选择 Faster R-CNN 作为目标检测框架,因其是可实现高精度的两阶段检测框架。如图 2(a)所示,模型以 IR 和 RGB 图像为输入,使用两个 ResNet 50 作为主干网络,每个主干包含四个阶段。四个 CSSA 模块用于融合各阶段生成的特征图,每个 CSSA 模块包含两个子模块:通道切换和空间注意力。在通道切换过程中,输入特征图的每个通道权重由高效通道注意力(ECA)层评估,对最终预测信息不重要的通道将被另一模态的对应通道替换。通道切换后,空间注意力模块使用两种通道池化操作计算特征图中每个位置的重要性,并通过求和操作生成融合特征图(见 3.2 节)。最后,融合的特征图输入特征金字塔网络(FPN)和检测头生成边界框。
在这里插入图片描述

2.2 通道切换通道注意力

通道切换通道注意力可通过特征级信息丰富多模态融合模块,使模块能够学习模态间的共享特征,同时保留各模态的特有特征。为实现通道注意力,我们的模块中应用通道切换,因其对跨模态特征交互高效且有效。通道切换的第一步是从通道维度为各模态的特征图分配权重。为确保模块效率,选择 ECA 块,其由全局平均池化(GAP)、1D 卷积和 sigmoid 函数组成。ECA 可高效感知局部跨通道交互,公式描述为:
ω m = σ ( f ( G A P ( X m ) ) ) \omega_{m}=\sigma\left(f\left(GAP\left(X_{m}\right)\right)\right) ωm=σ(f(GAP(Xm)))
其中, G A P ( X ) = 1 H W ∑ i = 0 H − 1 ∑ j = 0 W − 1 X i j GAP(X)=\frac{1}{H W} \sum_{i=0}^{H-1} \sum_{j=0}^{W-1} X_{i j} GAP(X)=HW1i=0H1j=0W1Xij X m ∈ R H × W × C X_{m} \in \mathbb{R}^{H ×W ×C} XmRH×W×C 是从模态 m m m 获得的特征图(高度 × 宽度 × 通道张量), f ( X ) f(X) f(X) 是 1D 卷积层, σ \sigma σ 表示 sigmoid 激活函数。ECA 首先使用 GAP 将输入特征图下采样为 1×1×C 向量,然后使用 1D 卷积获取跨通道交互,最后通过 sigmoid 函数计算权重。从 ECA 块获取的权重 ω m ∈ R 1 × 1 × C \omega_{m} \in \mathbb{R}^{1 ×1 ×C} ωmR1×1×C 随后用于通道切换,切换过程可表示为:
{ X m , c if  ω m , c ≥ k X m ′ , c if  ω m , c < k \left\{\begin{array}{r} X_{m, c} \quad \text { if } \omega_{m, c} \geq k \\ X_{m', c} \quad \text { if } \omega_{m, c}<k \end{array}\right. {Xm,c if ωm,ckXm,c if ωm,c<k
其中, m ′ m' m 表示另一输入的模态, c c c 表示第 c c c 个通道, k k k 是预定义阈值。当第 c c c 个通道的权重低于阈值 k k k 时,模型将其替换为另一模态的对应通道。

在这里插入图片描述

2.3 空间注意力

空间注意力的目标是突出特征图中包含核心信息的位置,可作为通道切换的补充。为实现这一目标,我们利用两种无参数操作:通道平均池化(CAP)和通道最大池化(CMP)。这两种操作可有效压缩特征图中的信息,而不增加模块复杂度。

具体流程如下:
首先,将通道切换块获得的两个特征图拼接形成 X cat ∈ R H × W × 2 C X_{\text{cat}} \in \mathbb{R}^{H \times W \times 2C} XcatRH×W×2C,然后将其输入 CAP 和 CMP 以获取注意力图 ω avg \omega_{\text{avg}} ωavg ω max ∈ R H × W × 1 \omega_{\text{max}} \in \mathbb{R}^{H \times W \times 1} ωmaxRH×W×1。接下来,通过 X cat X_{\text{cat}} Xcat ω avg \omega_{\text{avg}} ωavg ω max \omega_{\text{max}} ωmax 的逐元素乘法生成加权特征图 X cat w X_{\text{cat}}^w Xcatw,过程可精确描述为:
X cat w = X cat ⊗ C A P ( X cat ) ⊗ C M P ( X cat ) X_{\text{cat}}^w = X_{\text{cat}} \otimes CAP(X_{\text{cat}}) \otimes CMP(X_{\text{cat}}) Xcatw=XcatCAP(Xcat)CMP(Xcat)
其中,
C A P ( X ) = 1 c ∑ c = 0 c − 1 X i j c , C M P ( X ) = max ⁡ ( x i j 1 , … , x i j c ) CAP(X) = \frac{1}{c} \sum_{c=0}^{c-1} X_{ij}^c, \quad CMP(X) = \max\left(x_{ij}^1, \ldots, x_{ij}^c\right) CAP(X)=c1c=0c1Xijc,CMP(X)=max(xij1,,xijc)
式中, ⊗ \otimes 表示逐元素乘法。

最后,生成最终融合结果的过程可表示为:
X fused = X IR w + X RGB w 2 X_{\text{fused}} = \frac{X_{\text{IR}}^w + X_{\text{RGB}}^w}{2} Xfused=2XIRw+XRGBw
其中, X IR w , X RGB w = Split ( X cat w ) X_{\text{IR}}^w, X_{\text{RGB}}^w = \text{Split}(X_{\text{cat}}^w) XIRw,XRGBw=Split(Xcatw),加权特征图 X IR w , X RGB w ∈ R H × W × C X_{\text{IR}}^w, X_{\text{RGB}}^w \in \mathbb{R}^{H \times W \times C} XIRw,XRGBwRH×W×C 与输入特征图维度相同。

3. 实验

在 FLIR 和 LLVIP 数据集上进行实验,从精度和效率两方面将所提模型的整体性能与基线模型进行比较。此外,我们还研究了 CSSA 模块不同子块对预测结果的影响。

3.1 实验设置

3.1.1 数据集

FLIR 数据集是多模态目标检测任务中使用最广泛的数据集之一,包含从汽车驾驶员视角采集的 RGB 和 IR 图像对,数据涵盖白天和夜间场景。本实验使用文献提出的 FLIR 数据集,因为原始版本中的 RGB 和 IR 图像严重未对齐。该版本包含 5,142 对对齐良好的 RGB-IR 数据,其中 4,129 对用于训练,1,013 对用于测试。对齐的 FLIR 涉及四类物体,包括 8,987 个人、20,608 辆汽车、2,566 辆自行车和 95 只狗。由于狗的标签不足,我们移除了所有狗的标签,剩余物体为 “人”“汽车” 和 “自行车”。

除 FLIR 外,实验还使用了近期发布的多模态目标检测数据集 LLVIP。LLVIP 包含由 26 个不同地点的监控摄像头捕获的 RGB-IR 图像对,大部分数据在弱光条件下采集。数据集共包含 15,488 对半手动对齐的数据,其中 12,025 对用于训练,3,463 对用于测试。数据集中唯一的物体类别是 “行人”。

3.1.2 实现细节

我们的 CSSA 检测模型基于 Detectron2 库中的 Faster R-CNN 模型改编,并在单个 NVIDIA Tesla V100 GPU 上训练。实验中使用的主干是两个在 ImageNet 上预训练的 ResNet 50。为训练模型,我们采用随机翻转并将两个数据集的数据调整大小为 640×512。优化器使用 AdamW,学习率为 2.5e-4,模型训练 10 个 epoch,批量大小为 16。公式 3 中提到的超参数 k 设置为 2e-3。

我们采用三种竞争的多模态目标检测模型作为基线,包括 Halfway fusion、GAFF 和 ProbEn,并在 FLIR 和 LLVIP 数据集上进行比较研究。此外,Faster R-CNN 也被视为基线之一,以证明融合的有效性。为公平比较,所有基线的实验设置与我们的一致。

3.1.3 评估指标

为定量比较所提模型与基线模型,我们使用 COCO 评估指标计算的平均精度(AP),其中交并比(IOU)用于衡量真实边界框与预测边界框之间的重叠度,当 IOU≥阈值时,预测被视为真阳性。COCO 评估指标计算 IOU 阈值≥0.5 和 0.75 时的 AP50 和 AP75,并使用 IOU 值范围 0.5 到 0.95(步长 0.05)计算平均精度(mAP)。此外,通过计算单张图像的推理时间和模型加载时的内存消耗来评估模型的复杂度。

3.2 对比研究

3.2.1 定量结果

在这里插入图片描述

所提模型和上述基线模型在 FLIR 和 LLVIP 数据集上的性能评估结果如表 1 所示。与单模态目标检测模型相比,我们的 CSSA 模型在 AP50 上比 Faster R-CNN(RGB)高 14.2%,比 Faster R-CNN(IR)高 5.8%。结果表明,CSSA 可有效融合双模态信息以改善检测结果。对于多模态目标检测模型,我们的模型在 AP50 上分别比 Halfway fusion 和 GAFF 高 7.7% 和 4.6%,因为 Halfway fusion 未对输入模态分配注意力,而 GAFF 仅考虑空间层面的注意力。我们的模型同时涉及特征和空间层面的注意力,因此大幅提升了检测性能。最后,CSSA 在 AP50、AP75 和 mAP 上也超过了最新模型 ProbEn。在我们的实验中,ProbEn 的 AP 低于其作者报告的结果,可能的原因是 ProbEn 的作者使用原始 FLIR 数据集,且应用的主干是 ResNet 101;而我们为与模型公平比较,将所有基线的主干替换为 ResNet 50。

与从驾驶员视角捕获图像的 FLIR 不同,LLVIP 使用交通摄像头收集数据。因此,LLVIP 实验证实我们的模型可应用于不同现实场景。评估结果如表 1 所示。与单模态目标检测模型相比,所提模型在 mAP 上比 Faster R-CNN(IR)高 8.5%,比 Faster R-CNN(RGB)高 11.7%。我们的 CSSA 模型在 mAP 上也分别比 Halfway fusion 高 4.1%、比 GAFF 高 3.4%、比 ProbEn 高 7.7%。

此外,还计算了两个数据集的平均 AP 分数。如表 1 所示,所提模型仍优于所有基线,平均 AP50 分数为 86.8%,mAP 分数为 50.3%。这些结果进一步证明了 CSSA 模型的强泛化能力及其在两个数据集上实现先进性能的能力。

3.2.2 定性结果

除了定量评估外,我们还在 FLIR 数据集上进行了定性评估。图 3 展示了所提模型与基线模型的检测结果。结果证明了 IR 和 RGB 图像的互补性。例如,在图 3(a)中,由于物体与环境之间的温度差异不明显,IR 检测器未能捕获自行车;然而,RGB 图像捕捉到了自行车的纹理和颜色细节,使 Faster R-CNN(RGB)能够正确检测该物体。另一方面,在图 3(c)中,与 IR 检测器形成鲜明对比的是,RGB 检测器遗漏了大多数行人。

在这里插入图片描述
在这里插入图片描述

图3. 实验中提及的六种模型的检测结果。模型检测到的汽车、行人和自行车分别用蓝色、黄色和绿色边界框表示。红色边界框表示错误情况(假阳性和假阴性)。

对于多模态检测器,ProbEn 采用晚期融合策略,使模型能够捕获 IR 或 RGB 检测器检测到的物体,并在此次评估中实现最低的漏检率。然而,ProbEn 需要处理更多重叠的检测结果。实验结果表明,ProbEn 有时会意外保留重叠检测,导致更多假阳性输出,因此其假阳性率高于我们的模型。另一方面,CSSA、GAFF 和 Halfway fusion 采用中期融合策略,可以充分利用两种输入模态的信息。得益于 CSSA 模块,我们的检测模型能够从特征和空间两个角度提取信息,在这三种模型中实现了最低的漏检率和假阳性率。

3.2.3 计算效率比较

在这里插入图片描述

各模型的内存消耗和推理时间分析如图 4 所示。由于 Faster R-CNN(RGB)和 Faster R-CNN(IR)使用相同架构,它们合并称为 Faster R-CNN。实验中的所有模型均基于 Detectron2 实现,评估在 NVIDIA 3080ti GPU 上进行。

Faster R-CNN 用于单模态目标检测,加载时仅需 972MB。对于多模态目标检测模型,Halfway fusion 和 GAFF 分别需要 3553MB 和 4474MB,因为它们都使用中期融合策略,额外的主干和复杂的融合模块消耗了额外内存。ProbEn 采用概率集成作为融合方法,这是无参数过程,但 ProbEn 需要同时加载两个单模态目标检测器,因此内存消耗翻倍。相比之下,所提模型仅需 1575MB,优于所有多模态目标检测器。我们的 CSSA 模型也采用双主干设计,但为解决内存消耗过大的问题,我们采用了超轻量级融合模块,其中仅 1D 卷积层会产生额外内存负载。

根据图 4(b)的结果,Faster R-CNN 是效率最高的模型,完成单个输入的推理仅需 23ms。Halfway fusion 和 GAFF 作为复杂度最高的模型,完成预测分别需要 42ms 和 61ms。得益于融合模块的简单性,ProbEn 在多模态检测模型中实现了最快速度:计算融合边界框仅需 2ms,整个预测过程需 25ms。最后,CSSA 模型的推理时间为 31ms,与 ProbEn 和 Faster R-CNN 相比是可接受的结果,因为所提模型具有更高的精度和更低的内存使用率。

3.3 消融研究

在本节中,我们进行了消融研究以验证模型设计的有效性。CSSA由两个子模块组成:通道切换和空间注意力。我们通过将这两个子模块分别作为融合模块应用,来研究检测模型的性能,并在表2中报告结果。结果表明,与单模态目标检测器相比,这两个子模块均能有效提高预测精度。通道切换在保留各模态特有特征的同时,充分融合了两种模态的特征;而空间注意力则从空间角度捕获了输入模态之间的相关性。因此,我们得出结论:这两个模块可以相互补充,进一步提升模型的性能。

在这里插入图片描述

4. 结论与未来工作

本文提出一种轻量级多模态融合算子(CSSA)并将其应用于多模态目标检测任务。研究证明,与其他方法相比,CSSA 可有效捕获 RGB 和 IR 模态的信息。我们还表明,所提模块中的通道切换和空间注意力块均可显著提升检测精度,且两者的结合可进一步改善预测,因为同时考虑了特征层面和空间层面的注意力。

此外,轻量级设计使 CSSA 模型能够处理 33 帧 / 秒,满足大多数实时目标检测应用的要求。

未来,可通过将 CSSA 应用于不同检测框架来进一步探索其泛化能力。此外,可开展进一步研究,探索将通道切换阈值设置为可训练参数而非手动调整的可行性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/86024.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/86024.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/86024.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《前端资源守卫者:SRI安全防护全解析》

SRI&#xff08;子资源完整性&#xff09;作为守护前端安全的隐形盾牌&#xff0c;以精妙的技术设计构建起资源验证防线。深入理解其工作逻辑与配置方法&#xff0c;是每位前端开发者筑牢应用安全的必修课。 SRI的核心价值&#xff0c;在于为外部资源打造独一无二的“数字身份…

项目需求评审报告参考模板

该文档是需求评审报告模板 内容涵盖评审基础信息,如项目名称、评审时间、地点、级别、方式等;包含评审签到表,记录角色、部门、职务、姓名等信息;还有评审工作量统计相关内容;以及评审问题跟踪表,记录问题描述、状态、解决人及时限等,还附有填表说明,对评审适用范围、工…

从依赖进口到自主创新:AI 电子设计系统如何重塑 EDA 全流程

EDA全称是Electronic Design Automation&#xff0c;即电子设计自动化&#xff0c;是利用计算机软件完成电路设计、仿真、验证等流程的设计工具&#xff0c;贯穿于芯片和板级电路设计、制造、测试等环节&#xff0c;是不可或缺的基础设计工具。 EDA与电子材料、装备是电子信…

前端工程化之微前端

微前端 微前端基本知识主要的微前端框架iframe优点&#xff1a;缺点&#xff1a; single-spa示例主应用spa-root-config.jsmicrofrontend-layout.htmlindex.ejs 子应用spa-react-app2.jsroot.component.js 修改路由spa-demo/microfrontend-layout.htmlspa-demo/react-app1/webp…

MemcacheRedis--缓存服务器理论

Memcached/redis是高性能的分布式内存缓存服务器,通过缓存数据库查询结果&#xff0c;减少数据库访问次数&#xff0c;以提高动态Web等应用的速度、 提高可扩展性。 缓存服务器作用: 加快访问速度 ,缓解数据库压力 1. memcached&#xff08;单节点在用&#xff09; 1.1 特点 1…

【stm32】标准库学习——I2C

目录 一、I2C 1.I2C简介 2.MPU6050参数 3.I2C时序基本单元 二、I2C外设 1.I2C外设简介 2.配置I2C基本结构 3.初始化函数模板 4.常用函数 一、I2C 1.I2C简介 本节课使用的是MPU6050硬件外设 2.MPU6050参数 3.I2C时序基本单元 这里发送应答是指主机发送&#xff0c;即…

HSA22HSA29美光固态芯片D8BJVC8BJW

HSA22HSA29美光固态芯片D8BJVC8BJW 美光固态芯片D8BJVC8BJW系列&#xff1a;技术革新与行业应用深度解析 一、技术解析&#xff1a;核心架构与创新突破 美光D8BJVC8BJW系列固态芯片&#xff08;如MT29F8T08EQLEHL5-QAES:E、MT29F512G08CUCABH3-12Q等&#xff09;的技术竞争力…

【Linux网络与网络编程】06.应用层协议HTTP

前言 虽然应用层协议是我们程序猿自己定的&#xff0c;但实际上已经有大佬们定义了一些现成的又非常好用的应用层协议供我们直接参考使用&#xff0c;HTTP(超文本传输协议)就是其中之一。 在互联网世界中&#xff0c;HTTP&#xff08;HyperText Transfer Protocol&#xff0c…

磁悬浮轴承的“生死线”:磁轴承气隙与保护轴承气隙的可靠性设计

在高速旋转机械的尖端领域&#xff0c;磁悬浮轴承&#xff08;AMB&#xff09;凭借无摩擦、超高转速、免润滑等优势傲视群雄。然而&#xff0c;其核心参数——气隙的设置&#xff0c;尤其是额定工作气隙与保护轴承&#xff08;辅助轴承&#xff09;气隙之间的大小关系与具体数值…

QT 学习笔记摘要(一)

第一节 QT介绍 1. QT概述 简单来说&#xff0c;QT就是一个跨平台的客户端技术&#xff0c;HTML画网页一样&#xff0c;而QT就是画客户端的&#xff0c;它不仅可以绘制界面而且可以做单机应用开发&#xff0c;还可以做网络程序的客户端界面开发 更专业的说法是&#xff1a;Qt 是…

QCustomPlot 叠加对象(Overlay Items)

QCustomPlot 提供了一系列可以在图表上叠加显示的对象&#xff08;items&#xff09;&#xff0c;这些对象不属于数据本身&#xff0c;而是用于标注、辅助线等用途。以下是主要叠加对象的详细说明和使用方法。 1. QCPItemStraightLine (无限直线) 特性&#xff1a; 无限延伸的…

Flink源码阅读环境准备全攻略:搭建高效探索的基石

想要深入探索Flink的底层原理&#xff0c;搭建一套完整且适配的源码阅读环境是必经之路。这不仅能让我们更清晰地剖析代码逻辑&#xff0c;还能在调试过程中精准定位关键环节。接下来&#xff0c;结合有道云笔记内容&#xff0c;从开发工具安装、源码获取导入到调试配置&#x…

Dify,FastGPT,RagFlow有啥区别,在智能问答方面有啥区别

Dify、FastGPT、RagFlow都是当前非常流行的低代码AI应用开发平台&#xff0c;它们都专注于让用户能够快速构建AI应用&#xff0c;但在设计理念、功能特色和适用场景上有明显区别。 让我详细对比一下这三个平台&#xff1a; 1. 平台定位对比 Dify 定位&#xff1a;全栈AI应用…

基站定位接口如何如何用PHP实现调用?

随着“新基建”战略的推进&#xff0c;我国移动通信基站数量快速增长。截至2024年底&#xff0c;全国基站总数已达1265万个&#xff0c;其中5G基站超425万个&#xff0c;构建起全球规模最大、技术领先的通信网络。 在这一基础上&#xff0c;基站查询API通过整合三大运营商数据…

Day 4:Shell流程控制——从“直线思维“到“智能决策“的进化

目录 一、if语句&#xff1a;你以为简单其实暗藏杀机1. 基础语法&#xff08;看似简单却容易踩坑&#xff09;2. 安全写法规范&#xff08;企业级建议&#xff09; 二、条件测试的六大门派1. 文件测试&#xff08;运维最爱&#xff09;2. 字符串比较&#xff08;引号是灵魂&…

分布式训练中的随机种子策略:深入理解与实践指南

分布式训练中的随机种子策略&#xff1a;深入理解与实践指南 引言&#xff1a;一个容易被忽视的关键细节 在深度学习的分布式训练中&#xff0c;你是否见过这样的代码&#xff1f; torch.manual_seed(process_seed) # PyTorch操作 random.seed(process_seed) # Pyth…

金山办公发布WPS智慧教育平台,发力教育AI意义何在?

钛媒体消息&#xff0c;金山办公发布面向教育用户的 WPS 智慧教育平台&#xff0c;面对着金山办公的发力&#xff0c;我们该怎么分析呢&#xff1f; 首先&#xff0c;从市场拓展与用户需求响应角度看&#xff0c;金山办公此次推出WPS智慧教育平台&#xff0c;直接瞄准了教育领…

无人机航电系统之语音通信技术篇

无人机航电系统的语音通信技术是确保无人机与地面控制站、其他无人机或相关人员之间实现高效、稳定语音交互的关键技术&#xff0c;在军事侦察、应急救援、物流运输、航拍测绘等众多领域发挥着至关重要的作用。 一、技术原理 无人机航电系统的语音通信技术主要基于无线通信原理…

element plus 的树形控件,如何根据后台返回的节点key数组,获取节点key对应的node节点

在使用 Element Plus 的 el-tree 组件时&#xff0c;如果后端返回的节点 key 数组中包含了部分选中的父级节点的 key&#xff0c;可能会导致该父级节点下的所有子节点也被默认选中。这是因为 el-tree 的默认行为是&#xff1a;如果一个父节点被选中&#xff0c;那么其所有子节点…

什么是Sentinel

什么是 Sentinel? 在分布式系统中,服务间的依赖关系错综复杂。一个服务的故障,很可能像多米诺骨牌一样,迅速蔓延并导致整个系统崩溃,这就是我们常说的“雪崩效应”。为了避免这种灾难性后果,我们需要一种强大的机制来保护我们的系统,而 Sentinel 正是为此而生。 Senti…