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

【论文阅读 | CVPR 2024 |Fusion-Mamba :用于跨模态目标检测】

论文阅读 | CVPR 2024 |Fusion-Mamba :用于跨模态目标检测

  • 1.摘要&&引言
  • 2.方法
    • 2.1 预备知识
    • 2.2 Fusion-Mamba
      • 2.2.1 架构
      • 特征提取与多模态融合(FMB模块)
      • FMB的应用与输出
      • 2.2.2 关键组件
        • 3.2.2.1 SSCS 模块:浅层跨模态特征交互
        • 3.2.2.2 DSSF 模块:深层跨模态特征关联
        • 3.2.2.3 特征增强与融合
      • 2.2.3 损失函数
    • 2.3 与基于 Transformer 的融合方法对比
  • 3. 实验
    • 3.1 实验设置
      • 3.1.1 数据集
      • 3.1.2 评估指标
      • 3.1.3 实现细节
    • 3.2 与现有最优方法的对比
      • 3.2.1 LLVIP数据集
      • 3.2.2 M³FD 数据集
      • 3.2.3 FLIR-Aligned 数据集
      • 3.2.4 热力图可视化
    • 3.3 消融实验
      • 3.3.1 SSCS 和 DSSF 模块的影响
      • 3.3.2 FMB 位置的影响。
      • 3.3.3 DSSF 模块数量的影响。
      • 3.3.4 DSSF 模块双向注意力的影响
  • 4. 结论

在这里插入图片描述

题目:Fusion-Mamba for Cross-modality Object Detection

会议: Computer Vision and Pattern Recognition(CVPR)

论文:https://arxiv.org/abs/2404.09146

代码:未公开

年份:2024

1.摘要&&引言

跨模态融合通过有效整合不同模态的互补信息,显著提升了目标检测性能,使其在更广泛的应用场景中更具实用性和鲁棒性。
现有融合策略通常通过精心设计的神经网络模块来结合不同类型的图像或融合不同主干特征。
然而,这些方法忽视了模态差异对跨模态融合性能的影响 —— 由于不同模态的相机焦距、位置和角度差异,其特征难以有效融合。

本文中,基于改进的 Mamba 与门控机制,通过在隐藏状态空间中关联跨模态特征来研究跨模态融合。

我们设计了 Fusion-Mamba 模块FMB),将跨模态特征映射到隐藏状态空间进行交互,从而减少跨模态特征差异,增强融合特征的表示一致性。FMB 包含两个模块:状态空间通道交换SSCS)模块促进浅层特征融合,双状态空间融合DSSF)模块实现隐藏状态空间的深层融合。在公共数据集上的大量实验表明,我们的方法在 M³FD 数据集上 mAP 提升 5.9%,在 FLIR-Aligned 数据集上提升 4.9%,超越了现有最优方法,展现了卓越的目标检测性能。据我们所知,这是首次探索 Mamba 在跨模态融合中的潜力,并为跨模态目标检测建立了新基线。

在这里插入图片描述

图1. 热力图可视化。(a)和(b)为初始RGB和IR输入图像;©和(d)为使用YOLOv8单模态生成的热力图;(e)为基于CNN融合模块的YOLO-MS热力图;(f)和(g)为基于Transformer融合模块的ICAFusion和CFT热力图;(h)为我们的FMB热力图,其定位效果更佳。

在这里插入图片描述

图2. 所提出的Fusion-Mamba方法架构。检测网络包含双流特征提取网络和三个Fusion-Mamba模块(FMB),其颈部和头部与YOLOv8相同。顶部是我们的检测框架, ϕ i \phi_{i} ϕi φ i \varphi_{i} φi分别是RGB和IR分支的卷积模块,用于生成 F R i F_{R_{i}} FRi F I R i F_{IR_{i}} FIRi特征; F ^ R i \hat{F}_{R_{i}} F^Ri F ^ I R i \hat{F}_{IR_{i}} F^IRi是通过FMB增强的特征图; P 3 P_{3} P3 P 4 P_{4} P4 P 5 P_{5} P5是增强特征图的求和输出,作为颈部最后三个阶段的特征金字塔输入。底部展示了FMB的设计细节。

本文提出 Fusion-Mamba 方法,旨在隐藏状态空间中融合特征,为跨模态特征融合开辟新范式。我们受 Mamba 启发,利用其线性复杂度构建隐藏状态空间,并通过门控机制进一步改进,实现更深层、更复杂的融合。我们的 Fusion-Mamba 方法核心在于创新的 Fusion-Mamba 模块(FMB),如图 2 所示。在 FMB 中,我们设计了状态空间通道交换(SSCS)模块用于浅层特征融合,以提升跨模态特征的交互能力;以及双状态空间融合(DSSF)模块,用于构建隐藏状态空间以实现跨模态特征关联与互补。这两个模块有助于减少融合过程中的模态差异,如图 1(h)所示,其热力图表明我们的方法更有效地融合了特征,使检测器更聚焦于目标。本工作的贡献如下:

  • 1)所提出的 Fusion-Mamba 方法探索了 Mamba 在跨模态融合中的潜力,增强了融合特征的表示一致性。我们基于门控机制改进的 Mamba,构建了跨模态交互的隐藏状态空间,以减少跨模态特征差异。

  • 2)我们设计了包含两个模块的 Fusion-Mamba 块:状态空间通道交换(SSCS)模块促进浅层特征融合,双状态空间融合(DSSF)模块实现隐藏状态空间的深层融合。

  • 3)在三个公共 RGB-IR 目标检测数据集上的大量实验表明,我们的方法实现了现有最优性能,为跨模态目标检测方法提供了新基线。

2.方法

2.1 预备知识

状态空间模型

状态空间模型(SSMs)常用于表示线性时不变系统,其通过中间隐状态 h (t)∈ℝⁿ处理一维输入序列 x (t)∈ℝ,生成输出 y (t)∈ℝ。从数学上看,SSMs 通常表示为线性常微分方程(ODEs):

h ′ ( t ) = A h ( t ) + B x ( t ) , y ( t ) = C h ( t ) + D x ( t ) , \begin{aligned} h'(t) &= A h(t) + B x(t), \\ y(t) &= C h(t) + D x(t), \end{aligned} h(t)y(t)=Ah(t)+Bx(t),=Ch(t)+Dx(t),

其中系统行为由一组参数定义,包括状态转移矩阵 A∈ℝⁿ×ⁿ、投影参数 B、C∈ℝⁿ×¹,以及跳跃连接 D∈ℝ。为简化表述,可通过设置 D=0 移除 D x (t) 项。

离散化

式 1 中 SSMs 的连续时间特性在深度学习场景中应用时面临重大挑战。为解决此问题,需通过离散化过程将 ODEs 转换为离散函数,这是确保模型与输入数据中底层信号采样率对齐、促进高效计算操作的关键 。考虑输入 xₖ∈ℝᴸ×ᴰ(遵循 [40] 的长度为 L 的信号流中的采样向量),时间尺度参数 Δ 的引入允许根据零阶保持(ZOH)原理,将连续参数 A 和 B 转换为离散形式 Ã 和 B̃。
因此,式 1 离散化为:
h k = A ~ h k − 1 + B ~ x k , y ( t ) = C ~ h k + D x k , A ~ = e Δ A , B ~ = ( Δ A ) − 1 ( e Δ A − I ) Δ B , C ~ = C , \begin{aligned} hₖ &= \tilde{A} h_{k-1} + \tilde{B} xₖ, \\ y(t) &= \tilde{C} hₖ + D xₖ, \\ \tilde{A} &= e^{ΔA}, \\ \tilde{B} &= (ΔA)^{-1}(e^{ΔA} - I)ΔB, \\ \tilde{C} &= C, \end{aligned} hky(t)A~B~C~=A~hk1+B~xk,=C~hk+Dxk,=eΔA,=(ΔA)1(eΔAI)ΔB,=C,
其中 B、C∈ℝᴰ,I 为单位矩阵。离散化后,SSMs 通过具有结构化卷积核 K̃∈ℝᴰ的全局卷积计算:
y = x ∗ K ~ , K ~ = ( C B ~ , C A ~ B ~ , ⋯ , C A ~ L − 1 B ~ ) . ( 3 ) y = x * \tilde{K}, \quad \tilde{K} = (C \tilde{B}, C \tilde{A} \tilde{B}, \cdots, C \tilde{A}^{L-1} \tilde{B}). \quad (3) y=xK~,K~=(CB~,CA~B~,,CA~L1B~).(3)

基于式 2 和式 3,Mamba 设计了一种简单的选择机制,根据输入 ### 参数化 Δ、A、B 和 C 的 SSM 参数,用于 1D 语言序列建模中沿序列长度维度选择性传播或遗忘信息。

2D 选择性扫描机制

2D 视觉数据与 1D 语言序列的不兼容性使得 Mamba 直接应用于视觉任务时存在不足。例如,2D 空间信息在视觉任务中至关重要,而在 1D 序列建模中仅占次要地位,这种差异导致感受野有限,无法捕捉与未探索块的潜在相关性。中引入 2D 选择性扫描(SS2D)机制以解决上述挑战,其概述如图 3 所示。

在这里插入图片描述

图3. RGB图像上二维选择性扫描(SS2D)的示意图。首先,图像经过扫描扩展,生成四个不同的特征序列;随后,每个序列独立通过S6块处理;最后,通过扫描合并S6块的输出,生成最终的二维特征图。

SS2D 首先将图像块沿四个不同方向扫描扩展,生成四个独立序列,这种四向扫描方法确保特征图中的每个元素包含不同方向上所有其他位置的信息,从而在无需计算复杂度线性增加的情况下建立全面的全局感受野。随后,每个特征序列通过选择性扫描状态空间序列模型(S6) 处理,最后聚合特征序列以重建 2D 特征图。
SS2D 是视觉状态空间(VSS)块的核心元素,如图 2 所示,将用于构建跨模态特征融合的隐藏状态空间。

2.2 Fusion-Mamba

2.2.1 架构

模型架构如图 2 所示。其检测主干包含双流特征提取网络和三个 Fusion-Mamba 模块(FMB),检测网络包含用于跨模态目标检测的颈部和头部。

在这里插入图片描述

特征提取与多模态融合(FMB模块)

特征提取网络从 RGB 图像和红外(IR)图像中分别提取局部特征,记为 F R i F_{R_i} FRi(RGB局部特征)和 F I R i F_{IR_i} FIRi(IR局部特征)。

在这里插入图片描述

为减少跨模态特征差异并增强融合一致性,将 F R i F_{R_i} FRi F I R i F_{IR_i} FIRi 输入多模态融合块(FMB)。FMB的核心流程如下:

  1. 浅层特征融合(SSCS模块)
    首先通过状态空间通道交换(State Space Channel Swap, SSCS)模块 F R i F_{R_i} FRi F I R i F_{IR_i} FIRi 进行浅层交互,生成交互特征 F ~ R i \tilde{F}_{R_i} F~Ri(RGB交互特征)和 F ~ I R i \tilde{F}_{IR_i} F~IRi(IR交互特征)。

  2. 深层特征融合(DSSF模块)
    交互特征进一步输入双状态空间融合(Dual State Space Fusion, DSSF)模块,在隐藏状态空间中完成深层特征融合,生成互补特征 F ˉ R i \bar{F}_{R_i} FˉRi(RGB互补特征)和 F ˉ I R i \bar{F}_{IR_i} FˉIRi(IR互补特征)。

  3. 局部特征增强
    将原始特征与互补特征逐元素相加,增强局部表征能力:
    F ^ R i = F R i + F ˉ R i , F ^ I R i = F I R i + F ˉ I R i (A) \hat{F}_{R_i} = F_{R_i} + \bar{F}_{R_i}, \quad \hat{F}_{IR_i} = F_{IR_i} + \bar{F}_{IR_i} \tag{A} F^Ri=FRi+FˉRi,F^IRi=FIRi+FˉIRi(A)
    其中 F ^ R i \hat{F}_{R_i} F^Ri F ^ I R i \hat{F}_{IR_i} F^IRi 表示增强后的RGB和IR局部特征。

  4. 融合特征生成
    增强特征直接相加生成最终融合特征 P i P_i Pi
    P i = F ^ R i + F ^ I R i (B) P_i = \hat{F}_{R_i} + \hat{F}_{IR_i} \tag{B} Pi=F^Ri+F^IRi(B)

FMB的应用与输出

FMB仅应用于模型的最后三个阶段(生成 P 3 P_3 P3 P 4 P_4 P4 P 5 P_5 P5),这些融合特征作为 YOLOv8 颈部(Neck)和头部(Head)的输入,最终输出目标检测结果(如图 4 所示)。
在这里插入图片描述

2.2.2 关键组件

给定输入的 RGB 图像 I R I_R IR 和红外(IR)图像 I I R I_{IR} IIR,首先通过一系列卷积块提取局部特征。具体而言,RGB 分支的第 i i i 阶段局部特征 F R i F_{R_i} FRi 和 IR 分支的第 i i i 阶段局部特征 F I R i F_{IR_i} FIRi 可表示为:
F R i = ϕ i ∘ ϕ i − 1 ∘ ⋯ ∘ ϕ 1 ( I R ) , F I R i = ψ i ∘ ψ i − 1 ∘ ⋯ ∘ ψ 1 ( I I R ) F_{R_i} = \phi_i \circ \phi_{i-1} \circ \cdots \circ \phi_1(I_R), \quad F_{IR_i} = \psi_i \circ \psi_{i-1} \circ \cdots \circ \psi_1(I_{IR}) FRi=ϕiϕi1ϕ1(IR),FIRi=ψiψi1ψ1(IIR)
其中 ϕ i \phi_i ϕi ψ i \psi_i ψi 分别表示 RGB 和 IR 分支第 i i i 阶段的卷积块

现有跨模态融合方法主要关注空间特征的集成,但未充分考虑模态间的特征差异,导致融合模型难以有效建模不同模态目标间的相关性,最终降低模型的表示能力。受 Mamba[8] 在状态空间序列建模中的强大能力启发,我们设计了融合 Mamba 块(Fusion-Mamba Block, FMB),通过构建跨模态特征交互与关联的隐藏状态空间,解决上述问题。FMB 的核心由两个关键模块组成:状态空间通道交换(State Space Channel Swap, SSCS)模块双状态空间融合(Dual State Space Fusion, DSSF)模块,二者协同减少跨模态特征差异,增强融合特征的表示一致性。算法 1 详细给出了 SSCS 和 DSSF 模块的计算流程。

3.2.2.1 SSCS 模块:浅层跨模态特征交互

SSCS 模块的目标是通过通道交换操作和 VSS 块(见图 2)增强跨模态特征的浅层交互,丰富通道多样性以提升融合性能。具体步骤如下:

在这里插入图片描述

  1. 通道交换操作(CS)
    首先通过通道交换生成 RGB 和 IR 的新局部特征 T R i T_{R_i} TRi T I R i T_{IR_i} TIRi,公式为:
    T R i = C S ( F R i , F I R i ) , T I R i = C S ( F I R i , F R i ) (5) T_{R_i} = CS(F_{R_i}, F_{IR_i}), \quad T_{IR_i} = CS(F_{IR_i}, F_{R_i}) \tag{5} TRi=CS(FRi,FIRi),TIRi=CS(FIRi,FRi)(5)
    其中 C S ( ⋅ , ⋅ ) CS(\cdot, \cdot) CS(,) 表示通道交换操作,实现方式为:将 F R i F_{R_i} FRi F I R i F_{IR_i} FIRi 沿通道维度均分为四部分,从 F R i F_{R_i} FRi 中选择第 1、3 部分,从 F I R i F_{IR_i} FIRi 中选择第 2、4 部分,按顺序拼接后生成新的 RGB 局部特征 T R i T_{R_i} TRi;IR 局部特征 T I R i T_{IR_i} TIRi 以类似方式生成(交换通道选择顺序)。

  2. 浅层融合增强
    T R i T_{R_i} TRi T I R i T_{IR_i} TIRi 分别应用 VSS 块(VSS Block),进一步强化跨模态交互:
    F ~ R i = V S S ( T R i ) , F ~ I R i = V S S ( T I R i ) (6) \tilde{F}_{R_i} = VSS(T_{R_i}), \quad \tilde{F}_{IR_i} = VSS(T_{IR_i}) \tag{6} F~Ri=VSS(TRi),F~IRi=VSS(TIRi)(6)
    其中 V S S ( ⋅ ) VSS(\cdot) VSS() 表示图 2 所示的 VSS 块(基于门控机制的状态空间模型[21]), F ~ R i \tilde{F}_{R_i} F~Ri F ~ I R i \tilde{F}_{IR_i} F~IRi 分别为 RGB 和 IR 分支的浅层融合特征输出。

3.2.2.2 DSSF 模块:深层跨模态特征关联

为进一步减少模态差异,DSSF 模块通过在隐藏状态空间中建模跨模态目标相关性,实现深层特征融合。其核心是利用门控机制构建双向信息交互,具体步骤如下:

在这里插入图片描述

  1. 隐藏状态投影
    首先通过无门控的 VSS 块 P in ( ⋅ ) P_{\text{in}}(\cdot) Pin() 将浅层融合特征 F ~ R i \tilde{F}_{R_i} F~Ri F ~ I R i \tilde{F}_{IR_i} F~IRi 投影到隐藏状态空间:
    y R i = P in ( F ~ R i ) , y I R i = P in ( F ~ I R i ) (7) y_{R_i} = P_{\text{in}}(\tilde{F}_{R_i}), \quad y_{IR_i} = P_{\text{in}}(\tilde{F}_{IR_i}) \tag{7} yRi=Pin(F~Ri),yIRi=Pin(F~IRi)(7)
    其中 y R i y_{R_i} yRi y I R i y_{IR_i} yIRi 表示 RGB 和 IR 分支的隐藏状态特征。

  2. 门控参数生成
    同时,通过双流门控操作生成门控参数 z R i z_{R_i} zRi z I R i z_{IR_i} zIRi,用于调制隐藏状态转移:
    z R i = f θ i ( F ~ R i ) , z I R i = g ω i ( F ~ I R i ) (8) z_{R_i} = f_{\theta_i}(\tilde{F}_{R_i}), \quad z_{IR_i} = g_{\omega_i}(\tilde{F}_{IR_i}) \tag{8} zRi=fθi(F~Ri),zIRi=gωi(F~IRi)(8)
    其中 f θ i ( ⋅ ) f_{\theta_i}(\cdot) fθi() g ω i ( ⋅ ) g_{\omega_i}(\cdot) gωi() 分别表示 RGB 和 IR 分支的带参数门控函数(参数为 θ i \theta_i θi ω i \omega_i ωi)。

  3. 隐藏状态交互与调制
    利用门控参数 z R i z_{R_i} zRi z I R i z_{IR_i} zIRi 对隐藏状态 y R i y_{R_i} yRi y I R i y_{IR_i} yIRi 进行双向调制,实现跨模态信息互补:
    y R i ′ = y R i ⋅ z R i + z R i ⋅ y I R i , y I R i ′ = y I R i ⋅ z I R i + z I R i ⋅ y R i (9) y'_{R_i} = y_{R_i} \cdot z_{R_i} + z_{R_i} \cdot y_{IR_i}, \quad y'_{IR_i} = y_{IR_i} \cdot z_{IR_i} + z_{IR_i} \cdot y_{R_i} \tag{9} yRi=yRizRi+zRiyIRi,yIRi=yIRizIRi+zIRiyRi(9)
    其中 y R i ′ y'_{R_i} yRi y I R i ′ y'_{IR_i} yIRi 为交互后的隐藏状态特征, ⋅ \cdot 表示逐元素乘积。式(9)通过门控机制动态调整跨模态信息的传递权重,增强隐藏状态空间的关联性。

  4. 投影回原空间与残差连接
    将交互后的隐藏状态 y R i ′ y'_{R_i} yRi y I R i ′ y'_{IR_i} yIRi 通过投影操作 P out ( ⋅ ) P_{\text{out}}(\cdot) Pout()(含线性变换)映射回原始特征空间,并与浅层融合特征 F ~ R i \tilde{F}_{R_i} F~Ri F ~ I R i \tilde{F}_{IR_i} F~IRi 残差连接,生成互补特征:
    F ‾ R i = P out ( y R i ′ ) + F ~ R i , F ‾ I R i = P out ( y I R i ′ ) + F ~ I R i (10) \overline{F}_{R_i} = P_{\text{out}}(y'_{R_i}) + \tilde{F}_{R_i}, \quad \overline{F}_{IR_i} = P_{\text{out}}(y'_{IR_i}) + \tilde{F}_{IR_i} \tag{10} FRi=Pout(yRi)+F~Ri,FIRi=Pout(yIRi)+F~IRi(10)

3.2.2.3 特征增强与融合

为进一步增强局部特征的表示能力,将原始特征 F R i F_{R_i} FRi F I R i F_{IR_i} FIRi 与互补特征 F ‾ R i \overline{F}_{R_i} FRi F ‾ I R i \overline{F}_{IR_i} FIRi 逐元素相加,得到增强后的局部特征:
F ^ R i = F R i + F ‾ R i , F ^ I R i = F I R i + F ‾ I R i (11) \hat{F}_{R_i} = F_{R_i} + \overline{F}_{R_i}, \quad \hat{F}_{IR_i} = F_{IR_i} + \overline{F}_{IR_i} \tag{11} F^Ri=FRi+FRi,F^IRi=FIRi+FIRi(11)

在这里插入图片描述

算法 1 Fusion-Mamba 块(FMB)算法

2.2.3 损失函数

经过 FMB 增强的 RGB 和 IR 特征(即式(12) 中的 F ^ R i \hat{F}_{R_i} F^Ri F ^ I R i \hat{F}_{IR_i} F^IRi)通过逐元素相加生成融合特征 P i P_i Pi,作为 YOLOv8 颈部的输入以提升检测性能。总损失函数遵循经典目标检测框架 [12,13],定义为:
L = λ coord L coord + L conf + L class (13) \mathcal{L} = \lambda_{\text{coord}} \mathcal{L}_{\text{coord}} + \mathcal{L}_{\text{conf}} + \mathcal{L}_{\text{class}} \tag{13} L=λcoordLcoord+Lconf+Lclass(13)
其中:

  • λ coord \lambda_{\text{coord}} λcoord 是平衡定位损失 L coord \mathcal{L}_{\text{coord}} Lcoord 权重的超参数;
  • L conf \mathcal{L}_{\text{conf}} Lconf 为置信度损失,用于衡量预测框与真实框的匹配程度;
  • L class \mathcal{L}_{\text{class}} Lclass 为分类损失,用于优化目标的类别预测。
    各损失项的具体实现细节可参考 Ultralytics YOLOv8 的官方文档 [jocher2022ultralytics]。

2.3 与基于 Transformer 的融合方法对比

现有基于 Transformer 的跨模态融合方法 [6,26] 通常采用以下流程:将 RGB 和 IR 特征展平后与卷积特征拼接,生成中间融合特征;再通过多头交叉注意力机制完成跨模态融合。然而,这类方法存在以下局限性:

  1. 模态差异建模不足:仅依赖空间交互(如注意力权重分配),难以有效捕捉跨模态目标间的深层相关性,导致融合特征的表示一致性受限。
  2. 局部信息丢失:全局注意力机制需展平特征图,破坏了局部空间结构,可能丢失细粒度的位置信息。

相比之下,本文提出的 FMB 块在跨模态融合中具有显著优势:

  • 局部信息保留:通过沿四个方向扫描特征(如水平、垂直、对角线等),生成四组局部块,避免全局展平操作,在融合过程中有效保留特征的局部结构。
  • 隐藏空间深度交互:将特征投影到隐藏状态空间,通过双向门控注意力机制(如 DSSF 模块中的门控参数 z R i z_{R_i} zRi z I R i z_{IR_i} zIRi)动态调制跨模态信息传递,抑制冗余特征并增强互补信息的融合。
  • 计算效率更优:Transformer 的全局注意力机制时间复杂度为 O ( N 2 ) O(N^2) O(N2) N N N 为序列长度),而 FMB 基于 Mamba 的状态空间模型,时间复杂度仅为 O ( N ) O(N) O(N)。实验验证表明,在相同检测模型架构下,将基于 Transformer 的融合模块替换为 FMB 块,单张图像的推理时间可节省 7-19ms(详见实验部分)。

综上,FMB 通过局部信息保留、隐藏空间深度交互及高效计算机制,在减少跨模态差异的同时提升了融合效率,优于传统基于 Transformer 的融合方法。

3. 实验

3.1 实验设置

3.1.1 数据集

实验在三个广泛使用的可见光-红外(RGB-IR)基准数据集上进行评估,覆盖低光、多场景及昼夜环境,具体信息如下:

  • LLVIP:低光环境下的行人检测数据集,包含15,488对对齐的RGB-IR图像。数据采集于夜间低光照条件,聚焦行人目标检测。遵循官方划分,使用12,025对图像训练,3,463对测试。

  • M³FD:多模态多场景数据集,包含4,200对对齐的RGB-IR图像,覆盖不同光照(如强光、弱光)、季节(春、夏、秋、冬)和天气(晴、雨、雾)场景。数据涵盖自动驾驶和道路监控中常见的6个类别(行人、车辆、自行车等)。由于无官方划分,采用文献[18]的训练/测试分割。

  • FLIR:昼夜场景数据集,包含5个类别(人、汽车、自行车、狗、其他车辆)。遵循文献[38],使用FLIR-Aligned子集,其中4,129对训练,1,013对测试。

3.1.2 评估指标

采用目标检测领域最常用的两个指标:

  • mAP₅₀:IoU阈值为0.50时的平均精度(Average Precision),反映模型对目标定位和分类的基础能力;
  • mAP:IoU阈值在0.50到0.95(步长0.05)范围内的平均精度,综合评估模型在不同重叠度下的鲁棒性。

此外,报告在A800 GPU上对输入尺寸为640×640的图像进行5次运行评估的平均推理时间(单位:ms),衡量模型的计算效率。

3.1.3 实现细节

所有实验基于双流框架[6],在单张A800 GPU上完成。默认使用YOLOv5-l或YOLOv8-l作为主干网络(Backbone),颈部(Neck)和头部(Head)结构与对应YOLO版本保持一致。训练超参数设置如下:

  • 批量大小(Batch Size):4;
  • 优化器:SGD,动量(Momentum)0.9,权重衰减(Weight Decay)0.001;
  • 输入尺寸:640×640;
  • 训练轮次(Epochs):150;
  • 初始学习率(Initial LR):0.01;
  • Fusion-Mamba模块参数:SSCS模块数量1,DSSF模块数量8;
  • 定位损失权重: λ coord = 7.5 \lambda_{\text{coord}} = 7.5 λcoord=7.5(其他超参数与YOLOv8默认配置一致)。

3.2 与现有最优方法的对比

为验证Fusion-Mamba的有效性,我们在LLVIP数据集上与两类方法对比:单模态检测方法(仅RGB或仅IR)和多光谱融合方法(同时利用RGB-IR特征)。实验结果如表1所示(此处假设表1为对比数据)。

在这里插入图片描述

3.2.1 LLVIP数据集

LLVIP作为低光行人检测数据集,单模态检测中IR模态因对光照不敏感,性能普遍优于RGB模态(如仅IR的Cascade R-CNN mAP为58.4%)。融合方法通过跨模态信息互补,理论上应优于单模态检测。

  • 与单模态方法对比:基于ResNet50主干的RSDet(融合方法)在LLVIP上mAP为62.9%,较仅IR的Cascade R-CNN(58.4%)提升4.5%;而仅IR的简单YOLOv5框架(无融合)已达到61.9% mAP,显著优于部分融合方法(如DIVFusion仅9.9% mAP),说明低质量融合可能破坏IR模态的固有优势。

  • 与多光谱融合方法对比:在相同YOLOv5主干下,Fusion-Mamba的mAP为62.8%(较仅IR的YOLOv5提升0.9%),较RSDet(61.3%)提升1.5%。核心优势源于SSCS模块的浅层通道交换(增强跨模态信息交互)和DSSF模块的深层门控融合(抑制冗余特征并捕捉互补信息),有效减少了模态差异,提升了融合特征的表示一致性。

  • 与YOLOv8主干对比:基于YOLOv8-l的Fusion-Mamba进一步优化了性能,达到mAP₅₀=97.0%、mAP=64.3%,为当前LLVIP上的最优结果。

3.2.2 M³FD 数据集

我们将我们的方法与 7 种基于 YOLOv5 的现有最优检测器和 1 种基于 YOLOv7 的现有最优检测器进行比较。如表 2 所示,与基于相同 YOLOv5 主干的现有最优方法相比,我们的 Fusion-Mamba 在所有类别上使用 mAP₅₀和 mAP 指标均表现最佳;基于 YOLOv8 主干的方法在 People、Bus、Motorcycle 和 Truck 类别上实现了新的现有最优结果,同时 mAP₅₀和 mAP 指标进一步提升了 3% 和 4.4%。此外,尽管 YOLOv5 的特征表示能力低于 YOLOv7,我们使用 YOLOv5 主干的方法仍比基于 YOLOv7 的 SuperFusion 高出 1.5% mAP 和 mAP₅₀,这得益于我们 FMB 的有效性,提升了跨模态特征的固有互补性。

在这里插入图片描述

3.2.3 FLIR-Aligned 数据集

如表 3 所示,Fusion-Mamba 在 Aligned-FLIR 数据集上也表现最佳。与基于双流 YOLOv5 主干的 CrossFormer 相比,我们基于 YOLOv8 和 YOLOv5 的方法在 mAP₅₀上分别超越它们 5.6% 和 5%,在 mAP 上分别超越 4.9% 和 2.3%。我们还比 RSDet 高出 3.8% mAP₅₀和 5.6% mAP。在速度方面,我们使用 YOLOv5 的方法实现了最快速度,与基于 Transformer 的 CFT 和 CrossFormer 方法相比,一对图像的检测分别节省 7ms 和 19ms。在参数方面,我们基于 YOLOv5 的方法比 CrossFormer 方法节省约 100M 参数。尽管我们基于 YOLOv8 的方法比 YOLOv5 增加了约 40M 参数,但 mAP 显著提升了 2.6%。该结果表明,我们基于隐藏空间建模的方法更好地整合了不同模态之间的特征,抑制了模态差异,以最佳的性能和计算成本权衡增强了融合特征的表示能力。

在这里插入图片描述

3.2.4 热力图可视化

为直观展示我们模型的高性能,我们从三个实验数据集中各随机选择一对图像,可视化 P₅热力图,并与其他融合方法进行比较。如图 5 所示,与其他方法相比,我们的模型更聚焦于目标,而非分散或聚焦于无关部分。更多示例见补充材料。我们还在补充材料中可视化了目标检测结果,以评估我们方法的有效性。

在这里插入图片描述

3.3 消融实验

我们使用 FLIR-Aligned 数据集进行消融实验,以分别验证 SSCS 和 DSSF 模块的有效性,并进一步探索 DSSF 模块数量和位置的影响。特别地,我们还评估了 DSSF 模块双向注意力的效果。所有实验均基于 YOLOv8 主干进行。

3.3.1 SSCS 和 DSSF 模块的影响

FMB 中移除 SSCS 和 DSSF 的结果汇总于表 4。
在这里插入图片描述

移除 SSCS 模块后(表 4 第二行),检测器性能在 mAP₅₀和 mAP 上分别下降 2% 和 1.1%。原因在于,没有两模态特征的初始交换和浅层映射融合,在后续深层融合中特征差异未得到有效减少。同时,没有 DSSF(表 4 第三行),仅浅层融合交互无法在特征融合过程中有效抑制冗余特征并激活有效特征,导致检测器性能在 mAP₅₀和 mAP 上分别下降 2.5% 和 2.4%。同时移除 SSCS 和 DSSF,直接通过两局部模态特征相加获得融合特征(表 4 第四行),其性能在 mAP₅₀和 mAP 上分别显著下降 4.8% 和 7.6%。这些结果表明,FMB 的这两个组件对跨模态目标检测有效。

3.3.2 FMB 位置的影响。

遵循 [6,14] 的工作,我们也设置三个 FMB 用于特征融合。在此,我们进一步探索 FMB 位置的影响,即应在哪些阶段添加 FMB。我们选择三组多级特征:{P₂, P₃, P₅}、{P₂, P₄, P₅} 和 {P₃, P₄, P₅} 进行消融实验,其中 Pᵢ是使用 FMB 在第 i 阶段的融合特征。如表 5 所示,位置 {P₃, P₄, P₅} 在性能和计算复杂度之间实现了最佳权衡,因此我们默认选择此位置进行实验。

在这里插入图片描述

表 5. FLIR-Aligned 数据集上 FMB 位置的影响。

3.3.3 DSSF 模块数量的影响。

我们已在表 4 中验证了 DSSF 的有效性,在此进一步评估 DSSF 模块数量的影响,结果汇总于表 6。

在这里插入图片描述

我们选择四种 DSSF 数量(即 2、4、8、16),并保持其他模型设置与上述实验一致。可以看出,模块数量设置为 8 时实现最佳性能,8 个 DSSF 模块将达到饱和,增加数量会导致互补特征漂移,从而降低融合性能。

3.3.4 DSSF 模块双向注意力的影响

在这里插入图片描述

为进一步探索我们门控机制中 DSSF 模块双向注意力的有效性,我们分别移除 RGB 分支中的 IR 注意力(即式 9 中的 z_{IRᵢ}・y_{Rᵢ})、IR 分支中的 RGB 注意力(即式 10 中的 z_{IRᵢ}・y_{Rᵢ})以及双向注意力。结果如表 7 所示。移除 IR 注意力或 RGB 注意力后,由于减少了两特征间的注意力交互,mAP₅₀分别下降 1.6% 或 1.1%;当移除双向注意力时,DSSF 模块变为 VSS 块的堆叠,mAP₅₀下降 2%。值得注意的是,IR 和 RGB 注意力分支与其他分支共享权重,与移除双向注意力相比,这相当于仅添加激活函数和特征加法操作。因此,双向注意力的使用对模型参数和运行时间没有显著影响,但显著提升了检测性能。

4. 结论

本文提出了一种新颖的 Fusion-Mamba 方法,通过精心设计的 SSCS 模块和 DSSF 模块实现多模态特征融合。具体而言,SSCS 交换红外和可见光通道特征以实现浅层特征融合;随后,DSSF 进一步设计用于在基于 Mamba 的隐藏状态空间中实现更深层的多模态特征交互,门控注意力用于抑制冗余特征以增强特征融合的有效性。在三个公共 RGB-IR 数据集上进行的大量实验表明,我们的方法实现了现有最优性能,且推理效率高于 Transformer。我们的工作证实了 Mamba 在跨模态融合中的潜力,相信我们的工作能为 Mamba 在跨模态任务中的应用激发更多研究。

相关文章:

【论文阅读 | CVPR 2024 |Fusion-Mamba :用于跨模态目标检测】

论文阅读 | CVPR 2024 |Fusion-Mamba :用于跨模态目标检测 1.摘要&&引言2.方法2.1 预备知识2.2 Fusion-Mamba2.2.1 架构特征提取与多模态融合(FMB模块)FMB的应用与输出2.2.2 关键组件3.2.2.1 SSCS 模块:浅层跨模态特征交互…...

Python 数据分析与可视化 Day 4 - Pandas 数据筛选与排序操作

🎯 今日目标 掌握 Pandas 中 groupby() 的使用方式学会使用 agg() 方法进行多个聚合掌握 pivot_table() 构建透视表结合分组与排序进行更深入的分析 🧮 一、基本分组统计(groupby) ✅ 分组 单列聚合 df.groupby("性别&qu…...

基于Vue.js的图书管理系统前端界面设计

一、系统前端界面设计要求与效果 (一)系统功能结构图 设计一个基于Vue.js的图书管理系统前端界面。要充分体现Vue的核心特性和应用场景,同时结合信息管理专业的知识。要求系统分为仪表盘、图书管理、借阅管理和用户管理四个主要模块&#x…...

FPGA故障注入测试软件使用指南

有数字芯片之母别称的FPGA,是国内在半导体行业率先取得重大突破的细分赛道,正迎来技术和市场形成共振的黄金发展期。 国内拥有最多的应用设计工程师与新兴从业人员,但到目前为止,还没有一款位流级别的专用EDA软件,服务用户日常应用开发所需的调试验证工作。 第一大厂商赛…...

Oracle 数据库查询:单表查询

作者:IvanCodes 日期:2025年6月22日 专栏:Oracle教程 在 Oracle 数据库操作中,查询数据是最频繁、最核心的操作之一。单表查询,即仅从一个表中检索信息,是所有复杂查询的基础。本笔记将系统梳理单表查询的关…...

【DDD】——带你领略领域驱动设计的独特魅力

🎼个人主页:【Y小夜】 😎作者简介:一位双非学校的大三学生,编程爱好者, 专注于基础和实战分享,欢迎私信咨询! 🎆入门专栏:🎇【MySQL&#xff0…...

阿里云CentOS系统搭建全攻略:开启云端技术之旅

前期准备:开启云端征程前的必备事项 在当今数字化时代,云计算已成为企业和开发者构建应用和服务的重要基础设施。阿里云作为全球领先的云计算服务提供商,提供了丰富的云计算产品和服务,其中 CentOS 系统在阿里云上的应用非常广泛…...

Flink图之间流转解析:从逻辑构建到物理执行的深度剖析

在Flink强大的数据处理体系中,Table Connectors实现了与外部结构化数据的高效交互,而Flink作业从代码到实际执行的背后,是各类图结构之间的流转与转换。这些图结构承载着作业的逻辑定义、任务划分与资源调度等关键信息,其流转过程…...

详解Redis数据库和缓存不一致的情况及解决方案

数据库与缓存不一致是分布式系统中常见问题,本质是数据在缓存层和存储层出现版本差异。 一、并发写操作导致不一致(最常见) 场景描述 线程A更新数据库 → 线程B更新数据库 → 线程B更新缓存 → 线程A更新缓存 结果:缓存中存储的…...

【CSS】CSS3媒体查询全攻略

媒体查询教程 媒体查询(Media Queries)是CSS3中引入的强大功能,允许内容根据设备特性(如屏幕尺寸、分辨率、方向等)进行自适应调整。以下是媒体查询的详细教程: 基本语法 media mediatype and (media feature) {/* CSS规则 */ }常用媒体类型 all - 所…...

深入理解Spring的ResponseBodyAdvice接口

什么是ResponseBodyAdvice? ResponseBodyAdvice是Spring框架4.2版本引入的一个非常有用的接口,它允许我们在控制器方法执行后、响应体写入前对响应进行统一处理。这个接口为开发者提供了对返回数据进行统一拦截和修改的能力,是Spring MVC响应处理流程中…...

C++法则5: 在函数调用过程中,具有非引用类型的参数要进行拷贝初始化。

C法则5: 在函数调用过程中,具有非引用类型的参数要进行拷贝初始化。 在 C 中,法则5指的是:当函数参数是非引用类型(即按值传递)时,传递给函数的实参会进行拷贝初始化(copy initializ…...

Python 使用 Requests 模块进行爬虫

目录 一、请求数据二、获取并解析数据四、保存数据1. 保存为 CSV 文件2. 保存为 Excel 文件打开网页图片并将其插入到 Excel 文件中 五、加密参数逆向分析1. 定位加密位置2. 断点调试分析3. 复制相关 js 加密代码,在本地进行调试(难)4. 获取 …...

day039-nginx配置补充

文章目录 0. 老男孩思想-如何提升能力?1. nginx登录认证功能1.1 创建密码文件1.2 修改子配置文件1.3 重启服务 2. nginx处理请求流程3. 配置默认站点4. location 命令5. 案例1-搭建大型直播购物网站5.1 配置本地hosts解析5.2 编写子配置文件5.3 创建相关目录/文件并…...

K8s入门指南:架构解析浓缩版与服务间调用实战演示

目录 前言一、k8s概念理解1、k8s整体架构(1) Master 主节点(2) Node 工作节点(3) Etcd 键值存储数据库 2、Pod被视为最小的部署单元3、k8s的五种控制器类型(1&#xff09…...

如何用AI开发完整的小程序<10>—总结

通过之前9节的学习。 如何用Ai制作一款简单小程序的内容就已经都介绍完了。 总结起来就以下几点: 1、搭建开发制作环境 2、创建页面(需要手动) 3、在页面上制作UI效果(让Ai搞,自己懂了后可以自己调) 4…...

Javaweb - 3 CSS

CSS 层叠样式表(Cascading Style Sheets),能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。 简单来说,HTML 搭建一个毛坯房,C…...

【算法】【优选算法】优先级队列

目录 一、1046.最后一块石头的重量二、703. 数据流中的第 K 大元素三、692. 前 K 个⾼频单词四、295. 数据流的中位数 一、1046.最后一块石头的重量 题目链接:1046.最后一块石头的重量 题目描述: 题目解析: 题意就是让我们拿出提供的数组…...

PaddleOCR + Flask 构建 Web OCR 服务实战

1、前言 随着图像识别技术的发展,OCR(光学字符识别)已经成为很多应用场景中的基础能力。PaddleOCR 是百度开源的一个高性能 OCR 工具库,支持中英文、多语言、轻量级部署等特性。 而 Flask 是一个轻量级的 Python Web 框架,非常适合快速构建 RESTful API 或小型 Web 应用…...

openapi-generator-maven-plugin自动生成HTTP远程调用客户端

Java开发中调用http接口的时候,有很多可选的技术方案,比如:HttpURLConnection、RestTemplate、WebClient、Feign、Retrofit、Okhttp等,今天我们来看一个更优的技术方案OpenAPI Generator(http://openapi-generator.tech/) OpenAP…...

ms-swift 部分命令行参数说明

参考链接 命令行参数 — swift 3.6.0.dev0 文档 Qwen Chat num_train_epochs 训练的epoch数,默认为3 假设你有 1000 条训练样本,并且设置了: num_train_epochs 3 这意味着: 模型会完整地遍历这 1000 条数据 3 次。每一次…...

【学习笔记】深入理解Java虚拟机学习笔记——第10章 前端编译与优化

第10章 前端编译与优化 10.1 概述 1>前端编译器:Javac命令。 【.java文件->.class文件】 2>即时编译器:Hotspot.C1.C2 【.class文件->机器码】 3>提前编译器:JDK的Jaotc等【.java->机器码】 10.2 Javac 编译器 10.2.1 …...

删除node并且重装然后重装vue

参考第一篇文章 node.js卸载与安装超详细教程_node卸载重装-CSDN博客 第二篇文章安装vue Vue安装与配置教程(非常详细)_安装vue-CSDN博客...

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

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

【破局痛点,赋能未来】领码 SPARK:铸就企业业务永续进化的智慧引擎—— 深度剖析持续演进之道,引领数字化新范式

摘要 在瞬息万变的数字时代,企业对业务连续性、敏捷创新及高效运营的需求日益迫切。领码 SPARK 融合平台,秉持“持续演进”这一核心理念,以 iPaaS 与 aPaaS 为双擎驱动,深度融合元数据驱动、智能端口调度、自动化灰度切换、AI 智…...

Flink SQL Connector Kafka 核心参数全解析与实战指南

Flink SQL Connector Kafka 是连接Flink SQL与Kafka的核心组件,通过将Kafka主题抽象为表结构,允许用户使用标准SQL语句完成数据读写操作。本文基于Apache Flink官方文档(2.0版本),系统梳理从表定义、参数配置到实战调优…...

Linux 服务器运维:磁盘管理与网络配置

🤵‍♂️ 个人主页:布说在见 ✍🏻作者简介: 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏…...

PyTorch 入门学习笔记

目录 1 张量 1)张量的初始化和属性 2)张量操作 3)使用 NumPy 进行桥接 2 torch.autograd 1)背景 2)在 PyTorch 中的使用 3)Autograd 的微分机制 4)计算图原理 3 神经网络 1&#xff…...

9大策略深度解析MySQL多表JOIN性能优化

一、多表JOIN的现实挑战 在实际开发中,MySQL多表JOIN场景主要源于两类场景: • 历史遗留系统:老代码中未严格遵循范式设计的SQL语句• 数据库迁移:从Oracle迁移至MySQL时保留的复杂关联查询 这类操作潜藏多重风险: …...

CSS 逐帧动画

CSS 逐帧动画实现指南 逐帧动画(frame-by-frame animation)是一种通过快速连续显示一系列静态图像来创造运动效果的技术。以下是使用CSS实现逐帧动画的几种方法。 1. 使用 steps() 计时函数 这是实现逐帧动画最常用的方法,通过animation-timing-function的steps(…...

UE5 游戏模板 —— ThirdPersonGame

UE5 游戏模板 —— ThirdPersonGame 前言一、初始化旋转控制参数1.参数一2.参数二3.参数三4.参数四 二、输入系统总结 前言 有了前面的铺垫,第三人称模板简直是手到擒来了,我们只需要注意一些初始化的变量是做什么的即可,因为UE的Character …...

java中关于异步转同步的一些解决方案的对比与思考。【spring mvc堵塞式】

文章目录 1、Spring MVC堵塞式编程中的技术方案a) 最简单的方案,使用 DeferredResult 代码如下,代码解读:最终控制台输出如下。用户收到的结果 b) 上点难度,使用redis监听事件,根据事件的不同返回不同的数据…...

【数据结构与算法】数据结构核心概念系统梳理

第一章 绪论:基础概念体系 🚩算法:问题求解步骤的描述。 🚩非递归的算法效率更高。 1.1 逻辑结构 vs 存储结构 维度逻辑结构存储结构(物理结构)定义数据元素之间的逻辑关系数据结构在计算机中的实现方式分类线性/树形/图/集合顺序/链式/索引/散列独立性独立于存储结构…...

《HTTP权威指南》 第7章 缓存

带着问题学习: 缓存如何提高性能如何衡量缓存的有效性缓存置于何处作用最大HTTP如何保持缓存副本的新鲜度缓存如何与其他缓存及服务器通信 web缓存是可以自动保存常见文档副本的HTTP设备。 缓存优点 减少冗余的数据传输,节省网络费用缓解网络瓶颈问题&…...

【Zephyr 系列 28】MCU 闪存文件系统详解:LittleFS + NVS + 块设备设计实战

🧠关键词:Zephyr 文件系统、LittleFS、NVS、Flash 分区、嵌入式存储、断电保护、wear leveling 📌 1. 为什么 MCU 上需要文件系统? 在嵌入式开发中,很多开发者起初直接操作 Flash 保存参数,但随着需求增长…...

ICML 2025 | 时间序列(Time Series)论文总结

ICML 2025将在2025年7月13日至7月19日(周六)在温哥华会议中心举行,本文总结了ICML 2025有关时间序列(Time Series)相关文章,共计63篇。 时间序列Topic:预测,分类,异常检测,生成&…...

理解后端开发中的中间件(以gin框架为例)

中间件(Middleware)是后端开发中的一个核心概念,它在请求(Request)和响应(Response)之间扮演着桥梁角色。以下是关于中间件的详细解释: 基本概念 中间件是在请求到达最终处理程序之前或响应返回客户端之前执行的一系列函数或组件。它可以: 访…...

【分布式技术】Bearer Token以及MAC Token深入理解

Bearer Token以及MAC Token深入理解 **Bearer Token 详解****1. 什么是 Bearer Token?****2. Bearer Token 的构建详情****(1)生成流程****(2)Token 示例(JWT)****(3)Tok…...

WebRTC(七):媒体能力协商

目的 在 WebRTC 中,每个浏览器或终端支持的音视频编解码器、分辨率、码率、帧率等可能不同。媒体能力协商的目的就是: 确保双方能“听得懂”对方发的媒体流;明确谁发送、谁接收、怎么发送;保障连接的互操作性和兼容性。 P2P的基…...

(线性代数最小二乘问题)Normal Equation(正规方程)

Normal Equation(正规方程) 是线性代数中的一个重要概念,主要用于解决最小二乘问题(Least Squares Problem)。它通过直接求解一个线性方程组,找到线性回归模型的最优参数(如权重或系数&#xff…...

【机器学习】数学基础——标量

目录 一、标量的定义 二、标量的核心特征:无方向的纯粹量级 2.1 标量 vs 矢量 直观对比 三、 标量的数学本质:零阶张量 3.1 张量阶数金字塔 3.2 标量的数学特性 四、 现实世界的标量图谱 4.1 常见标量家族 4.2 经典案例解析 五、 标量的运算奥秘…...

基于python代码的通过爬虫方式实现TK下载视频(2025年6月)

Tk的视频页面通常需要登录才能获取完整数据,但通过构造匿名游客的请求,我们可以绕过登录限制,提取视频的元信息(如标题、ID和播放地址)。核心思路如下: 构造匿名Cookie:通过模拟浏览器的请求,获取Tk服务器分配的游客Cookie。解析网页:利用BeautifulSoup解析HTML,定位…...

Go 语言的堆糖图片爬虫

基于 Go 语言的堆糖图片爬取探索之旅 在互联网的浩瀚海洋中,堆糖网以其丰富多样的高清图片、美图壁纸等内容吸引了众多用户。对于图片爱好者来说,能高效获取心仪的图片资源无疑是一件极具吸引力的事情。今天,就带大家走进一段基于 Go 语言的…...

python+uni-app基于微信小程序的儿童安全教育系统

文章目录 具体实现截图本项目支持的技术路线源码获取详细视频演示:文章底部获取博主联系方式!!!!本系统开发思路进度安排及各阶段主要任务java类核心代码部分展示主要参考文献:源码获取/详细视频演示 ##项目…...

DAY 39 图像数据与显存

图像数据的格式:灰度和彩色数据模型的定义显存占用的4种地方 模型参数梯度参数优化器参数数据批量所占显存神经元输出中间状态 batchisize和训练的关系 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader ,…...

ELK搭建

1、elasticsearch和kibana搭建配置见 https://blog.csdn.net/yh_zeng2/article/details/148812447?spm1001.2014.3001.5501 2、logstash 下载 下载和elasticsearch版本一致的logstash,下载地址: Past Releases of Elastic Stack Software | Elastic …...

【ELK(Elasticsearch+Logstash+Kibana) 从零搭建实战记录:日志采集与可视化】

ELK(ElasticsearchLogstashKibana) 从零搭建实战记录:日志采集与可视化 本文记录了我在搭建ELK(Elasticsearch, Logstash, Kibana)技术栈时的完整实战过程。使用Docker Compose快速搭建了ELK服务端(监控主机),并通过Filebeat实现…...

反无人机系统:技术利刃如何守护低空安全?

反无人机系统:技术利刃如何守护低空安全? ——从军事防御到城市安防的全景解析 一、技术体系:从“电磁软杀伤”到“激光硬摧毁”的立体防御网 反无人机技术本质是一场“降维打击”:用百万级防御系统对抗千元级消费无人机。当前…...

第十章——8天Python从入门到精通【itheima】-102-Python基础综合案例-数据可视化(pyecharts的入门使用+数据处理)

目录 102节——pyecharts的入门使用 1.学习目标 2.pyecharts入门——基础折线图 3.pyecharts的配置对象有哪些? 4.全局配置——set_global_opts 5.小节总结 103节——数据处理 1.学习目标 2.无法继续关于第一阶段的pyecharts的相关学习 因为关于JSON数据获…...

Neo4j 中存储和查询数组数据的完整指南

Neo4j 中存储和查询数组数据的完整指南 图形数据库 Neo4j 不仅擅长处理节点和关系,还提供了强大的数组(Array)存储和操作能力。本文将全面介绍如何在 Neo4j 中高效地使用数组,包括存储、查询、优化以及实际应用场景。 数组在 Neo4j 中的基本使用 数组…...